]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Don't leak list nodes. (#138862, Morten Welinder)
[~andy/gtk] / ChangeLog.pre-2-4
1 2004-04-13  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak
4         list nodes.  (#138862, Morten Welinder)
5
6 Tue Apr 13 12:24:49 2004  Jonathan Blandford  <jrb@redhat.com>
7
8         * gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
9         variable.
10         (gtk_tree_view_button_press): If we activated the row we don't
11         want to grab focus back, as moving focus to another widget is
12         pretty common, #138458
13
14 2004-04-12  Federico Mena Quintero  <federico@ximian.com>
15
16         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added
17         documentation to all the signals.
18
19 2004-04-12  Matthias Clasen  <mclasen@dhcp64-228.boston.redhat.com>
20
21         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref
22         model if it is NULL. (#139770)
23
24         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.
25
26         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
27         a shadow inside the scrolled window, add it around the vbox.
28
29         * gtk/gtkentryprivate.h: 
30         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
31         Return a boolean indicating whether the popup is positioned above 
32         or below. Scroll the completions to the beginning or the end, 
33         depending on the positioning.
34
35         * gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
36         wrap around in the entry completion popup, and allow GDK_UP to 
37         enter the popup.  (#137440)
38
39 2004-04-12  Matthias Clasen  <mclasen@redhat.com>
40
41         * gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is 
42         there before using it.
43
44 Sun Apr 11 15:08:45 2004  Jonathan Blandford  <jrb@gnome.org>
45
46         * gtk/gtktreeprivate.h: Moved search entries into priv data.
47
48         * gtk/gtktreeview.c: Prep for type-ahead support.
49
50         (gtk_tree_view_destroy): Destroy the search window explicitly.
51         (gtk_tree_view_key_press): Minor change; prep for type-ahead
52         (gtk_tree_view_ensure_interactive_directory): New function
53         (gtk_tree_view_focus_out): Rework to handle new entry life-cycle.
54         (gtk_tree_view_real_start_interactive_search): rework
55         (gtk_tree_view_search_dialog_hide): ditto
56         (gtk_tree_view_search_delete_event): ditto
57         (gtk_tree_view_search_button_press_event): ditto
58         (gtk_tree_view_search_key_press_event): ditto
59         (gtk_tree_view_search_move): ditto
60         (gtk_tree_view_search_init): ditto
61
62         * gtk/gtktreeviewcolumn.c:
63         (gtk_tree_view_column_cell_layout_clear): remove unused variable.
64
65         * tests/testfilechooser.c: (main): change
66
67 2004-04-11  Hans Breuer  <hans@breuer.org>
68
69         * gdk/win32/gdkspawn-win32.c : workaround for bug #137496,
70         the real fix would involve just another small API breakage,
71         i.e. gdk_spawn_* using GPid not just gint.
72
73         * gtk/makefile.msc.in : build gtk-win32.res, not gtk.res
74
75 2004-04-10  Tor Lillqvist  <tml@iki.fi>
76
77         * gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state):
78         If both Shift and CapsLock pressed, ignore the shift only for
79         letters (that would have been affected by the CapsLock). (#139095)
80
81         * gdk/win32/gdkglobals-win32.c: Disable tablet support by default,
82         seems to be even buggier now than it used to be. (#138341)
83         Initialize _gdk_input_ignore_wintab to TRUE.
84
85         * gdk/win32/gdkmain-win32.c: Add --use-wintab switch and
86         GDK_USE_WINTAB environment variable to turn on tablet support.
87
88 2004-04-09  Christian Persch  <chpe@cvs.gnome.org>
89
90         * gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group),
91         (gtk_ui_manager_remove_action_group): Terminate
92         g_object_[dis]connect() calls with NULL instead of 0.
93         Fixes #138997.
94
95 2004-04-09  Guntupalli Karunakar  <karunakar@freedomink.org>
96
97         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
98
99 2004-04-07  Federico Mena Quintero  <federico@ximian.com>
100
101         Fix #132500.
102
103         * gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the
104         passed-in 'str' is not NULL.
105
106         * gtk/gtkfilesystemunix.c (expand_tilde): New helper function;
107         expands "~/" or "~foo/" at the beginning of a filename.
108         (gtk_file_system_unix_parse): Use expand_tilde() before doing
109         anything else.
110
111         * gtk/gtkfilechooserentry.c
112         (gtk_file_chooser_entry_maybe_update_directory): Take in a
113         force_reload argument.
114         (gtk_file_chooser_entry_changed): If gtk_file_system_parse()
115         returns an error, set the file_part_pos to -1.
116         (load_directory_callback): Only populate the model if the
117         file_part_pos is not -1.
118
119 2004-04-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
120
121         * configure.in: Added Icelandic (is) to ALL_LINGUAS
122
123 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
124
125         * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a
126         title for SAVE and CREATE_FOLDER modes.  Fixes #137272.
127
128         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look
129         for G_DIR_SEPARATOR in the display_name, and err out if it is
130         present; use the same error message as Nautilus.  Fixes #136467.
131
132         * gtk/gtkfilechooserdefault.c (file_pane_create): Make the
133         new-folder button say "Create Fo_lder" rather than "Create
134         _Folder", so that the mnemonic doesn't conflict with the "Save in
135         _folder" label.  Fixes #136975.
136
137 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
138
139         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
140         buttons.  Also, free them correctly upon failure.  Based on a
141         patch by Morten Welinder, fixes #137956.
142
143 2004-04-05  Anders Carlsson  <andersca@gnome.org>
144
145         * gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
146
147 Fri Apr  2 17:57:33 2004  Jonathan Blandford  <jrb@redhat.com>
148
149         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
150         correctly for fixed height when inserting a node, #138082
151
152 2004-04-01  Federico Mena Quintero  <federico@ximian.com>
153
154         Fix #136077.
155
156         * gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
157         "child_is_hidden" boolean argument to the "path-clicked" signal.
158
159         * gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
160         field.
161         (make_directory_button): Take a file_is_hidden argument; put it in
162         the ButtonData.
163         (_gtk_path_bar_set_path): See whether each path component path is
164         a hidden file.
165         (gtk_path_bar_class_init): Add the file_is_hidden argument to the
166         "path-clicked" signal.
167         (button_clicked_cb): See if the downwards button represents a
168         hidden file for the file_is_hidden argument in the signal
169         emission.
170
171         * gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.
172
173         * gtk/gtkfilechooserdefault.c
174         (gtk_file_chooser_default_select_path): If we fail to switch
175         folders, don't try to select the path in the file system model.
176         Also, return the result from _gtk_file_system_model_path_do().
177         (gtk_file_chooser_default_select_path): Turn on show_hidden in the
178         file system model if we are asked to select a hidden file.
179         (path_bar_clicked): Show hidden files based on whether the
180         immediate downwards folder in the path bar is a hidden file
181         itself.
182         (struct _GtkFileChooserDefault): Added fields
183         browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
184         (create_file_list): Set an object data key of
185         "GtkFileChooserDefault" on the tree view so that we can find the
186         impl from the popup menu callbacks.  Also, hook up to the
187         "button-press-event" and "popup-menu" signals in the file list to
188         bring up a popup menu.
189         (list_popup_menu_cb): New callback.
190         (list_button_press_event_cb): New callback.
191
192         Fix #138763:
193
194         * gtk/gtkfilesystemmodel.c
195         (_gtk_file_system_model_new): Oops, connect_object to
196         "finished-loading".
197
198 2004-03-31  Tor Lillqvist  <tml@iki.fi>
199
200         * configure.in: Move AC_CANONICAL_HOST earlier, before the check
201         for native Win32. (#136559, J. Ali Harlow)
202
203         * gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
204         angles. Thanks to Tim Newsham.
205
206 2004-03-29  Federico Mena Quintero  <federico@ximian.com>
207
208         Fix #137520.
209
210         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
211         for an ::is_finished_loading() method and a ::finished_loading()
212         signal at the end of the struct.
213
214         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
215         "finished-loading" signal.
216         (gtk_file_folder_is_finished_loading): New function.
217
218         * gtk/gtkfilesystemunix.c
219         (gtk_file_folder_unix_is_finished_loading): Implement.
220
221         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
222         slot for a "finished-loading" signal.
223         (gtk_file_system_model_class_init): Create the "finished-loading"
224         signal.
225         (struct _GtkFileSystemModel): New field
226         idle_finished_loading_source.  We emit the "finished-loading"
227         signal in an idle if the root folder was done loading right in
228         _gtk_file_system_model_new(), so that the caller has a chance to
229         connect to the signal.
230         (_gtk_file_system_model_new): Connect to the normal signals of the
231         folder even if the initial _list_children() fails.  Also, see if
232         the folder is finished loading; connect to the "finished-loading"
233         signal otherwise.
234         (gtk_file_system_model_finalize): Remove the idle handler.
235
236         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
237         and connect to the model's "finished-loading" signal.
238         (get_toplevel): New helper function.
239         (error_message): Use get_toplevel().
240         (trap_activate_cb): Likewise.
241         (location_popup_handler): Likewise.
242         (set_busy_cursor): New function.
243         (browse_files_model_finished_loading_cb): New callback.
244
245 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
246
247         * gtk/gtkfilechooserdefault.c (check_preview_change): Just use the
248         file under the cursor; we don't need the logic from
249         GtkFileSelection after all.  Fixes #132255.
250
251 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
252
253         * gtk/gtkfilechooserdefault.c (location_entry_create): Fill the
254         location entry with the display name of the file under the cursor
255         for Open mode, or the typed filename in Save mode.
256
257 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
258
259         * gtk/gtkfilesystemwin32.c
260         (filename_is_root): Bare drive designators (eg., "c:") are
261         no longer considered as root filenames.  Fixed #137942
262
263 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
264
265         * gtk/gtkfilesystemwin32.c
266         (gtk_file_system_win32_create_folder): Invert test for error in
267         mkdir.  Fixes #137945
268
269 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
270
271         Fixed #138004 using Federico's code from #132327.
272
273         * gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
274         folder_hash field to keep a list of live folder objects.
275         (gtk_file_system_win32_init): Create the folder_hash.
276         (gtk_file_system_win32_finalize): Destroy the folder_hash.
277         (gtk_file_system_win32_get_folder): Ref and return an existing
278         folder if we have it around, otherwise return a new folder object.
279         (struct _GtkFileFolderWin32): Add a field for the parent file system.
280         (gtk_file_folder_win32_finalize): Remove the folder from the file
281         system's hash table.
282         (gtk_file_system_win32_create_folder):  Emit "files-added" on the
283         newly-created folder's parent.  Fixes #138004.
284
285 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
286
287         * gtk/gtkfilesystemwin32.c
288         (gtk_file_system_win32_get_folder): Test that path is actually
289         a directory and throw error if not. Fixed bug #137950
290
291 2004-03-22  J. Ali Harlow  <ali@juiblex.co.uk>
292
293         * gtk/gtkfilesystemwin32.c
294         (gtk_file_system_win32_volume_get_display_name): Ignore empty
295         volume labels; assume that GetVolumeInformation would fail if
296         GetVolumeInformationW does; catches a small memory leak;
297         pass the buffer size to GetVolumeInformationW in wide
298         characters instead of bytes. Fixes bug #137543
299         (list_volumes): Cope with the theoretical possibility of
300         more than 26 logical drives. Fixes bug #137940
301         (bookmarks_serialize): Now actually removes bookmarks.
302         Fixes bug #137943
303
304 2004-03-22  Guntupalli Karunakar  <karunakar@freedomink.org>
305
306         * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
307
308 2004-03-21  Tor Lillqvist  <tml@iki.fi>
309
310         * gtk/gtkfilesystemwin32.c
311         (gtk_file_system_win32_volume_get_base_path): Include the
312         backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
313         NULL for a volume base path, as g_filename_to_uri() requires an
314         absolute path, and just a drive letter and colon isn't. (#137543)
315
316 2004-03-20  Hans Breuer  <hans@breuer.org>
317
318         * gtk/gtkfilesystemwin32.c : applied the undisputable and
319         required [due to recent gtkfilesystem internal api semantic 
320         changes] part of patches to fix bug #137543 (Tor Lillqvist,
321         J. Ali Harlow)
322
323         * gdk/gdkevents-win32.c (handle_configure_event) :
324              (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
325         GdkWindowObject::x, y with screen coords to make 
326         gdk_window_get_position () return the right thing and thus fix
327         drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
328
329 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
330
331         * Revert the patch to #137520, as 2.4.1 is for conservative bug
332         fixes only.  The patch is attached to the bug report, for
333         reference.
334
335 2004-03-19  Morten Welinder  <terra@gnome.org>
336
337         * gtk/gtkfilechooserdefault.c
338         (gtk_file_chooser_default_set_current_folder): Test existance of
339         the path after checking for locality, if needed.
340
341 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
342
343         Fix #137520.
344
345         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
346         for an ::is_finished_loading() method and a ::finished_loading()
347         signal at the end of the struct.
348
349         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
350         "finished-loading" signal.
351         (gtk_file_folder_is_finished_loading): New function.
352
353         * gtk/gtkfilesystemunix.c
354         (gtk_file_folder_unix_is_finished_loading): Implement.
355
356         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
357         slot for a "finished-loading" signal.
358         (gtk_file_system_model_class_init): Create the "finished-loading"
359         signal.
360         (struct _GtkFileSystemModel): New field
361         idle_finished_loading_source.  We emit the "finished-loading"
362         signal in an idle if the root folder was done loading right in
363         _gtk_file_system_model_new(), so that the caller has a chance to
364         connect to the signal.
365         (_gtk_file_system_model_new): Connect to the normal signals of the
366         folder even if the initial _list_children() fails.  Also, see if
367         the folder is finished loading; connect to the "finished-loading"
368         signal otherwise.
369         (gtk_file_system_model_finalize): Remove the idle handler.
370
371         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
372         and connect to the model's "finished-loading" signal.
373         (get_toplevel): New helper function.
374         (error_message): Use get_toplevel().
375         (trap_activate_cb): Likewise.
376         (location_popup_handler): Likewise.
377         (set_busy_cursor): New function.
378         (browse_files_model_finished_loading_cb): New callback.
379
380 Thu Mar 18 12:10:45 2004  Owen Taylor  <otaylor@redhat.com>
381
382         * gtk/gtktreeitem.c (gtk_tree_item_forall): Include 
383         eventbox for expander. (#137564, reported by
384         Jacques Garrigue)
385
386 2004-03-18  Guntupalli Karunakar  <karunakar@freedomink.org>
387
388         * mr.po: Added "mr" for Marathi to ALL_LINGUAS.
389
390 2004-03-17  Morten Welinder  <terra@gnome.org>
391
392         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free
393         volumes not actually put into the shortcut list.
394
395         * tests/prop-editor.c (object_changed): Plug leak.
396
397         * tests/testfilechooser.c (main): Plug some leaks and expose
398         others.
399
400         * tests/prop-editor.c (create_prop_editor): Don't leak the tooltip
401         object.  Fixed #136652.
402
403         * gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
404         have no screen.  Fixes #137260.
405         (shortcuts_add_bookmark_from_path): Simplify using check_is_folder
406         thereby fixing leak.  Fixes #137259.
407
408         * gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
409         slider buttons have been destroyed.
410         (gtk_path_bar_remove): Make this work for slider buttons too.
411         Fixes #137257
412
413 2004-03-15  Morten Welinder  <terra@gnome.org>
414
415         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
416         Sanitize and plug leak.
417         (check_icon_theme): Only do something if the widget has a screen.
418
419 Wed Mar 17 01:20:28 2004  Matthias Clasen  <maclas@gmx.de>
420
421         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
422         Move the repositioning logic from _gtk_entry_completion() popup
423         over here. Fixes #137355, reported by Niklas Knutsson.
424
425 Tue Mar 16 13:29:58 2004  Owen Taylor  <otaylor@redhat.com>
426
427         * === Released 2.4.0 ===
428
429         * configure.in: Version 2.4.0, interface age 0; 
430         require glib-2.4.0, pango-1.4.0.
431
432         * configure.in: Change gtk_binary_version to 2.4.0;
433         there are some compatibility issues with older theme engines.
434         
435         * NEWS: Updates
436
437         * README.in: Updates
438
439 Tue Mar 16 13:54:07 2004  Jonathan Blandford  <jrb@redhat.com>
440
441         * gtk/gtkentry.c (gtk_entry_completion_key_press): Block the
442         ::changed handler during the ::match-selected when done by
443         keyboard.
444
445 Tue Mar 16 00:56:11 2004  Matthias Clasen  <maclas@gmx.de>
446
447         * gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press): 
448         Block the ::changed handler during the emission of ::match-selected.
449         Partial fix for #137226.
450
451         * gtk/gtkfilechooserentry.c: Remove the no longer needed 
452         no_pop_down flag.
453
454 Tue Mar 16 00:20:51 2004  Matthias Clasen  <maclas@gmx.de>
455
456         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new_with_backend):
457         Fix a typo in the docs.
458
459 2004-03-15  Tor Lillqvist  <tml@iki.fi>
460
461         * README.win32: Updates.
462
463 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
464
465         * gtk/gtkfilechooserdefault.c (update_appearance): Only hide the
466         "create folder" button in OPEN mode; all the others should show it
467         it.
468         (get_paths_foreach): Handle the editable row.
469
470         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder):
471         Force a re-get of the folder so that the new directory gets added
472         to its hash table of file info.
473
474 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
475
476         * gtk/gtkfilechooserdefault.c (update_from_entry): In the Save
477         modes, set the Name entry of the file chooser if we get a
478         nonexistent filename from the file entry.  Fixes #135911.
479         (gtk_file_chooser_default_set_current_name): Oops, this should
480         also work if we are in CREATE_FOLDER mode.
481
482         * gtk/gtkfilesystem.c (gtk_file_path_real_copy): Use
483         gtk_file_path_copy().
484
485         * gtk/gtkfilechooserentry.c (check_completion_callback): Free the
486         path that we got from the model.
487         (completion_match_func): Use DISPLAY_NAME_COLUMN rather than a
488         hard-coded constant.
489
490 Mon Mar 15 13:50:14 2004  Owen Taylor  <otaylor@redhat.com>
491
492         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
493         Don't leak the temporary font description. (Nils O. SelÃ¥sdal)
494
495 Mon Mar 15 12:51:17 2004  Jonathan Blandford  <jrb@gnome.org>
496
497         * gtk/gtkfilechooserdefault.c (location_popup_handler): Only show
498         the title string in OPEN/SELECT_FOLDER mode as it's open-specific.
499         Put a blank title for SAVE/CREATE_FOLDER; we are in string freeze,
500         so we'll fix it for 2.4.1 as #137272.
501
502         * gtk/gtkpathbar.c (gtk_path_bar_scroll_down): calculate
503         space_available correctly for RTL mode.  w/o this, you can't
504         scroll down again.  Fixes #137021.
505
506 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
507
508         * gtk/gtkpathbar.c (gtk_path_bar_scroll_up): Queue a resize.
509         (gtk_path_bar_scroll_down): Likewise.
510
511 Mon Mar 15 11:40:43 2004  Owen Taylor  <otaylor@redhat.com>
512
513         * gtk/gtkfilechooserentry.c: Store the position of the 
514         file part and use that in check_completion_callback()
515         and match_selected_callback() to figure out where
516         to operate on the text, rather than recomputing the
517         information.
518
519 Mon Mar 15 10:35:19 2004  Jonathan Blandford  <jrb@gnome.org>
520
521         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): set
522         changing_folders to be true so we don't trigger a callback when we
523         remove the selection
524         (shortcuts_add_bookmarks): ditto
525
526 Mon Mar 15 10:47:18 2004  Owen Taylor  <otaylor@redhat.com>
527
528         * gtk/gtkfilechooserentry.c: s/seperator/separator/.
529
530 Mon Mar 15 09:54:36 2004  Owen Taylor  <otaylor@redhat.com>
531
532         * gtk/gtklabel.c (gtk_label_focus): Check for 
533         Control-Tab or Control-Shift-Tab, not any Control-key
534         as a current event ... handles the case where a dialog
535         is triggered from a control accelerator better.
536
537 Mon Mar 15 08:48:48 2004  Jonathan Blandford  <jrb@gnome.org>
538
539         * gtk/gtkfilechooserentry.c (match_selected_callback): implement
540         correctly.
541         (completion_match_func): Allow surpressing popdowns.
542         (maybe_append_seperator_to_path): New function to add a separator
543         item to a display_name.  Bad hack.
544         (check_completion_callback): Implement select-ahead as an idle.
545         (add_completion_idle): new function to handle select-ahead
546         (gtk_file_chooser_entry_do_insert_text): starf the select-ahead
547         idle.
548         (gtk_file_chooser_entry_focus): Override tab for completion.
549         (gtk_file_chooser_entry_activate): commit select_ahead when
550         activated.
551
552         * gtk/gtkfilechooserdefault.c (location_popup_handler): grab the
553         appropriate widget for the mode.
554
555 2004-03-15  Tor Lillqvist  <tml@iki.fi>
556
557         * gdk/win32/gdkgc-win32.c (gdk_gc_copy): Don't just copy the whole
558         GdkGCWin32 with a single assignment, that overwrites GObject's
559         private data (for instance ref_count). (#137012, John Ehresman)
560
561 2004-03-15  Mark McLoughlin  <mark@skynet.ie>
562
563         * gtk/gtkfilechooserdefault.c: remove the unused "lowest_folder"
564         GtkFileChooserDefault member. Leftover from my original patch
565         for bug #136987.
566
567 Mon Mar 15 01:50:28 2004  Jonathan Blandford  <jrb@gnome.org>
568
569         * gtkfilechooserentry.c: Rewritten to use the GtkEntryCompletion
570         API more correctly.  Now pops down the dropdown well.
571
572         * gtkfilesystem.c (gtk_file_path_get_type): New boxed type for the
573         FilePath.
574
575         * test/testfilechooser.c: disable preview widget temporarily.
576         It's not representative of a good preview widget.
577
578 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
579
580         * gtk/gtkfilechooserdefault.c (shortcuts_find_current_folder):
581         Renamed from shortcuts_unselect_all(); now selects the row that
582         corresponds to the current folder, if any.  Fixes #135916.
583
584         * gtk/gtkpathbar.h: Added prototypes for _gtk_path_bar_up() and
585         _gtk_path_bar_down().
586
587 2004-03-15  Federico Mena Quintero  <federico@ximian.com>
588
589         * gtk/gtkfilechooserdefault.c: Surround the
590         drag-outside-to-remove-bookmarks code with "#if 0" blocks; it's
591         too unstable right now.
592
593 Sun Mar 14 23:36:15 2004  Owen Taylor  <otaylor@redhat.com>
594
595         * gtk/gtkfilechooserdefault.c: Implement local_only by
596         filtering the shortcuts and bookmarks list by 
597         gtk_file_system_path_to_filename (file_system, path) != NULL.
598         (#132894)
599
600         * gtk/gtkfilesystem.c (gtk_file_system_path_is_local): Add
601         a convenience function, may by interesting to push to the 
602         file system vtable later for performance.
603
604 2004-03-14  Federico Mena Quintero  <federico@ximian.com>
605
606         * gtk/gtkfilesystem.c (gtk_file_folder_get_info): Allow the path
607         to be NULL, so that people can ask for information about a
608         parent-less file system root (e.g. get_info (get_folder ("/"), NULL)).
609
610         * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info): Allow
611         the condition describe above.
612
613         * gtk/gtkfilechooserdefault.c (get_file_info): Allow getting
614         information of root paths.
615
616         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Handle root paths correctly.
617
618 Sun Mar 14 22:32:36 2004  Owen Taylor  <otaylor@redhat.com>
619
620         * gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Mention
621         GtkTreeViewSearchEqualFunc return value oddity here as well.
622
623         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): On failure
624         to get a string to compare to, return TRUE (no match), not 
625         FALSE (match). Handle %NULL string values gracefully.
626         Remove unused variable. (#135962, Mark McLoughlin)
627
628 2004-03-14  Morten Welinder  <terra@gnome.org>
629
630         * gtk/gtkfilesystemunix.c: Kill some debug g_prints.
631
632 Sun Mar 14 21:03:15 2004  Owen Taylor  <otaylor@redhat.com>
633
634         * gtk/gtkpathbar.[ch]: Add _gtk_path_bar_up()/
635         _gtk_path_bar_down().
636
637         * gtk/gtkfilechooserdefault.c: Use _gtk_path_bar_up()/
638         _gtk_path_bar_down() as bindings for Alt-Up
639         and new Alt-Down. (Partly based on a patch by
640         Mark McLoughlin, #136987)
641
642 2004-03-14  Federico Mena Quintero  <federico@ximian.com>
643
644         Fixes #136185, patch by Morten Welinder, with some changes.
645
646         * gtk/gtkfilechooserdefault.c (check_is_folder): New helper function.
647         (shortcuts_insert_path): Check the path first with check_is_folder().
648         (gtk_file_chooser_default_set_current_folder): Likewise.
649         (gtk_file_chooser_default_add_shortcut_folder): Likewise.
650         (browse_widgets_create): Unref the size group.
651
652         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder):
653         Handle the case where the file exists but it is not a directory.
654         (IconType): Add value for ICON_UNDECIDED.
655         (struct stat_info_entry): New structure to hold a file's struct
656         stat, its MIME type and its icon type.
657         (struct _GtkFileFolderUnix): Added a hash of struct
658         stat_info_entry, and flags to remember which info types we've read
659         so far.
660         (get_icon_type): Use a helper function for the icons-from-stat
661         types.
662         (gtk_file_system_unix_render_icon): Use the cached file info.
663         (gtk_file_folder_unix_get_info): Put the info in the cache.
664         (gtk_file_system_unix_get_folder): Create the cache of file info
665         structures.
666
667         * gtk/gtkfilesystem.c (gtk_file_info_set_display_name): Handle the
668         case where display_name is the same as the existing
669         info->display_name.
670
671 Sun Mar 14 19:26:48 2004  Owen Taylor  <otaylor@redhat.com>
672
673         #136672, reported by Christian Persch; fixes based
674         on a patch by Soeren Sandmann.
675
676         * gtk/gtkmenu.c: Change the handling of mixed gridded
677         and non-gridded menu items; the old method was causing
678         major performance problems even with the "avoid relayout
679         on destruction" hack put in recently.
680
681         Now we first lay out the gridded items and then put the 
682         non-gridded items into empty rows / after the gridded items. 
683         Layout is done in a central menu_shell_ensure_layout(). Also
684         avoid emitting property notifications when we initially
685         insert or attach items.
686         
687         * gtk/gtkmenushell.[ch] gtk/gtkmenu.c: Stop setting the
688         unused menu_shell->menu_flag, and document it as unused
689         in the header.
690
691         * tests/testactions.c: Add a test of creating/removing
692         lots of items.
693
694         * test/testgtk.c: Add some more cruft to the menu test.
695
696 Mon Mar 15 02:36:07 2004  Matthias Clasen  <maclas@gmx.de>
697
698         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): Add
699         some signal docs.
700
701 Sun Mar 14 15:38:39 2004  Jonathan Blandford  <jrb@gnome.org>
702
703         * gtk/gtkentrycompletion.c (gtk_entry_completion_visible_func):
704         always use the match_func, even if text_column is set.
705
706 2004-03-14  Morten Welinder  <terra@gnome.org>
707
708         * gtk/gtkfilesystemunix.c (get_parent_dir): Don't turn "/" into
709         "".
710         (gtk_file_system_unix_get_folder): Use the same value for lookup
711         as for insertion.  Make sure we have a directory.
712
713         * gtk/gtkfilechooserdefault.c (error_dialog): Don't crash on NULL
714         path; don't crash on NULL error.
715
716 2004-03-14  Hans Breuer  <hans@breuer.org>
717
718         gtk/gtkcombobox.c : prototype cell_view_sync_cells() before 
719         first usage
720
721         gtk/makefile.msc.in : updated 'gtk_public_h_sources'
722
723         tests/makefile.msc : added testspinbutton
724
725 Sun Mar 14 01:01:18 2004  Matthias Clasen  <maclas@gmx.de>
726
727         * gtk/gtkcellview.c (gtk_cell_view_set_cell_data): Align
728         this function with gtk_tree_view_column_set_cell_data();
729         call the cell data func after setting the attributes.
730
731 Sun Mar 14 01:00:08 2004  Matthias Clasen  <maclas@gmx.de>
732
733         * gtk/gtkcellview.c (gtk_cell_view_expose): One more try;
734         make sure not to call gtk_cell_view_set_cell_data() when
735         displayed_row is NULL.
736
737 Sat Mar 13 18:13:13 2004  Owen Taylor  <otaylor@redhat.com>
738
739         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): When not
740         wrapping, do the offset of the line for justification ourselves.
741         (#120256, Felipe Heidrich)
742
743 Sun Mar 14 00:03:18 2004  Matthias Clasen  <maclas@gmx.de>
744
745         * gtk/gtkcellview.c (gtk_cell_view_expose): Support the
746         model-less use of GtkCellView shown in testcombo.c.
747
748 2004-03-13  Tor Lillqvist  <tml@iki.fi>
749
750         * gdk/win32/gdkdisplay-win32.c: Don't undefine HAVE_MONITOR_INFO
751         when compiling with gcc. Mingw's headers do have the required
752         definitions.
753
754         * gdk/win32/gdkdrawable-win32.c (draw_polygon): When drawing
755         filled polygons, don't draw the outline, similarily as
756         draw_rectangle(). Apparently GTK and GIMP don't use
757         gdk_draw_polygon() much (or always draw the outline, too), as this
758         has gone undetected for so long. Thanks to Bruce Hochstetler.
759
760 Sat Mar 13 15:19:17 2004  Owen Taylor  <otaylor@redhat.com>
761
762         * gtk/gtkwindow.c (gtk_window_destroy): Remove
763         the window from the toplevel_list here rather in destroy.
764         While this is theoretically speaking wrong, it fits
765         in better with the current reality that destroyed
766         widgets are not reusable. (#126808, Michael Natterer)
767
768 Sat Mar 13 21:47:47 2004  Matthias Clasen  <maclas@gmx.de>
769
770         * gtk/gtkcellview.c (gtk_cell_view_expose): Don't do anything
771         beyond clearing to the background if there is no active row.
772         (#137066, reported by Owen Taylor)
773
774 Sat Mar 13 21:37:44 2004  Matthias Clasen  <maclas@gmx.de>
775
776         * gtk/gtkcombobox.c (gtk_combo_box_list_key_press): Pop down the
777         list when an item is selected via the keyboard.
778
779 2004-03-13  Anders Carlsson  <andersca@gnome.org>
780
781         * gtk/gtkfilesystemunix.c: (remove_trailing_slash),
782         (gtk_file_system_unix_get_folder),
783         (gtk_file_system_unix_create_folder), (get_parent_dir),
784         (gtk_file_system_unix_get_parent), (gtk_file_folder_unix_get_info):
785         Remove trailing slashes in path names.
786         
787 Sat Mar 13 12:17:16 2004  Owen Taylor  <otaylor@redhat.com>
788
789         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Make
790         this a total no-op when the new or old parent is
791         destroyed. (#134230, patch from Soeren Sandmann)
792
793         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
794         For foreign windows in our heirarchy, call
795         _gdk_windowing_window_destroy_foreign (window) and skip
796         all the normal destruction logic.
797
798         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c:
799         Move code to request destruction of a foreign window
800         code into a separate _gdk_windowing_window_destroy_foreign().
801
802         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_finalize):
803         Call GDK_WINDOW_DISPLAY() on the wrapper not on the
804         impl. (Also from Soeren's patch)
805
806 Sat Mar 13 10:49:46 2004  Owen Taylor  <otaylor@redhat.com>
807
808         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): For
809         GTK_IS_PLUG toplevels, call gdk_window_get_origin() 
810         not gtk_window_get_position, as a hackround for not
811         having accurate notification of window position for
812         embedded windows. (#136112, Dan Winship)
813
814 Sat Mar 13 10:34:03 2004  Owen Taylor  <otaylor@redhat.com>
815
816         * gtk/gtktextview.c gtk/gtktextbuffer.c: Revert last change;
817         it causes problems for pastes from other applications; see
818         comments in bugzilla for #81880.
819
820 Sat Mar 13 02:55:51 2004  Matthias Clasen  <maclas@gmx.de>
821
822         Fix middle button pasting in the TextView  (#81880, reported
823         by Evert Verhellen, patch by Paolo Borelli):
824         
825         * gtk/gtktextview.c (gtk_text_view_button_press_event): Retrieve 
826         the insert mark and move the cursor to it making sure of also 
827         scroll the window if needed.
828         
829         * gtk/gtktextbuffer.c (pre_paste_prep): Move the insert mark
830         to the insertion point.
831
832 Sat Mar 13 01:38:55 2004  Matthias Clasen  <maclas@gmx.de>
833
834         * gtk/gtkcombobox.c (gtk_combo_box_remove): Add a remove 
835         implemenatation which restores the cell_view when the custom 
836         child is removed.  (#136555, Owen Taylor)
837
838 Sat Mar 13 00:07:51 2004  Matthias Clasen  <maclas@gmx.de>
839
840         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_clear): 
841         Keep the cell_list in a consistent state while iterating over it, 
842         since clear_attributes() also iterates over it.  (another instance
843         of #136585, Morten Welinder)
844         
845 Fri Mar 12 17:20:15 2004  Owen Taylor  <otaylor@redhat.com>
846
847         * gtk/gtkarrow.c (gtk_arrow_expose): Swap GTK_ARROW_LEFT
848         and GTK_ARROW_RIGHT for GTK_TEXT_DIR_LTR. (#129159,
849         Semion Chichelnitsky)
850
851         * gtk/gtkpathbar.c gtk/gtktoolbar.c: Remove no-longer-needed 
852         gtk_toolbar_direction-changed handlers and explicit
853         flipping of GtkArrow widgets.
854
855 Fri Mar 12 23:37:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
856
857         * gtk/gtkfilechooserdialog.c
858         (file_chooser_widget_default_realized_size_changed): Clamp the
859         new size to the screen.
860
861 Fri Mar 12 15:06:44 2004  Owen Taylor  <otaylor@redhat.com>
862
863         * gtk/gtkexpander.c (gtk_expander_realize): Create the
864         event_window at the right size using the same logic as
865         in size_allocate. (#136994, Niklas Knuttson)
866
867 2004-03-12  Federico Mena Quintero  <federico@ximian.com>
868
869         * gtk/gtkwindow.c (gtk_window_activate_focus): Don't ignore the
870         return value of gtk_widget_activate().
871         (gtk_window_activate_default): Likewise.  Fixes #137008.
872
873         * gtk/gtkfilechooserdialog.c (response_cb): Act on positive
874         response IDs we recognize, rather than bailing out on cancellation
875         ones.  Fixes #136237; patch by Olivier Andrieu
876         <oliv__a@users.sourceforge.net>.
877         (file_chooser_widget_file_activated): If the dialog doesn't have a
878         default widget, try to find a suitable response widget on our own.
879         People should *really* be using gtk_dialog_set_default_response(),
880         but this is to help lazy programmers.
881
882         * gtk/gtkdialog.c (_gtk_dialog_get_response_for_widget): New
883         internal function.
884         (get_response_data): Add a "create" argument so that we don't
885         unconditionally create the response data.
886
887 2004-03-12  Morten Welinder  <terra@gnome.org>
888
889         * tests/Makefile.am: Add new testspinbutton.c
890
891 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
892
893         * gtk/gtkfilechooserdefault.c (shortcuts_drag_set_delete_cursor):
894         Put the trash icon on the right for LTR locales, or on the left
895         for RTL.
896         (shortcuts_drag_motion_cb): Cancel the idle handler here as well.
897         (shortcuts_drag_leave_cb): Test whether the idle is present.
898         (shortcuts_drag_data_received_cb): Ahem, don't assert here.
899
900 Thu Mar 11 17:51:10 2004  Owen Taylor  <otaylor@redhat.com>
901
902         * modules/input/gtkimcontextxim.c (preedit_done_callback):
903         Clear preedit string and emit preedit_changed as needed
904         on AIX. (#130617, Philip K Warren)
905
906 2004-03-11  Morten Welinder  <terra@gnome.org>
907
908         * gtk/gtkpathbar.c (_gtk_path_bar_set_file_system): Plug leak.
909
910 Thu Mar 11 16:28:15 2004  Owen Taylor  <otaylor@redhat.com>
911
912         * gtk/gtkmenu.c (gtk_menu_get_toplevel): Fix attach/attach->parent
913         type. (#136919, Tim Mooney)
914
915 Thu Mar 11 16:18:51 2004  Jonathan Blandford  <jrb@redhat.com>
916
917         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): revert
918         earlier change to insert_path so that we test that the directory
919         exists.
920
921         * gtk/gtkfilechooserdialog.c
922         (gtk_file_chooser_dialog_constructor): move focus.
923
924 Thu Mar 11 22:12:14 2004  Matthias Clasen  <maclas@gmx.de>
925
926         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Use the same
927         logic as GtkEntry when calculating border width.  (#116368, reported
928         by Morten Welinder)
929
930 Thu Mar 11 15:59:05 2004  Owen Taylor  <otaylor@redhat.com>
931
932         * tests/testgtk.c (create_spins): Use gtk_entry_set_width_chars()
933         rather than gtk_widget_set_size_request().
934
935 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
936
937         * gtk/gtkfilechooserdefault.c (remove_settings_signal): New
938         function, copied from gtkpathbar.c.
939         (gtk_file_chooser_default_dispose): Use remove_settings_signal()
940         rather than our own code.
941         (gtk_file_chooser_default_screen_changed): Use
942         remove_settings_signal(); this should handle per-screen settings
943         correctly.
944
945 Thu Mar 11 14:07:18 2004  Owen Taylor  <otaylor@redhat.com>
946
947         * gtk/gtklabel.c (gtk_label_focus): Fix a missing return
948         value.
949
950 Thu Mar 11 13:58:24 2004  Owen Taylor  <otaylor@redhat.com>
951
952         * gtk/gtkmessagedialog.c gtk/gtklabel.c: Back out the
953         put-labels-into-the-standard-focus-chain patches 
954         from bug #59707.
955
956         * gtk/gtklabel.c (gtk_label_focus): Only put the
957         label in the tab chain when the control key is pressed.
958
959 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
960
961         * gtk/gtkfilechooserdefault.c (error_message_with_parent): Use a
962         single OK button, not a Close button, as per the HIG.
963
964         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Likewise.
965
966 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
967
968         * gtk/gtkfilechooserdefault.c (shortcuts_drag_motion_cb): Oops,
969         initialize "action" before jumping.  Fixes #136900.
970
971 2004-03-11  Mark McLoughlin  <mark@skynet.ie>
972
973         * gtk/gtksettings.c: (apply_queued_setting): don't overwrite
974         application properties. Fixes bug #136802.
975
976 2004-03-11  Dov Grobgeld  <dov@imagic.weizmann.ac.il>
977
978         * gtk/gtktextlayer.c: (gtk_text_layout_set_buffer): Added
979         call to gtk_text_layout_update_cursor_line() to solve in 
980         problem of switching keyboard direction at widget creation:
981         bug #136680
982
983 Thu Mar 11 10:28:30 2004  Owen Taylor  <otaylor@redhat.com>
984
985         * gtk/gtkfilechooserembed.c (delegate_initial_focus): Remove
986         stray 'return' statement. (#136855, David L. Cooper II)
987
988 2004-03-11  Mark McLoughlin  <mark@skynet.ie>
989
990         * gtk/gtkstyle.c: (gtk_default_draw_expander): Use the PRELIGHT
991         fg color for drawing the expander when prelit. Fixes problem
992         with the HighContrast theme: bug #136789.
993
994 2004-03-11  Federico Mena Quintero  <federico@ximian.com>
995
996         Fix #135912 and #135913.
997
998         * gtk/gtkfilechooserdefault.c
999         (shortcuts_filter_model_row_draggable): Implement.
1000         (shortcuts_model_filter_new): New function, create a
1001         ShortcutsModelFilterClass derived from GtkTreeModelFilter, so that
1002         we can implement our own DnD interface methods.
1003         (shortcuts_model_create): Use shortcuts_model_filter_new().
1004         (shortcuts_list_create): Enable the shortcuts list as a drag
1005         source.
1006         (file_list_source_targets): Renamed from shortcuts_targets.
1007         (shortcuts_list_create): Change the options for
1008         gtk_drag_dest_set().  Connect to more drag signals so that we can
1009         implement drops by hand.
1010         (shortcuts_drag_data_delete_cb): New handler; just stop the emission.
1011         (shortcuts_drag_motion_cb): New handler; validate the drop.
1012         (shortcuts_drag_leave_cb): New handler; unset the drag_dest_row.
1013         (shortcuts_drag_drop_cb): New handler; just stop the emission and
1014         remove the idle handler for the drag cursor.
1015         (shortcuts_add_bookmark_from_path): Add a position argument,
1016         return a boolean success code.
1017         (shortcuts_drag_data_received_cb): Handle two cases:  1) Insert
1018         the bookmarks at the proper position, rather than always appending
1019         them to the list; 2) alternatively, reorder the bookmarks.
1020         (struct _GtkFileChooserDefault): New field shortcuts_drag_outside.
1021         (shortcuts_drag_motion_cb): Turn off impl->shortcuts_drag_outside.
1022         (shortcuts_drag_leave_cb): Turn on impl->shortcuts_drag_outside in
1023         an idle handler.
1024         (shortcuts_drag_end_cb): New handler; remove the selected bookmark.
1025
1026 Thu Mar 11 01:08:25 2004  Jonathan Blandford  <jrb@gnome.org>
1027
1028         * gtk/gtkfilechooserdefault.c (location_entry_create): up the
1029         width of the entry a tad.
1030
1031         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): use
1032         gtk_entry_completion_selection_changed.  Also, unref the
1033         completion as we were leaking a reference to it.
1034
1035 2004-03-10  Federico Mena Quintero  <federico@ximian.com>
1036
1037         * gtk/gtkstyle.c (draw_dot): Remove spurious semicolon.  Thanks to
1038         Kjartan Maraas for pointing it out.
1039
1040 Wed Mar 10 23:40:15 2004  Matthias Clasen  <maclas@gmx.de>
1041
1042         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Set the
1043         background on the action view cell renderer here, not in init, so 
1044         that a) we catch style changes, and b) we get the real style, not 
1045         the default one. Partial fix for #127648, reported by Dave Bordoley.
1046
1047 2004-03-10  Tor Lillqvist  <tml@iki.fi>
1048
1049         * gdk/win32/gdkevents-win32.c (build_key_event_state): Set also
1050         the pointer button bits. (#136636, Dave Neary)
1051
1052         * gdk/win32/gdkwindow-win32.c (show_window_internal): Show
1053         transparent (input only) windows using SetWindowPos(). (#132331,
1054         John Ehresman)
1055
1056         (gdk_window_set_type_hint): For splash screens, remove the resize
1057         handles, menu, and minimize/maximize/close buttons. (#132896)
1058
1059 Wed Mar 10 22:30:23 2004  Matthias Clasen  <maclas@gmx.de>
1060
1061         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Keep the
1062         cell_list in a consistent state while iterating over it, since
1063         clear_attributes() also iterates over it.  (#136585, Morten Welinder)
1064
1065 2004-03-10  Mark McLoughlin  <mark@skynet.ie>
1066
1067         * gtk/gtkexpander.c: (gtk_expander_expose): don't propagate
1068         the expose to the label. The expose handler for GtkContainer
1069         already does that. Fixes bug #136719. Reported by Dennis
1070         Cranston, exact cause nailed down by Owen.
1071
1072 2004-03-10  Federico Mena Quintero  <federico@ximian.com>
1073
1074         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use an
1075         untranslatable "%x" for dates, rather than a custom format.  Fixes
1076         #136357.
1077
1078 2004-03-10  Morten Welinder  <terra@gnome.org>
1079
1080         * gtk/gtkfilechooserdefault.c
1081         (gtk_file_chooser_default_add_shortcut_folder): Test validity of
1082         path here.
1083         (shortcuts_insert_path): Don't check here.
1084         (get_file_info): Barf if name-only fails.
1085
1086         * tests/testfilechooser.c (main): Add support for --multiple.
1087
1088 Wed Mar 10 02:41:05 2004  Jonathan Blandford  <jrb@gnome.org>
1089
1090         * gtk/gtkpathbar.c: (gtk_path_bar_init), (gtk_path_bar_class_init),
1091         (remove_settings_signal), (gtk_path_bar_dispose),
1092         (gtk_path_bar_style_set), (gtk_path_bar_screen_changed),
1093         (gtk_path_bar_scroll_up), (reload_icons), (change_icon_theme),
1094         (settings_notify_cb), (gtk_path_bar_check_icon_theme),
1095         (get_button_image), (gtk_path_bar_update_button_appearance),
1096         (make_directory_button), (gtk_path_bar_check_parent_path): Support
1097         changes in icon themes.
1098
1099         * gtk/gtkpathbar.h: add two elements
1100
1101         * tests/testfilechooser.c: (main): use gnome-vfs method again to
1102         get more testing.
1103
1104 Wed Mar 10 01:17:40 2004  Jonathan Blandford  <jrb@gnome.org>
1105
1106         * gtk/gtkpathbar.c: added 'Desktop' to the list of volumes.  We
1107         don't have any more untranlated strings in the dialog.
1108
1109 Wed Mar 10 00:24:24 2004  Jonathan Blandford  <jrb@gnome.org>
1110
1111         * gtk/gtkfilechooserdefault.c (error_dialog): use uri instead of
1112         the pathname for UTF-8 safety.
1113
1114 Wed Mar 10 00:10:47 2004  Jonathan Blandford  <jrb@gnome.org>
1115
1116         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Always
1117         check to see if the shortcuts exists.  We don't want to put
1118         invalid dirs in the shortcuts pane.
1119
1120 Tue Mar  9 16:40:34 2004  Jonathan Blandford  <jrb@gnome.org>
1121
1122         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1123         remove unneeded shortuts_swin;
1124
1125 Wed Mar 10 01:49:27 2004  Matthias Clasen  <maclas@gmx.de>
1126
1127         Fix #136614 in a better way:
1128         
1129         * gtk/gtkoptionmenu.c (gtk_option_menu_init): Undo the last change.
1130         * gtk/gtkbutton.c (struct _GtkButtonPrivate): Add a flag, align_set.
1131         * gtk/gtkbutton.c (gtk_button_init): Initialize align_set to 0.
1132         * gtk/gtkbutton.c (maybe_set_alignment): Rework to only set the
1133         alignment if priv->align_set is set.
1134         * gtk/gtkbutton.c (gtk_button_set_alignment): Set align_set to 1.
1135
1136 Wed Mar 10 01:21:05 2004  Matthias Clasen  <maclas@gmx.de>
1137
1138         * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Place
1139         grid mode popups left aligned, not right aligned.
1140
1141 Tue Mar  9 23:09:46 2004  Matthias Clasen  <maclas@gmx.de>
1142
1143         * gtk/gtkoptionmenu.c (gtk_option_menu_init): Avoid centering 
1144         the label that is reparented from the menuitem.  (#136614, Dennis
1145         Cranston)
1146
1147 Tue Mar  9 16:19:09 2004  Jonathan Blandford  <jrb@gnome.org>
1148
1149         * gtk/gtkpathbar.c (struct _ButtonData): Encapsulate all of the
1150         information about a button in a struct instead of ugly
1151         g_object_set_data.
1152         (gtk_path_bar_size_request): Use ButtonData.
1153         (gtk_path_bar_update_slider_buttons): ditto
1154         (gtk_path_bar_size_allocate): ditto
1155         (gtk_path_bar_remove): ditto
1156         (gtk_path_bar_forall): ditto
1157         (gtk_path_bar_scroll_down): ditto
1158         (gtk_path_bar_clear_buttons): ditto
1159         (button_clicked_cb): ditto.  Also, add an ignore_changes variable
1160         (button_data_free): destroy ButtonData
1161         (update_button_appearance): Use ButtonData
1162         (make_directory_button): ditto
1163         (gtk_path_bar_check_parent_path): ditto
1164         (_gtk_path_bar_set_path): ditto
1165
1166 2004-03-09  Federico Mena Quintero  <federico@ximian.com>
1167
1168         Fix #136533.
1169
1170         * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): New
1171         function.
1172         (check_icon_theme): New helper function, installs a handler for
1173         changes in the icon theme.
1174         (gtk_file_chooser_default_style_set): Use check_icon_theme().
1175         (gtk_file_chooser_default_screen_changed): Use check_icon_theme().
1176         (gtk_file_chooser_default_dispose): Disconnect from GtkSettings.
1177         (change_icon_theme): New function, updates impl->icon_size and
1178         reloads the icons.
1179         (struct _GtkFileChooserDefault): New field settings_signal_id.
1180         (struct _GtkFileChooserDefault): New field icon_size.
1181         (shortcuts_insert_path): Use impl->icon_size.
1182         (list_icon_data_func): Likewise.
1183
1184 2004-03-09  Federico Mena Quintero  <federico@ximian.com>
1185
1186         * gtk/gtkfilechooserdefault.c (get_file_info): Handle the returned
1187         parent_path being NULL.  Fixes #136662.
1188
1189 2004-03-09  Federico Mena Quintero  <federico@ximian.com>
1190
1191         * gtk/gtkfilechooserdefault.c (shortcuts_drag_data_received_cb):
1192         Stop the emission so that GtkTreeView's handler won't try to poke
1193         the filter model.  Fixes #136127.
1194
1195 Tue Mar  9 13:49:14 2004  Owen Taylor  <otaylor@redhat.com>
1196
1197         * gtk/gtkstyle.c (gtk_paint_polygon): Fix 
1198         g_return_if_fail() that was checking draw_shadow.
1199         (#136669, Morten Welinder)
1200
1201 Tue Mar  9 09:57:25 2004  Owen Taylor  <otaylor@redhat.com>
1202
1203         * === Released 2.3.6 ===
1204
1205         * configure.in: Version 2.3.6, interface age 0.
1206
1207         * NEWS: Updates
1208
1209 Tue Mar  9 11:01:45 2004  Jonathan Blandford  <jrb@gnome.org>
1210
1211         * gtk/gtkpathbar.c (gtk_path_bar_finalize): unref the correct
1212         icon.  Reported by Michael Natterer <mitch@gimp.org>.
1213
1214 2004-03-09  Morten Welinder  <terra@gnome.org>
1215
1216         * tests/testfilechooser.c (main): Destroy widgets to reveal leaks.
1217
1218 Tue Mar  9 02:11:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1219
1220         * gtk/gtkmenu.c Fix bug 136446. [Marco Pesenti Gritti]
1221         (struct _GtkMenuPrivate): Add boolean destroying
1222         (gtk_menu_destroy): Set priv->destroying
1223         (gtk_menu_remove): don't update the table information when the
1224         menu is being destroyed.
1225
1226         * gtk/gtkmenu.c (gtk_menu_set_monitor): Formatting fix
1227
1228         * gtk/gtktoolbar.[ch]: Some formatting fixes
1229
1230 Tue Mar  9 01:25:10 2004  Matthias Clasen  <maclas@gmx.de>
1231
1232         * gtk/gtkframe.c (gtk_frame_paint): Fix a typo.
1233
1234 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1235
1236         Fixes #136080.
1237
1238         * gtk/gtkfilesystemunix.c: Only lstat() if stat() failed due to
1239         ENOENT.
1240         (filename_get_info): Likewise.
1241
1242 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1243
1244         * gtk/gtkfilechooserdefault.c
1245         (gtk_file_chooser_default_initial_focus): Use
1246         gtk_tree_view_set_cursor().
1247
1248 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1249
1250         Patch "1a" from #136185, by Morten Welinder.
1251
1252         * gtk/gtkfilechooserdefault.c (get_file_info): Take in an argument
1253         that says whether the caller just wants the display name.
1254         (shortcuts_insert_path): We only want the name in the call to
1255         get_file_info().
1256
1257         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't request more
1258         info than needed from the file_folder.
1259
1260 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1261
1262         Fixes #136105.
1263
1264         * gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
1265         Added an ::initial_focus() method.
1266
1267         * gtk/gtkfilechooserembed.c
1268         (_gtk_file_chooser_embed_delegate_iface_init): Set the
1269         initial_focus method.
1270         (delegate_initial_focus): Implement.
1271         (_gtk_file_chooser_embed_initial_focus): New function.
1272
1273         * gtk/gtkfilechooserdialog.c
1274         (gtk_file_chooser_dialog_constructor): Call
1275         _gtk_file_chooser_embed_initial_focus().
1276
1277         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
1278         Install the ::initial_focus() handler.
1279         (gtk_file_chooser_default_initial_focus): Implement.
1280
1281 2004-03-08  Federico Mena Quintero  <federico@ximian.com>
1282
1283         * gtk/gtkfilechooserdefault.c (update_from_entry): Return a
1284         boolean success code.
1285         (location_popup_handler): Refocus the file chooser if appropriate.
1286         Fixes #135905.
1287         (save_widgets_create): Don't set the text of the save_folder_label
1288         here.
1289         (update_appearance): Set the text here as appropriate for the save
1290         mode.  Also fixes #136387.
1291         (update_appearance): Don't show the Create Folder button in
1292         SELECT_FOLDER mode.
1293         (update_appearance): Show the extra widget in all Save modes
1294         correctly.
1295
1296 Mon Mar  8 11:57:27 2004  Owen Taylor  <otaylor@redhat.com>
1297
1298         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't
1299         call g_signal_handler_disonnect() if priv->model is
1300         NULL. (#136551, Damon Chaplin)
1301
1302         * gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
1303         Back out code to set the active item when the first
1304         item is added to the model; this causes problems for
1305         GtkComboBoxText. (#136535)
1306
1307         * gtk/gtkcombobox.c (gtk_combo_box_menu_destroy)
1308         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
1309         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): 
1310         * gtk/gtkcombobox.c (gtk_combo_box_menu_setup): 
1311         Remove calls to gtk_combo_box_unset_model.
1312
1313         * gtk/gtkcombobox.c (gtk_combo_box_check_appearance): 
1314         Clean up handling of wrap->width > 0.
1315
1316         * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't
1317         switch list/menu mode here.
1318
1319         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Protect
1320         against the same model being set back.
1321
1322         * gtk/gtkcombobox.c (gtk_combo_box_relayout): Call
1323         gtk_combo_box_menu_fill() rather than duplicating
1324         a large chunk of code.
1325
1326 2004-03-08  Anders Carlsson  <andersca@gnome.org>
1327
1328         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_get_flags): 
1329         If max_depth is 0 then we have a list.
1330
1331 2004-03-08  Morten Welinder  <terra@gnome.org>
1332
1333         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): If we fail, leave
1334         widget unchanged.  Explicitly verify final directory.
1335
1336         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder,
1337         get_icon_type, filename_get_info): Protect errno.
1338
1339 2004-03-08  Marco Pesenti Gritti  <marco@gnome.org>
1340
1341         * gtk/gtkentry.c: (gtk_entry_completion_key_press):
1342
1343         When an action is selected stop the event to be propagated
1344         otherwise the activate signal is emitted too. (Bug #133394)
1345
1346 Mon Mar  8 04:50:12 2004  Jonathan Blandford  <jrb@gnome.org>
1347
1348         * gtk/gtkfilechooserdefault.c (create_path_bar): new function to
1349         consolidate creating the path_bar.
1350         (gtk_file_chooser_default_set_current_folder): no longer need to
1351         pass in the filesystem.
1352
1353         * gtk/gtkpathbar.h: Removed unused set_pixbuf functions in favor
1354         of just setting the filesystem.
1355
1356         * gtk/gtkpathbar.c (gtk_path_bar_finalize): Free root path and
1357         home_dir.
1358         (get_button_image): Add images to path_bar.
1359         (update_button_appearance): use images
1360         (make_directory_button): Clasify buttons based upon location.
1361         (_gtk_path_bar_set_path): no longer need a file-system.  Also, add
1362         rerooting, #135845, #135914
1363
1364         * tests/testfilechooser.c: Fix reused error handling.
1365
1366 2004-03-08  Anders Carlsson  <andersca@gnome.org>
1367
1368         * gtk/gtkfilesystemunix.c: (get_icon_for_directory),
1369         (gtk_file_system_unix_render_icon):
1370         Use better icons for home and desktop.
1371
1372 2004-03-08  Anders Carlsson  <andersca@gnome.org>
1373
1374         * gtk/gtkfilechooserentry.c:
1375         (_gtk_file_chooser_entry_set_base_folder):
1376         Set the base folder path in the entry.
1377         
1378 2004-03-08  Christian Neumair  <chris@gnome-de.org>
1379
1380         * tests/testentrycompletion.c: Fix typo.
1381
1382 2004-03-08  Tor Lillqvist  <tml@iki.fi>
1383
1384         * README.win32: Update.
1385
1386         * gtk/gtk.def: Small update. Thanks to J. Ali Harlow. Re-sorted.
1387
1388         * tests/testfilechooser.c: Correct localtime_r() emulation on
1389         Win32. Remove a couple of unnecessary Win32-only includes.
1390
1391 Mon Mar  8 01:06:17 2004  Matthias Clasen  <maclas@gmx.de>
1392
1393         * tests/testentrycompletion.c: Test dynamic addition/removal. 
1394
1395 Sun Mar  7 22:38:49 2004  Matthias Clasen  <maclas@gmx.de>
1396
1397         * gtk/gtkframe.c (gtk_frame_paint): Use ythickness, not 
1398         xthickness in the calculation of vertical dimensions.
1399
1400 Sun Mar  7 17:38:03 2004  Jonathan Blandford  <jrb@gnome.org>
1401
1402         * gtk/gtkbutton.c (gtk_button_class_init): actually use
1403         gtk_button_add.
1404
1405         * gtk/gtkfilechooserdefault.c (error_building_filename_dialog):
1406         use the uri, not the path, #136317
1407         (renderer_edited_cb): ditto
1408         (shortcuts_add_bookmark_from_path): ditto
1409         (remove_bookmark_button_clicked_cb): ditto
1410         (gtk_file_chooser_default_remove_shortcut): ditto
1411         (update_from_entry): ditto
1412         (up_folder_handler): ditto
1413
1414 Sun Mar  7 16:07:08 2004  Jonathan Blandford  <jrb@gnome.org>
1415
1416         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): set
1417         redraw_on_allocate, #135902.
1418
1419         * gtk/gtkfilesystemmodel.c (model_refilter_recurse): Patch from
1420         Damon Chaplin to set a node to be visible before emitting the
1421         inserted signal, #135555.
1422
1423 Sun Mar  7 22:24:28 2004  Matthias Clasen  <maclas@gmx.de>
1424
1425         * gtk/gtkbutton.c (_gtk_button_paint): Don't use xthickness in the
1426         height calculation.
1427
1428 Sun Mar  7 14:34:04 2004  Jonathan Blandford  <jrb@gnome.org>
1429
1430         Fixes #121500.
1431
1432         * gtk/gtkfilechooserdefault.c (trap_activate_cb): stop activate
1433         from unselecting rows when pressed in multiple-selection mode.
1434
1435 2004-03-07  Hans Breuer  <hans@breuer.org>
1436
1437         * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting) :
1438         some more settings from system, also reflect some name changes
1439         done a while ago in the x11 backend
1440
1441         * gdk/win32/makefile.msc : build gdkspawn-win32.c
1442
1443         * gtk/gtkdnd.c : gtk_drag_source_[gs]et_target_list, added "Since: 2.4"
1444
1445         * gtk/makefile.msc.in : build gtkpathbar, link shell32.lib
1446
1447         * tests/makefile.msc : some more tests get build
1448
1449 Sun Mar  7 03:03:57 2004  Jonathan Blandford  <jrb@gnome.org>
1450
1451         * gtk/gtkfilechooserdefault.c
1452         (gtk_file_chooser_default_get_paths): if action is
1453         SELECT_FOLDER, then return the currentd folder if none is
1454         selected.
1455         (gtk_file_chooser_default_should_respond): Allow 'Ok' to be hit if
1456         no directory is selected in SELECT_FOLDER mode.
1457
1458 Sat Mar  6 23:31:18 2004  Jonathan Blandford  <jrb@gnome.org>
1459
1460         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1461         remove unneeded elements.
1462         (tree_selection_changed): removed
1463         (tree_name_data_func): removed
1464         (gtk_file_chooser_default_finalize): don't unref dir model
1465         (create_folder_tree): removed
1466         (get_selection): no longer need to abstract away the selection
1467         function.
1468         (create_file_list): We now create a tree for all actions.
1469         (file_pane_create): Make one tree.
1470         (update_appearance) We really change the mode only, now.
1471
1472 Sun Mar  7 02:38:00 2004  Matthias Clasen  <maclas@gmx.de>
1473
1474         * gtk/gtkcombobox.c (gtk_combo_box_size_request): Do a 
1475         size_request on the button and cell_view_frame, otherwise
1476         their style will still be the default here in the initial 
1477         size_request. (#136301, Mark McLoughlin)
1478
1479 2004-03-06  Gustavo J. A. M. Carneiro  <gustavo@users.sourceforge.net>
1480
1481         * gtk/gtktoolbar.c (internal_insert_element): Check return value
1482         of gtk_stock_lookup; if stock lookup fails, just use stock_id as
1483         label, instead of crashing. Fixes #136202.
1484
1485 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1486
1487         * gdk/linux-fb/gdkglobals-fb.c: Make <config.h> the very first
1488         include.
1489         * gdk/linux-fb/gdkwindow-fb.c: Likewise.
1490         * gdk/linux-fb/gdkinput.c: Likewise.
1491
1492 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1493
1494         Fixes #136082 and #135265, patch by Morten Welinder.
1495
1496         * configure.in: Use AC_SYS_LARGEFILE.
1497
1498         * */*.c: #include <config.h>
1499
1500 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1501
1502         * gtk/gtkfilechooserdefault.c
1503         (gtk_file_chooser_default_select_path): No need to have a
1504         temporary error variable.
1505
1506 2004-03-05  Tor Lillqvist  <tml@iki.fi>
1507
1508         * configure.in: Move check for native Win32 (mingw) a bit
1509         earlier. If Win32, disable static builds (as in GLib). Remove
1510         unnecessary AC_LIBTOOL_WIN32_DLL.
1511
1512         * gdk/gdk.def: Add missing entries, thanks to J. Ali Harlow.
1513
1514         * gdk/win32/gdkcursor-win32.c (color_is_white): const-correctness.
1515
1516         (gdk_cursor_new_from_pixbuf): Copy of the non-Xcursor X11
1517         implementation.
1518
1519         (gdk_display_supports_cursor_alpha,
1520         gdk_display_supports_cursor_color): Dummy implementations.
1521
1522         (gdk_display_get_default_cursor_size,
1523         gdk_display_get_maximal_cursor_size): Implement.
1524
1525         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_default_group):
1526         Dummy implementation.
1527
1528         * gdk/win32/gdkevents-win32.c (gdk_net_wm_supports): Dummy
1529         implementation.
1530
1531         * gdk/win32/gdkfont-win32.c (gdk_font_get_display): Implement.
1532
1533         * gdk/win32/gdkinput-win32.c (gdk_input_motion_events): Remove,
1534         not in API.
1535
1536         * gdk/win32/gdkwindow-win32.c (gdk_window_get_group): Dummy
1537         implementation.
1538
1539 Fri Mar  5 18:00:36 2004  Jonathan Blandford  <jrb@redhat.com>
1540
1541         * gtk/gtkfilechooserdefault.c (new_folder_button_clicked): scroll
1542         to the new path.
1543
1544         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update the
1545         allocation when scrolling instead of cancelling editing.
1546
1547 Fri Mar  5 23:52:34 2004  Matthias Clasen  <maclas@gmx.de>
1548
1549         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func): 
1550         Improve the docs.  (#127727, Murray Cumming)
1551
1552 Fri Mar  5 23:37:16 2004  Matthias Clasen  <maclas@gmx.de>
1553
1554         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): Clarify the
1555         doc comment.  (#118602)
1556
1557 Fri Mar  5 22:37:15 2004  Matthias Clasen  <maclas@gmx.de>
1558
1559         * gtk/gtkbutton.c (gtk_button_construct_child): Don't let
1560         the priv->image pointer dangle.  (#136259, Padraig O'Briain)
1561
1562 2004-03-05  Federico Mena Quintero  <federico@ximian.com>
1563
1564         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserIface): Add
1565         gboolean return values and GError arguments to
1566         ::set_current_folder() and ::select_path().
1567
1568         * gtk/gtkfilechooser.c (gtk_file_chooser_set_current_folder):
1569         Return a boolean value for success/failure.
1570         (gtk_file_chooser_set_current_folder_uri): Likewise.
1571         (gtk_file_chooser_select_filename): Likewise.
1572         (gtk_file_chooser_select_uri): Likewise.
1573         (gtk_file_chooser_set_filename): Likewise.
1574         (gtk_file_chooser_set_uri): Likewise.
1575         (_gtk_file_chooser_set_current_folder_path): Likewise, plus take
1576         in a GError.
1577         (_gtk_file_chooser_select_path): Likewise.
1578
1579         * gtk/gtkfilechooserutils.c (delegate_set_current_folder):
1580         Likewise.
1581         (delegate_select_path): Likewise.
1582
1583         * gtk/gtkfilechooserdefault.c
1584         (gtk_file_chooser_default_select_path): Likewise.
1585         (gtk_file_chooser_default_set_current_folder): Likewise; this also
1586         fixes #136024.
1587         (error_changing_folder_dialog): New helper function.
1588         (change_folder_and_display_error): New helper function.
1589         (switch_to_selected_folder): Use change_folder_and_display_error().
1590         (tree_selection_changed): Likewise.
1591         (shortcuts_activate_volume): Likewise.
1592         (shortcuts_activate_item): Likewise.
1593         (list_row_activated): Likewise.
1594         (path_bar_clicked): Likewise.
1595         (update_from_entry): Likewise.
1596         (up_folder_handler): Likewise.
1597         (home_folder_handler): Get the home path from the shortcuts model,
1598         and use change_folder_and_display_error().
1599
1600         * tests/testfilechooser.c (set_current_folder): New helper
1601         function; pops up a simple error dialog if necessary.
1602         (set_filename): Likewise.
1603         (set_folder_nonexistent_cb): Use set_current_folder().
1604         (set_folder_existing_nonexistent_cb): Likewise.
1605         (set_filename_nonexistent_cb): Use set_filename().
1606         (set_filename_existing_nonexistent_cb): Likewise.
1607
1608 Fri Mar  5 11:17:35 2004  Owen Taylor  <otaylor@redhat.com>
1609
1610         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): 
1611         Improve the docs (reported by Vitaly Tishkov, 
1612         #74362) Add some comments to the code about the 
1613         row reference handling that are hopefully not entirely
1614         wrong.
1615
1616 2004-03-05  Michael Natterer  <mitch@gimp.org>
1617
1618         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_show_all):
1619         s/object/widget/. Makes it compile again.
1620
1621 Fri Mar  5 03:37:14 2004  Jonathan Blandford  <jrb@gnome.org>
1622
1623         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_show_all):
1624         chain to the extra_widget.
1625
1626 Fri Mar  5 02:53:41 2004  Jonathan Blandford  <jrb@gnome.org>
1627
1628         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
1629         Patch from Damon Chaplin to free models when we're finalized,
1630         #134053
1631
1632 2004-03-05  Alexander Larsson  <alexl@redhat.com>
1633
1634         * gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path):
1635         Document the fact that there might not be a volume for all
1636         paths.
1637
1638         * gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder):
1639         Don't assume there is a volume for all paths.
1640
1641 Fri Mar  5 01:45:04 2004  Jonathan Blandford  <jrb@gnome.org>
1642
1643         * gtk/gtkfilechooserdefault.c (shortcuts_append_paths): insert in
1644         the correct place instead of naïvely appending.
1645         (shortcuts_add_volumes): refilter the model
1646         (shortcuts_add_bookmarks): refilter the model
1647         (gtk_file_chooser_default_add_shortcut_folder): refilter the model
1648
1649 2004-03-04  Federico Mena Quintero  <federico@ximian.com>
1650
1651         * gtk/gtkfilechooserdialog.c (response_cb):  New handler.  Ask the
1652         GtkFileChooser widget if it wants to do something special rather
1653         than letting us terminate the dialog.
1654         (gtk_file_chooser_dialog_init): Connect to "response"; see the
1655         comment in the sources to see why we don't override the method in
1656         class_init.
1657
1658         * gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
1659         Added a ::should_respond() method.
1660
1661         * gtk/gtkfilechooserembed.c
1662         (_gtk_file_chooser_embed_delegate_iface_init): Add a delegate for ::should_respond().
1663         (delegate_should_respond): New delegate.
1664         (_gtk_file_chooser_embed_should_respond): New function.
1665
1666         * gtk/gtkfilechooserdefault.c (set_list_model, create_file_list):
1667         Use dashes in signal names rather than underscores.
1668         (gtk_file_chooser_default_init): Hook up our ::should_respond() implementation.
1669         (gtk_file_chooser_default_should_respond): Implement.  go into a
1670         folder rather than responding if we are in File mode and the
1671         selected file is a folder.
1672         (get_selection): New helper function.
1673         (add_bookmark_button_clicked_cb): Use get_selection().
1674         (bookmarks_check_add_sensitivity): Likewise.
1675         (gtk_file_chooser_default_get_paths): Likewise.
1676         (check_save_entry): New helper function.
1677         (gtk_file_chooser_default_get_paths): Use check_save_entry().
1678         (selection_check): Renamed from selection_is_folders().  Now
1679         checks whether the selection is empty, all files, all folders.
1680         (bookmarks_check_add_sensitivity): Use selection_check().
1681
1682 Fri Mar  5 00:05:59 2004  Matthias Clasen  <maclas@gmx.de>
1683
1684         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): 
1685         * gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Connect to 
1686         key_press_event and handle Alt-Down/Alt-Up to show or hide the
1687         list popup. Also handle Down/Up/PageDown/PageUp/Home/End and 
1688         make them change the active item without popping up the list.
1689         These keybindings are inherited from GtkCombo. 
1690
1691 Thu Mar  4 23:15:58 2004  Matthias Clasen  <maclas@gmx.de>
1692
1693         * gtk/gtkcombobox.c (gtk_combo_box_menu_position): Initially 
1694         select the active item when using optionmenu-like positioning. 
1695
1696 Thu Mar  4 16:54:30 2004  Owen Taylor  <otaylor@redhat.com>
1697
1698         * gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Don't
1699         open/close the file, just check for existence
1700         with g_file_test(). This is considerably cheaper,
1701         and lack-of-permissions for pixmap dirs is 
1702         pathological.
1703
1704 Wed Mar  3 17:53:21 2004  Owen Taylor  <otaylor@redhat.com>
1705
1706         * gtk/gtksocket.c (gtk_socket_class_init): Overide
1707         show_all/hide_all to be gtk_widget_show/gtk_widget_hide,
1708         since we don't want to propagate to the in-process
1709         plug, if any. (#122949, Michael Meeks)
1710
1711 Thu Mar  4 15:20:55 2004  Jonathan Blandford  <jrb@gnome.org>
1712
1713         * gtk/gtkfilechooserdefault.c (update_appearance): show the 'New
1714         Folder' button in SAVE mode again.
1715
1716 Thu Mar  4 21:53:46 2004  Matthias Clasen  <maclas@gmx.de>
1717
1718         * gtk/gtkiconfactory.c (copy_cache): Increment the reference
1719         count of the style when copying the cached icon.  (#135890, Crispin
1720         Flowerday)
1721
1722 Thu Mar  4 21:45:43 2004  Matthias Clasen  <maclas@gmx.de>
1723
1724         * gtk/gtkcombobox.c: In list mode, set the background color 
1725         of the cell view to the base color of the style, instead of
1726         hardwiring white. (#136158)
1727
1728 Thu Mar  4 01:32:19 2004  Jonathan Blandford  <jrb@gnome.org>
1729
1730         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Modified patch from
1731         muppet <scott@asofyet.org> to keep child directories around if we
1732         change to a child.
1733
1734         * gtk/gtkpathbar.c (_gtk_path_bar_set_home_icon): Start of
1735         icon-setting functions.  Not used yet.
1736         (_gtk_path_bar_set_root_icon): Ditto.
1737         
1738 Thu Mar  4 00:31:54 2004  Matthias Clasen  <maclas@gmx.de>
1739
1740         * gtk/gtktextview.c (extend_selection): 
1741         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Allow
1742         to select the last word in the buffer.  (#135487, Paolo Borelli)
1743
1744 Wed Mar  3 23:54:31 2004  Matthias Clasen  <maclas@gmx.de>
1745
1746         * gtk/gtkentrycompletion.c: Doc update.
1747
1748 Wed Mar  3 17:30:18 2004  Owen Taylor  <otaylor@redhat.com>
1749
1750         * gtk/gtkwindow.c (gtk_window_mnemonic_activate): Check
1751         whether widgets are viewable, not just if they are
1752         mapped. (#122912, reported by Tim Evans)
1753
1754 Wed Mar  3 23:28:48 2004  Matthias Clasen  <maclas@gmx.de>
1755
1756         * gtk/gtkcombobox.c (gtk_combo_box_set_active): Move the actual
1757         implementation into a new gtk_combo_box_set_active_internal() 
1758         function, which doesn't do the short-circuiting. 
1759         * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted): Use
1760         set_active_internal() here, since the active item may change here,
1761         although the index is unchanged.
1762
1763 Wed Mar  3 23:26:49 2004  Matthias Clasen  <maclas@gmx.de>
1764
1765         * gtk/gtkcombobox.c (gtk_combo_box_menu_position): Reintroduce the
1766         traditional option menu placement of the popup for regular combo
1767         boxes. Grids and editable combo boxes use the combo-like placement 
1768         below the entry.  (#136021)
1769         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): 
1770         * gtk/gtkcombobox.c (gtk_combo_box_popup): Call gtk_menu_set_active()
1771         before popping up the menu, to make the placement work.
1772         
1773 Wed Mar  3 17:20:15 2004  Owen Taylor  <otaylor@redhat.com>
1774
1775         * gtk/gtkmain.c (gtk_propagate_event): Special case
1776         scroll events so that they propagate up the widget
1777         heirarchy when received on insensitive widgets.
1778         (#101102, reported by Geoff Reedy)
1779
1780 Wed Mar  3 16:47:10 2004  Owen Taylor  <otaylor@redhat.com>
1781
1782          #109594, reported by Olivier Ripoll
1783
1784         * gtk/gtkentry.c (gtk_entry_size_request): Use max of 
1785         width and digit width for gtk_entry_set_width_chars,
1786         and round up.
1787
1788         * gtk/gtkcolorsel.c (gtk_color_selection_init): Set the
1789         width of the entry to 7 chars.
1790
1791 Wed Mar  3 16:00:10 2004  Owen Taylor  <otaylor@redhat.com>
1792
1793         * configure.in: Strip out the "export-dynamic" libtool
1794         option from library link lines. (#124687, James Henstridge)
1795
1796 Wed Mar  3 16:06:03 2004  Jonathan Blandford  <jrb@gnome.org>
1797
1798         * gtk/gtkfilechooserdefault.c (save_folder_combo_changed_cb):
1799         Don't activate the combo if we're in the midst of changing
1800         folders.
1801
1802 2004-03-03  Mark McLoughlin  <mark@skynet.ie>
1803
1804         * tests/testsocket_common.c: (print_hello): don't try and store
1805         pointers in ints. Fixes 64-bit build.
1806
1807 2004-03-03  Federico Mena Quintero  <federico@ximian.com>
1808
1809         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Simplify by
1810         not using a temporary variable, and clarify the documentation.
1811         Fixes #136008.
1812
1813 2004-03-03  Mark McLoughlin  <mark@skynet.ie>
1814
1815         * gtk/gtkexpander.c:
1816         (gtk_expander_enter_notify), (gtk_expander_leave_notify),
1817         (gtk_expander_set_label_widget): Set the label widget's
1818         state to prelight if we're prelit. Fixes bug #136078.
1819
1820 2004-03-03  Murray Cumming  <murrayc@murrayc.com>
1821
1822         * gtk/gtkradiobutton.h, radiomenuitem.h: Corrected the group_changed
1823         signal vfunc declaration, adding the first parameter, which is the
1824         widget emitting the signal.
1825
1826 2004-03-03  Morten Welinder  <terra@gnome.org>
1827
1828         * tests/testfilechooser.c (update_preview_cb): Plug leak.
1829
1830 Tue Mar  2 23:39:55 2004  Jonathan Blandford  <jrb@gnome.org>
1831
1832         * gtk/gtkfilechooserdialog.c
1833         (file_chooser_widget_default_realized_size_changed): Split
1834         function into realized and unrealized variants, and consolidate
1835         the handling fo size-changing and default changing.
1836
1837         * gtk/gtkfilechooserembed.[ch] (gtk_file_chooser_embed_class_init):
1838         remove resizable-hints-changed, as it just complicated things.
1839
1840         * gtk/gtkfilechooserdefault.c (update_appearance): Don't emit
1841         resizable-hints-changed.
1842         
1843 2004-03-03  Tor Lillqvist  <tml@iki.fi>
1844
1845         * gtk/gtk.def: Add a missing entry. (#135982, J. Ali Harlow)
1846
1847         * NEWS: Correct spelling of my name in one place.
1848
1849 2004-03-02  Federico Mena Quintero  <federico@ximian.com>
1850
1851         * gtk/gtkfilechooserdefault.c
1852         (gtk_file_chooser_default_set_current_folder): Handle errors in
1853         setting the path bar's path.  Fixes #136000, based on a patch by
1854         Morten Welinder.
1855
1856         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
1857         Don't free our own propagated error.
1858
1859         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Likewise, and free the
1860         parent_path upon error.  Fixes #136006, patch by Morten Welinder.
1861         (gtk_path_bar_set_path): Unref the file_folder upon error.
1862         (gtk_path_bar_set_path): Return a boolean success code.
1863
1864 Wed Mar  3 00:28:59 2004  Matthias Clasen  <maclas@gmx.de>
1865
1866         * tests/testcombochange.c: Add an animation mode, to test 
1867         how the combobox behaves if the model changes while it is popped
1868         up.
1869
1870 Tue Mar  2 17:06:05 2004  Owen Taylor  <otaylor@redhat.com>
1871
1872         * === Released 2.3.5 ===
1873
1874         * NEWS: Updates
1875
1876         * configure.in: Version 2.3.5, interface age 0.
1877         Require glib-2.3.5, pango-1.3.5.
1878
1879 Tue Mar  2 23:08:12 2004  Matthias Clasen  <maclas@gmx.de>
1880
1881         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Avoid
1882         popping up the completions across the edge of the monitor.
1883         Part of #135561.
1884
1885 Tue Mar  2 16:47:40 2004  Owen Taylor  <otaylor@redhat.com>
1886
1887         * tests/testfilechooser.c (set_filename_existing_nonexistent_cb): 
1888         Move the /nonexistant stuff out of the main window,
1889         keep the main window somewhat normal looking.
1890
1891 Tue Mar  2 16:18:43 2004  Owen Taylor  <otaylor@redhat.com>
1892
1893         * gtk/gtktreestore.c (gtk_tree_store_reorder)
1894         * gtk/gtkliststore.c (gtk_list_store_reorder): Fix
1895         up the interpretation of new_order to match what
1896         it means elsewhere, document the meaning of new_order.
1897
1898         * gtk/gtkcombobox.c (gtk_combo_box_model_rows_reordered):
1899         Fix interpretation of new_order.
1900
1901         * tests/testcombochange.c (on_reorder): Fix interpretation
1902         of new_order.
1903
1904         * tests/testcombochange.c (on_reorder): Fix hitting
1905         "reorder" with an empty list.
1906
1907 Tue Mar  2 21:23:30 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1908
1909         Patch from Frederic Crozat, test code from Jean-Philippe
1910         Chancelier. Fixes bug #120479.
1911         
1912         * gtk/gtkcombo.c (gtk_combo_popup_list): Make sure popup belongs
1913         to the right window group.
1914
1915         * gtk/gtkmenu.c (gtk_menu_popup): Same
1916
1917         * tests/testsocket.c (main): Pack the plugs into an hbox instead
1918         of a vbox.
1919
1920         * tests/testsocket_common.c: Add a GtkMenuBar, a GtkCombo and a
1921         GtkComboBox to the children.
1922
1923 Tue Mar  2 14:38:23 2004  Owen Taylor  <otaylor@redhat.com>
1924
1925         * gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
1926         If the model was empty before, select the first inserted
1927         item.
1928
1929         * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted):
1930         Fix up the logic for the new row to select.
1931
1932         * gtk/gtkcombobox.c (gtk_combo_box_class_init):
1933         Rename "appearance" property to "appears-as-list".
1934
1935         * tests/testcombochange.c tests/Makefile.am: Test case
1936         for combos and dynamically changing models.
1937
1938 Tue Mar  2 15:19:52 2004  Jonathan Blandford  <jrb@redhat.com>
1939
1940         * gtk/gtkfilechooserdefault.c
1941         (gtk_file_chooser_default_get_resizable_hints): set the default
1942         value, spotted by Morten Welinder.
1943
1944 Tue Mar  2 15:03:15 2004  Jonathan Blandford  <jrb@redhat.com>
1945
1946         * gtk/gtkfilechooserdefault.c
1947         (gtk_file_chooser_default_get_resizable_hints): get the logic
1948         correct.  This will fix sizing on save dialogs.
1949
1950         (save_widgets_create): set_mnemonic_widget.
1951
1952 2004-03-02  Federico Mena Quintero  <federico@ximian.com>
1953
1954         * gtk/gtkfilechooserdefault.c
1955         (gtk_file_chooser_default_set_current_folder): Don't update the
1956         save folder combo if we are already switching folders; based on a
1957         patch by Jonathan Blandford.
1958
1959         * gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder):
1960         Handle failure to insert the path.  Based on a patch by Morten
1961         Welinder attached to bug #135380.
1962
1963         * tests/testfilechooser.c (extra_widget_create): Add a bunch of
1964         buttons to test various things.
1965
1966 Tue Mar  2 20:59:23 2004  Matthias Clasen  <maclas@gmx.de>
1967
1968         * tests/Makefile.am: Add testentrycompletion.
1969
1970         * tests/testentrycompletion.c: New file to test some of the
1971         more exotic GtkEntryCompletion features.
1972
1973 Tue Mar  2 14:38:10 2004  Jonathan Blandford  <jrb@redhat.com>
1974
1975         * tests/testfilechooser.c (main): improve tests a little.
1976
1977 Tue Mar  2 11:45:50 2004  Owen Taylor  <otaylor@redhat.com>
1978
1979         * gtk/gtkcombobox.c: Always connect to the changed
1980         signals on the model, update the active item as
1981         appropriate when rows are inserted/deleted/reordered,
1982         re-layout the menu on ::rows-reordered.
1983
1984         * gtk/gtkcellview.c (gtk_cell_view_set_displayed_row):
1985         Allow %NULL for path to unset and leave no current
1986         path.
1987
1988 Tue Mar  2 19:54:53 2004  Matthias Clasen  <maclas@gmx.de>
1989
1990         * gtk/gtkcombobox.c (gtk_combo_box_list_position): Position
1991         the popup above the sample if there is not enough room below.
1992         Part of #135543.
1993
1994 Tue Mar  2 19:53:36 2004  Matthias Clasen  <maclas@gmx.de>
1995
1996         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make the 
1997         frame for the list mode etched in, to give the popup a slightly
1998         less flat appearance. 
1999
2000 Tue Mar  2 17:55:31 2004  Matthias Clasen  <maclas@gmx.de>
2001
2002         * gtk/gtk.def: Add gtk_combo_box_entry_new_text().  
2003
2004 2004-03-02  Morten Welinder  <terra@gnome.org>
2005
2006         * tests/testfilechooser.c (size_prepared_cb): Don't scale images
2007         that are small enough to fit.  Avoid using incompatibly typed data
2008         pointer.
2009
2010         * gtk/gtkfilechooserdefault.c
2011         (gtk_file_chooser_default_get_resizable_hints): Test the
2012         resize_horizontally pointer, not the deferenced pointer.
2013
2014 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
2015
2016         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): New
2017         flag shortcuts_current_folder_is_volume.
2018         (shortcuts_add_current_folder): Set
2019         impl->shortcuts_current_folder_is_volume as appropriate.
2020         (remove_current_folder_cb): Handle the flag.
2021         (shortcuts_activate_item): Likewise.
2022         (shortcuts_update_current_folder): Handle the
2023         impl->shortcuts_current_folder_active flag; only add the folder if
2024         it doesn't already exist in the list.
2025         (shortcuts_model_create): Don't insert the current folder
2026         separator here.
2027         (shortcuts_add_current_folder): Insert the separator here.
2028         (shortcut_find_position): Renamed from shortcut_exists(); now
2029         returns an index.
2030         (shortcuts_add_current_folder): Set the active item in the combo.
2031
2032 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
2033
2034         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Eep,
2035         use gtk_tree_model_filter_convert_iter_to_child_iter(), not the reverse.
2036
2037 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
2038
2039         * gtk/gtkfilechooserdefault.c (shortcuts_model_create): Don't
2040         unref an old model; there isn't one.  This was a leftover from
2041         when we recreated the model on every change.
2042         (save_widgets_create): Create the save folder combo.
2043         (shortcuts_model_create): Don't set the model on the tree view
2044         here.
2045         (gtk_file_chooser_default_constructor): Create the shortcuts model
2046         here, before the rest of the widgets.
2047         (shortcuts_list_create): Don't call shortcuts_model_create() here;
2048         just set the model on the tree.
2049         (save_folder_combo_create): New function, provided by Jonathan
2050         Blandford.
2051         (update_appearance): Set the sensitivity of the folder combo.
2052         (shortcuts_activate_iter): New helper function; code moved from
2053         shortcuts_row_activated_cb().
2054         (shortcuts_activate_item): New helper function.
2055         (shortcuts_row_activated_cb): Use shortcuts_activate_iter().
2056         (ShortcutsIndex): Renamed SHORTCUTS_SEPARATOR to
2057         SHORTCUTS_BOOKMARKS_SEPARATOR.
2058         (struct _GtkFileChooserDefault): New field shortcuts_current_folder_active.
2059         (shortcuts_insert_separator): Add a position argument.
2060         (shortcuts_get_index): Handle the SHORTCUTS_CURRENT_FOLDER_SEPARATOR 
2061         and SHORTCUTS_CURRENT_FOLDER positions.
2062         (shortcut_exists): Ignore the current folder row.
2063         (struct _GtkFileChooserDefault): New field shortcuts_filter_model.
2064         (shortcuts_model_create): Create a filter model for the shortcuts list.
2065         (shortcuts_list_create): Set the model to the shortcuts_filter_model.
2066         (remove_bookmark_button_clicked_cb): Use the shortcuts_filter_model.
2067         (bookmarks_check_remove_sensitivity): Likewise.
2068         (shortcuts_row_activated_cb): Likewise.
2069         (gtk_file_chooser_default_set_current_folder): New function.
2070         (gtk_file_chooser_default_set_current_folder): Update the current
2071         folder row in the shortcuts list.
2072
2073         * gtk/gtkfilechooserwidget.c
2074         (gtk_file_chooser_widget_constructor): Cast correctly for
2075         _gtk_file_chooser_embed_set_delegate().
2076
2077 Mon Mar  1 19:30:25 2004  Owen Taylor  <otaylor@redhat.com>
2078
2079         * gtk/gtkdnd.[ch]: Add gtk_drag_source_set/get_target_list().
2080         (#127499, based on patch from Michael Natterer)
2081
2082         * tests/testgtk.c: Fix bidi strings to display correctly
2083         with new auto-bidi.
2084
2085 Tue Mar  2 01:34:40 2004  Matthias Clasen  <maclas@gmx.de>
2086
2087         * gtk/gtksettings.c: Remove the include of Xft.h, which is already
2088         dragged in via pangoxft.h.  (#135496, David Hawthorne)
2089
2090 Mon Mar  1 23:52:15 2004  Tim Janik  <timj@gtk.org>
2091
2092         * gtk/gtkbindings.[hc]: expose gtk_bindings_activate_event(), changed
2093         callers.
2094
2095         * gtk/gtkwindow.[hc]: added gtk_window_propagate_key_event() to expose
2096         the key event propagation mechanism used for focus widgets.
2097         (gtk_window_key_release_event): use the same key event propagation logic
2098         as gtk_window_key_press_event().
2099
2100 2004-03-01  Simon Budig  <simon@gimp.org>
2101
2102         * gdk/x11/gdkinput-x11.c: X11 R6.4 specifies 15 events
2103         for the XInput extension. We want to see them all.
2104         We now get Proximity Out events again. Fixes bug #135320.
2105
2106 Tue Mar  2 00:47:21 2004  Matthias Clasen  <maclas@gmx.de>
2107
2108         * gtk/gtkimmodule.c (match_locale): Use case-insensitive
2109         comparison. Fixes XIM module loading on AIX.  (#131277)
2110
2111 Mon Mar  1 23:59:18 2004  Matthias Clasen  <maclas@gmx.de>
2112
2113         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): 
2114         Make it work correctly when the child model is cleared 
2115         completely. (#121633)
2116
2117 2004-03-01  Michael Natterer  <mitch@gimp.org>
2118
2119         * gtk/gtkfilechooserwidget.h: removed accidentially committed char
2120         which broke the build.
2121
2122 Mon Mar  1 16:51:21 2004  Jonathan Blandford  <jrb@redhat.com>
2123
2124         * gtk/gtkfilechooserdialog.c
2125         (file_chooser_widget_default_size_changed): only store the size if
2126         we can resize in that direction.
2127
2128 Mon Mar  1 16:32:52 2004  Jonathan Blandford  <jrb@redhat.com>
2129
2130         * gtk/gtkfilechooserwidget.c
2131         (gtk_file_chooser_widget_new_with_backend): new function.  Long
2132         name.
2133
2134 2004-03-01  Morten Welinder  <terra@gnome.org>
2135
2136         * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
2137         needed.
2138
2139         * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
2140         semantics and check for errors.
2141
2142         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Propagate errors.
2143
2144         * gtk/gtkfilefilter.c (gtk_file_filter_filter): Don't crash if
2145         display_name is NULL.
2146
2147 Mon Mar  1 14:16:52 2004  Owen Taylor  <otaylor@redhat.com>
2148
2149         Based on patch by Alex Larsson
2150
2151         * gtk/gtkfilechooserdefault.c: Use gtk-file-chooser-backend
2152         GtkSetting to set the backend if the app doesn't specify one.
2153
2154         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c:
2155         Add Gtk/FileChooserBackend.
2156
2157 Mon Mar  1 20:32:06 2004  Tim Janik  <timj@gtk.org>
2158
2159         * autogen.sh:
2160         - exit with $? instead of 1 in case of failure
2161         - exit with $? if ./configure failed
2162           (that's so autogen.sh && make lines work)
2163         - removed --enable-gtk-doc option
2164         - added $AUTOGEN_CONFIGURE_ARGS
2165
2166 2004-03-01  Federico Mena Quintero  <federico@ximian.com>
2167
2168         * gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for
2169         filter_info.uri correctly.  Fixes #135379, pointed out by Damon
2170         Chaplin.
2171         (shortcuts_get_index): Compute the bookmarks index correctly.
2172         Fixes #135714, pointed out by Damon Chaplin.
2173         (gtk_file_chooser_default_list_shortcut_folders): Handle the case
2174         with no shortcuts, and don't run off the end of the list if there
2175         are no bookmarks and their separator.  Fixes #135572, patch by
2176         Damon Chaplin.
2177
2178 Mon Mar  1 12:23:06 2004  Owen Taylor  <otaylor@redhat.com>
2179
2180         * gtk/gtklabel.c: Handle dynamically resolved bidi direction
2181         when drawing the cursor. (#118541)
2182
2183         * gtk/gtkentry.c (get_better_cursor_x): Use entry->resolved_dir;
2184
2185         * gtk/gtkentry.c (draw_insertion_cursor): Fix up
2186         some confusion in parameter ordering.
2187
2188 Mon Mar  1 12:05:54 2004  Jonathan Blandford  <jrb@redhat.com>
2189
2190         * gtk/gtkfilechooserdialog.c
2191         (file_chooser_widget_resizable_hints_changed): Handle
2192         shrinking/growing.
2193
2194 2004-03-01  Michael Natterer  <mitch@gimp.org>
2195
2196         * gtk/gtktextbtree.c: removed underscores from calls to
2197         gtk_text_btree_resolve_bidi().
2198
2199 Mon Mar  1 10:41:27 2004  Owen Taylor  <otaylor@redhat.com>
2200
2201         Patch from Dov Grobgeld to implement auto-bidi-direction
2202         for GtkTextView (#118543)
2203
2204         * gtk/gtktextbtree.[ch]: Resolve bidi base direction
2205         for each line by propagating backwards/forwards as
2206         necessary.
2207
2208         * gtk/gtktextlayout.[ch] gtk/gtktextview.c: Set the 
2209         bidi base direction for the ;ine with the cursor from 
2210         the keyboard direction. Add gtk_text_layout_set_keyboard_direction().
2211         
2212 Mon Mar  1 10:31:11 2004  Owen Taylor  <otaylor@redhat.com>
2213
2214         * gtk/gtkentry.[ch]: Implement auto-bidi-direction,
2215         based on a patch from Dov Grobgeld. (#118540)
2216
2217 Sun Feb 29 22:01:49 2004  Owen Taylor  <otaylor@redhat.com>
2218
2219         * gtk/gtkentry.[ch]: Add gtk_entry_set_alignment() 
2220         to allow right-aligned entries and a "xalign" 
2221         property. (#59799, patch from Egon Andersen and 
2222         Steffen Gutmann)
2223
2224         * gtk/gtkmisc.c (gtk_misc_class_init): Use improved
2225         xalign property description here too.
2226
2227         * tests/testtext.c: UNDERLINE_ERROR test addition
2228         from Nicolas Settons' patch.
2229
2230 Sun Feb 29 20:34:06 2004  Owen Taylor  <otaylor@redhat.com>
2231
2232         * gtk/gtkwindow.[ch] gtk/gtkmenushell.c: export
2233         gtk_window_activate_key() (Request from Tim Janik)
2234
2235 Mon Mar  1 01:00:11 2004  Matthias Clasen  <maclas@gmx.de>
2236
2237         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
2238         Make DND operations within a buffer move the dragged 
2239         text instead of copying it; also make DND operations 
2240         a single user action for undo purposes.  (#135191, 
2241         #93139, reported by Tommi Komulainen, patch by Paolo Borelli
2242         and Paolo Maggi)
2243
2244 Mon Mar  1 00:51:11 2004  Matthias Clasen  <maclas@gmx.de>
2245
2246         * NEWS: News for 2.3.5.
2247
2248 Sun Feb 29 23:25:35 2004  Matthias Clasen  <maclas@gmx.de>
2249
2250         * gtk/gtkentry.c (gtk_entry_completion_key_press): 
2251         Fix the Shift-Tab support to go backwards.
2252
2253 Sun Feb 29 16:40:40 2004  Owen Taylor  <otaylor@redhat.com>
2254
2255         * gtk/gtktextview.c (gtk_text_view_class_init): Fix 
2256         capitalization to match other style properties.
2257
2258 Sun Feb 29 16:38:53 2004  Owen Taylor  <otaylor@redhat.com>
2259
2260         * gtk/gtktextview.c (gtk_text_view_class_init): Fix a
2261         typo in property string.
2262
2263 Sun Feb 29 16:35:23 2004  Owen Taylor  <otaylor@redhat.com>
2264
2265         * gdk/gdkpango.c gtk/gtktextdisplay.c: Implement
2266         PANGO_UNDERLINE_ERROR (Based on a patch by
2267         Nicolas Setton, #114237)
2268
2269         * gtk/gtktextview.c: Add a error-underline-color style
2270         property.
2271
2272 Sun Feb 29 19:04:33 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2273
2274         * gtk/gtkrange.c (_gtk_range_get_wheel_delta): New internal
2275         function returning a good step value for the mouse wheel. For
2276         scrollbars, base the step on page_size^(2/3), for other ranges,
2277         use 2 * step_increment.
2278
2279         * gtk/gtkrange.c (gtk_range_scroll_event): Use it here ...
2280
2281         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): 
2282         ... and here.
2283
2284         * gtk/gtkmenu.c (gtk_menu_leave_notify): Fix a warning.
2285
2286 Sun Feb 29 01:51:27 2004  Jonathan Blandford  <jrb@gnome.org>
2287
2288         * gtk/gtkfilechooserembed.c
2289         (_gtk_file_chooser_embed_get_default_size):  Add g_return_if_fail()
2290         (_gtk_file_chooser_embed_get_resizable_hints): Add g_return_if_fail()
2291
2292         * gtk/gtkfilechooserdialog.c
2293         (file_chooser_widget_default_size_changed): Get the correct
2294         initial size for the dialog.  Also, don't bother with
2295         gtk_window_set_default_size().  It's not really meaningful.
2296
2297         * gtk/gtkfilechooserdefault.c
2298         (gtk_file_chooser_default_get_default_size): Get the correct
2299         spacing for the preview_widget
2300         (update_preview_widget_visibility): Clear widget field after we
2301         destroy it.
2302
2303 2004-02-29  Federico Mena Quintero  <federico@ximian.com>
2304
2305         * gtk/gtkfilechooserdefault.c
2306         (gtk_file_chooser_default_set_property): Handle
2307         GTK_FILE_CHOOSER_PROP_USE_PREVIEW_LABEL.
2308         (gtk_file_chooser_default_get_property): Likewise.
2309         (struct _GtkFileChooserDefault): Added fields for preview_label,
2310         use_preview_label, preview_display_name, preview_box.  Removed
2311         preview_frame.
2312         (set_preview_widget): Reorder the widget in relation to the label.
2313         (update_preview_widget_visibility): Create or destroy the preview
2314         label.
2315         (check_preview_change): Update impl->preview_display_name and the
2316         label.
2317         (find_good_size_from_style): Use the preview_box.
2318         (gtk_file_chooser_default_finalize): Free
2319         impl->preview_display_name.
2320         (gtk_file_chooser_default_init): Initialize
2321         impl->use_preview_label.
2322
2323         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add a
2324         "use-preview-label" property.
2325         (gtk_file_chooser_set_use_preview_label): New function.  This sets
2326         whether one wants the file chooser to display a stock label with
2327         the previewed filename.  Apps that do really fancy previews can
2328         turn this off and draw the name themselves.
2329         (gtk_file_chooser_get_use_preview_label): New function.
2330         (gtk_file_chooser_get_preview_widget_active): Documentation fix.
2331
2332         * gtk/gtkfilechooserutils.h (GtkFileChooserProp): Add a
2333         GTK_FILE_CHOOSER_PROP_USE_PREVIEW_LABEL value.
2334
2335         * gtk/gtkfilechooserutils.c
2336         (_gtk_file_chooser_install_properties): Override the
2337         "use-preview-label" property.
2338
2339 Sun Feb 29 04:43:29 2004  Matthias Clasen  <maclas@gmx.de>
2340
2341         * gtk/gtkentry.c (gtk_entry_completion_key_press): Make Tab and
2342         Shift-Tab work when the completion popup is shown.
2343
2344 2004-02-28  Federico Mena Quintero  <federico@ximian.com>
2345
2346         * gtk/gtkfilechooserdefault.c (create_folder_tree): Use "Name" for
2347         the title of the filename column.
2348         (create_file_list): Likewise.
2349
2350 Sun Feb 29 03:31:42 2004  Matthias Clasen  <maclas@gmx.de>
2351
2352         * gtk/gtkentry.c (gtk_entry_completion_key_press): Fix Page_Up 
2353         and Page_Down in the completion popup to move page-wise if we're
2354         scrolling.
2355
2356 2004-02-28  Federico Mena Quintero  <federico@ximian.com>
2357
2358         * gtk/gtkfilechooserdefault.c (set_cell_text_bold_if_folder):
2359         Removed.
2360         (list_name_data_func): Don't call the function above.
2361         (list_mtime_data_func): Likewise.
2362
2363 Sun Feb 29 02:34:35 2004  Matthias Clasen  <maclas@gmx.de>
2364
2365         * gtk/gtkcombobox.c (gtk_combo_box_list_position): New 
2366         function which calculates position and size for the popup in
2367         list mode. Currently it only pushes the popup horizontally 
2368         into the screen.
2369
2370 Sun Feb 29 01:10:09 2004  Matthias Clasen  <maclas@gmx.de>
2371
2372         * gtk/gtkcombobox.c: Implement the previous fix in a better way,
2373         small cleanups.
2374
2375 2004-02-28  Hans Breuer  <hans@breuer.org>
2376
2377         * gtk/gtkfilesystemwin32.c : applied patch from
2378         J. Ali Harlow <ali@juiblex.co.uk>, fixes bug #135641
2379
2380 Sat Feb 28 23:30:36 2004  Matthias Clasen  <maclas@gmx.de>
2381
2382         * gtk/gtkcombobox.c (gtk_combo_box_popup): Actually resize the
2383         popup window before popping up.  (#135651)
2384
2385 Sat Feb 28 23:29:35 2004  Matthias Clasen  <maclas@gmx.de>
2386
2387         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
2388         * gtk/gtkcombobox.c (gtk_combo_box_init): Override the default
2389         handler for style_set in class_init instead of connecting to
2390         the signal in init. (noticed by Yosh).
2391
2392 Sat Feb 28 14:48:35 2004  Owen Taylor  <otaylor@redhat.com>
2393
2394         * demos/gtk-demo/main.c (read_line): #ifdef HAVE_FLOCKFILE, 
2395         not #ifndef HAVE_FLOCKFILE. (#135642, J. Ali Harlow)
2396
2397 2004-02-28  Hans Breuer  <hans@breuer.org>
2398
2399         * gtk/gtkfilesystemwin32.c : adapt to add -> insert_bookmark
2400         change. Also merged some crossplatform code from 
2401         gtkfilesystemunix.c
2402         * gtk/gtk.def : updated externals
2403
2404         * gtk/makefile.msc.in : added gtkfilechooserembed.obj
2405
2406 2004-02-28  Hans Breuer  <hans@breuer.org>
2407
2408         * gdk/win32/gdkdnd-win32.c : set current_dest_drag to NULL
2409         when destroying, fixes bug #120007. Also removed the mirrored
2410         ref counting for deprecated gdk_drag_context_<ref|unref>()
2411         cause it wasn't reliable anymore anyway.
2412
2413         * gdk/win32/gdkdisplay-win32.c : fix typo, which should
2414         have broken the win32 build for everyone not using msvc
2415
2416         * gdk/win32/gdkevents-win32.c : WM_GETMINAMXINFO ensure not to
2417         return negative values for ptMaxTrackSize, it caused snapping
2418         windows to their minimum size
2419
2420 Sat Feb 28 01:39:01 2004  Matthias Clasen  <maclas@gmx.de>
2421
2422         * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Support
2423         switching back to non-gridded mode.  (#135169)
2424
2425 Fri Feb 27 22:29:46 2004  Matthias Clasen  <maclas@gmx.de>
2426
2427         * gtk/gtkwidget.c (gtk_widget_can_activate_accel): Add "Since: 2.4".
2428
2429 Fri Feb 27 18:52:19 2004  Jonathan Blandford  <jrb@redhat.com>
2430
2431         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_style_set):
2432         Whoops.  Didn't mean to commit the size change.
2433
2434 Fri Feb 27 18:46:27 2004  Jonathan Blandford  <jrb@redhat.com>
2435
2436         * gtk/gtkfilechooserembed.h: New private interface to help
2437         negotiate the default size of the widget.  Still a bit buggy, but
2438         better than the old behavior.
2439
2440         * gtk/gtkfilechooserdefault.c: Implement the embed interface.
2441
2442         * gtk/gtkfilechooserwidget.c: Proxy the embed interface.
2443
2444         * gtk/gtkfilechooserdialog.c: Use the embed interface.
2445
2446 2004-02-27  Federico Mena Quintero  <federico@ximian.com>
2447
2448         * gtk/gtkfilesystem.c (gtk_file_system_insert_bookmark): Added a
2449         "position" argument.
2450
2451         * gtk/gtkfilesystem.h (GtkFileSystemError): Added value for 
2452         GTK_FILE_SYSTEM_ERROR_ALREADY_EXISTS.
2453         (struct _GtkFileSystemIface): Added a "position" argument to the
2454         ::insert_bookmark() method.
2455
2456         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
2457         Updated; renamed from gtk_file_system_unix_add_bookmark().  Return
2458         an error if the path already exists in the bookmarks list.
2459         (gtk_file_system_unix_remove_bookmark): Return an error if the
2460         path does not exist in the bookmarks list.
2461
2462         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
2463         For now, use gtk_file_system_insert_bookmark() with -1 for the
2464         position.  DnD will come next.
2465
2466 Fri Feb 27 21:42:28 2004  Matthias Clasen  <maclas@gmx.de>
2467
2468         * gtk/gtkcombobox.c (gtk_combo_box_relayout): 
2469         * gtk/gtkcombobox.c (gtk_combo_box_style_set): Simplify, only 
2470         create a new setup if appearance actually changed.
2471         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear): 
2472         * gtk/gtkcombobox.c (gtk_combo_box_get_cell_info): Make 
2473         these more robust.  (#127623, Damon Chaplin)
2474
2475 Fri Feb 27 15:06:00 2004  Jonathan Blandford  <jrb@redhat.com>
2476
2477         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): remove
2478         folder-mode property.
2479
2480         * gtk/gtkfilechooserutils.c
2481         (_gtk_file_chooser_install_properties): remove FOLDER_MODE property.
2482
2483 Thu Feb 26 17:38:40 2004  Manish Singh  <yosh@gimp.org>
2484
2485         * gtk/gtkcombobox.c: Add function declaration for
2486         gtk_combo_box_list_remove_grabs().
2487
2488 Fri Feb 27 02:33:21 2004  Matthias Clasen  <maclas@gmx.de>
2489
2490         * gtk/gtkentry.c (keyval_is_cursor_move): Classifiy Page Up/Down as
2491         cursor move, but not Home and End.
2492
2493         * gtk/gtkentry.c (gtk_entry_completion_key_press): Lets Page Up/Down
2494         jump to the ends of the list, not Home and End - since we're not 
2495         scrolling yet, a "page" is always the complete list.  (#127430, Marco
2496         Pesenti Gritti)
2497
2498 Fri Feb 27 00:39:11 2004  Matthias Clasen  <maclas@gmx.de>
2499
2500         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): 
2501         * gtk/gtkcombobox.c (gtk_combo_box_menu_destroy): Don't let
2502         the priv pointers dangle.  (#127623, Damon Chaplin)
2503
2504 Thu Feb 26 17:31:34 2004  Manish Singh  <yosh@gimp.org>
2505
2506         * gdk/x11/xsettings-client.c (read_settings): fix ytpo: s/eles/else/
2507
2508 Thu Feb 26 19:53:32 2004  Owen Taylor  <otaylor@redhat.com>
2509
2510         * gdk/x11/xsettings-common.h (xsettings_client_process_event): 
2511         Add xsettings_client_set_grab_func,
2512         Add xsettings_client_set_ungrab_func to the list of renames.
2513
2514 Thu Feb 26 19:48:39 2004  Owen Taylor  <otaylor@redhat.com>
2515
2516         * gdk/x11/xsettings-client.c (read_settings): Fix memory leak
2517         in case of mismatched property type.
2518
2519 Thu Feb 26 18:25:57 2004  Jonathan Blandford  <jrb@gnome.org>
2520
2521         * gtk/gtkfilechooser.h (GtkFileChooserAction): Add two more folder
2522         modes to the enum.
2523
2524         * gtk/gtkfilechooser.c (gtk_file_chooser_set_folder_mode): Remove.
2525         (gtk_file_chooser_get_folder_mode): Remove
2526
2527 Thu Feb 26 17:29:04 2004  Owen Taylor  <otaylor@redhat.com>
2528
2529         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Return
2530         GDK_FILTER_CONTINUE for unhandled message types.
2531
2532         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Allow
2533         multiple filters for the same event type with the standard
2534         "GDK_FILTER_CONTINUE == pretend I wasn't here" semantics.
2535
2536         * gdk/x11/gdkevents-x11.c (gdk_display_add_client_message_filter):
2537         Append to the filter list not prepend, since order now matters.
2538
2539         * gdk/win32/gdkevents-win32.c (gdk_add_client_message_filter): 
2540         Append to the filter list not prepend, since order now matters.
2541         
2542 Thu Feb 26 23:39:07 2004  Matthias Clasen  <maclas@gmx.de>
2543
2544         Fixes for #135333, analysed by Damon Chaplin:
2545         
2546         * gtk/gtkcombobox.c (gtk_combo_box_list_button_pressed): Don't
2547         grab here.
2548         * gtk/gtkcombobox.c (gtk_combo_box_popup): Do the grabs here, 
2549         so that we don't forget to grab when the menu is popped via
2550         keynav.
2551         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Don't
2552         ungrab here.
2553         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Do the ungrabs here.
2554
2555 Thu Feb 26 23:26:00 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2556
2557         * gtk/gtkstatusbar.c (set_grip_cursor): New function. Use resize
2558         cursors for resize grips. (Bug #129621)
2559
2560         * gtk/gtktoolbar.c (gtk_toolbar_get_relief_style): Documentation
2561         fix - patch by Torsten Schoenfeld.
2562
2563         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): don't request
2564         space between the items. (Bug #110775)
2565
2566         * gtk/gtkrc.c (_gtk_rc_init): Provide extra horizontal padding
2567         inside menu items that are inside a menu bar. (Bug #110775)
2568         
2569         * configure.in (HAVE_XCURSOR): Make XCurosr part of GDK_EXTRA_,
2570         not GDK_PACKAGES, to prevent applications from getting linked to
2571         it (Bug #119804)
2572
2573         * gtk/gtkmenubar.c (gtk_menu_bar_size_allocate): Put the vertical
2574         ipadding inside the item. (Bug #61843)
2575
2576 Thu Feb 26 22:56:40 2004  Matthias Clasen  <maclas@gmx.de>
2577
2578         * gtk/gtkwidget.c: Replace gtk_widget_get_mnemonic_widgets() 
2579         by list_mnemonic_widgets() in doc comments as well.
2580
2581 Thu Feb 26 16:36:38 2004  Owen Taylor  <otaylor@redhat.com>
2582
2583         Fixes from Torsten Schoenfeld.
2584
2585         * gtk/gtkwidget.c (gtk_widget_add_mnemonic_label): 
2586         Fix name in doc comment.
2587
2588         * gtk/gtkwidget.h: gtk_widget_list_mnemonic_labels(),
2589         not get_mnemonic_labels.
2590
2591 Thu Feb 26 22:20:44 2004  Matthias Clasen  <maclas@gmx.de>
2592
2593         * gtk/gtkcomboboxentry.h:
2594         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new_text): New
2595         convenience API to construct simple text combos, implemented by
2596         Damon Chaplin.
2597
2598         * tests/testcombo.c: Use gtk_combo_box_entry_new_text.
2599
2600 Thu Feb 26 22:19:29 2004  Matthias Clasen  <maclas@gmx.de>
2601
2602         * gtk/gtkcombobox.c (gtk_combo_box_new_text): Improve the docs.
2603
2604 Thu Feb 26 15:43:43 2004  Owen Taylor  <otaylor@redhat.com>
2605
2606         * gtk/gtkstyle.[ch]: Export insertion cursor drawing functionality
2607         in a simplified form as gtk_draw_insertion_cursor().
2608         (#99031, request from Alex Larsson)
2609
2610         * gtk/gtktextdisplay.c gtk/gtkentry.c gtk/gtklabel.c:
2611         Adapt to new gtk_draw_insertion_cursor().
2612
2613         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init)
2614         gtk/gtkstyle.c (gtk_style_class_init): Add some missed
2615         Since: 2.4.
2616
2617         * gtk/gtkiconfactory.c (icon_size_settings_changed)
2618           gtk/gtkicontheme.c (do_theme_change)
2619           gtk/gtkrc.c (_gtk_rc_context_get_default_font_name)
2620         * gtk/gtksettings.c (gtk_settings_notify):
2621         _gtk_rc_reset_styles => gtk_rc_reset_styles.
2622
2623 Thu Feb 26 21:52:58 2004  Matthias Clasen  <maclas@gmx.de>
2624
2625         Fixes for #127804 and #134722, Damon Chaplin:
2626         
2627         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end): 
2628         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_start): 
2629         Ref and sink the cell renderers here.
2630         
2631         * gtk/gtkcombobox.c (gtk_combo_box_finalize): Unref the cell
2632         renderers here, and free attributes and func_data. 
2633
2634 Thu Feb 26 21:41:38 2004  Matthias Clasen  <maclas@gmx.de>
2635
2636         * gtk/gtkrc.c (gtk_rc_reset_styles): Mark as 2.4 API addition.
2637
2638 Thu Feb 26 14:47:22 2004  Dom Lachowicz <cinamod@hotmail.com>
2639
2640         * gtk/gtk.def: Export gtk_rc_reset_styles()
2641
2642 Thu Feb 26 14:47:22 2004  Owen Taylor  <otaylor@redhat.com>
2643
2644         * gtk/gtkrc.[ch]: Export gtk_rc_reset_styles(). 
2645         (Request from Dom Lachowicz, #123769)
2646
2647 Wed Feb 25 19:11:31 2004  Owen Taylor  <otaylor@redhat.com>
2648
2649         * gtk/gtkradiobutton.[ch] gtk/gtkradiomenuitem.[ch]: Add a
2650         ::group-changed signal emitted when the radio button/menu item 
2651         is moved from one group of radio buttons to another. 
2652         (#79563, based partially on a patch from Padraig O'Briain)
2653
2654 Thu Feb 26 13:23:47 2004  Owen Taylor  <otaylor@redhat.com>
2655
2656         * gdk/x11/gdkwindow-x11.c (set_text_property): Use the right
2657         free() function. (#135511, George Bronnikov)
2658
2659 2004-02-26  Federico Mena Quintero  <federico@ximian.com>
2660
2661         * configure.in: Added a comment to inform translators that they
2662         must add .po files to both po/ and po-properties/ when they add
2663         new languages to ALL_LINGUAS.
2664
2665 Wed Feb 25 15:36:50 2004  Owen Taylor  <otaylor@redhat.com>
2666
2667         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text_for_display):
2668         Call g_convert(), not g_convert() with fallback, since Emacs is
2669         happier if we reject the COMPOUND_TEXT request and it can
2670         then ask for UTF-8. (#114527)
2671
2672         * gtk/gtkselection.c (gtk_selection_data_set_text): When
2673         TEXT is requested, if COMPOUND_TEXT fails, fall back to STRING.
2674
2675 Wed Feb 25 22:35:00 2004  Tomasz KÅ‚oczko <kloczek@pld.org.pl>
2676
2677         * cinfigure.in: After changes in G_DEFINE_TYPE minimal required glib
2678         vesion for build gtk+ is now 2.3.3.
2679
2680 Wed Feb 25 16:00:40 2004  Jonathan Blandford  <jrb@gnome.org>
2681
2682         * gtk/gtkfilechooserdefault.c (update_appearance): move the
2683         expander code.
2684
2685 2004-02-25  Danilo Å egan  <dsegan@gmx.net>
2686
2687         * configure.in (ALL_LINGUAS): po-properties/sr@ije.po added, so
2688         adding back sr@ije.
2689
2690 2004-02-25  Federico Mena Quintero  <federico@ximian.com>
2691
2692         * configure.in (ALL_LINGUAS): Remove sr@ije until po-properties/
2693         is fixed for it.
2694
2695 Wed Feb 25 12:44:49 2004  Owen Taylor  <otaylor@redhat.com>
2696
2697         * gtk/gtkstyle.[ch]: Make realize and unrealize signals. (#73310)
2698
2699 Wed Feb 25 12:21:32 2004  Owen Taylor  <otaylor@redhat.com>
2700
2701         * gtk/gtkwidget.[ch] gtk/gtklabel.c: Patch from
2702         Padraig O'Briain to add gtk_widget_add/remove_mnemonic_label,
2703         gtk_widget_get_mnemonic_labels(). (#103456)
2704
2705 2004-02-25  Danilo Å egan  <dsegan@gmx.net>
2706
2707         * configure.in: Added sr@ije to ALL_LINGUAS.
2708
2709 Wed Feb 25 09:46:34 2004  Owen Taylor  <otaylor@redhat.com>
2710
2711         * gtk/gtkstyle.c (gtk_style_finalize): Free 
2712         style->icon_factories (#130128)
2713
2714 Wed Feb 25 03:52:58 2004  Jonathan Blandford  <jrb@gnome.org>
2715
2716         * gtk/gtkpathbar.c: use gtk_widget_push/pop_composite_child around
2717         internal buttons.
2718
2719         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
2720         rename some widgets to make it clear where they are packed.
2721         (update_appearance): New function to handle all the 'logic' of
2722         layout in one place.  We aren't trying to keep all our properties
2723         in sync.
2724         (gtk_file_chooser_default_set_property): use update_appearance()
2725
2726 2004-02-24  Federico Mena Quintero  <federico@ximian.com>
2727
2728         * gtk/gtkfilechooserdefault.c (shortcuts_model_create): Renamed
2729         from create_shortcuts_model().
2730         (struct _GtkFileChooserDefault): Renamed the shortcuts_tree field
2731         to shortcuts_list.
2732         (shortcuts_list_create): Renamed from shortcuts_tree_create().
2733         (create_file_list): Enable the tree view as a model drag source.
2734         (create_folder_tree): Likewise.
2735
2736         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_get_type):
2737         Register the drag source interface.
2738         (drag_source_iface_init): New function.
2739         (drag_source_row_draggable): New function.
2740         (drag_source_drag_data_get): New function.
2741
2742 Tue Feb 24 19:12:07 2004  Owen Taylor  <otaylor@redhat.com>
2743
2744         * === Released 2.3.4 ===
2745
2746         * configure.in: Bump version to 2.3.4, fix broken
2747         gtk_binary_age value by copying the GLib logic
2748         to automatically set it to the right values.
2749
2750 Wed Feb 25 00:13:24 2004  Matthias Clasen  <maclas@gmx.de>
2751
2752         * gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): 
2753         * gtk/gtkcombobox.c (gtk_combo_box_list_row_changed): 
2754         Don't resize priv->cell_view if it is NULL.  (#127804, 
2755         Damon Chaplin)
2756         
2757 Wed Feb 25 00:06:50 2004  Matthias Clasen  <maclas@gmx.de>
2758
2759         * gtk/gtkcombobox.c: Add a comment about the different 
2760         modi of this widget. Get rid of priv->hbox, and some other
2761         cleanups. Make sure that gtk_combo_box_unset_model() is 
2762         always called before setting up a different mode. 
2763
2764 Tue Feb 24 17:51:49 2004  Owen Taylor  <otaylor@redhat.com>
2765
2766         * gtk/gtkaccellabel.c (gtk_accel_label_refetch): Convert
2767         underscores in keyval names to spaces. (#131480)
2768
2769 Tue Feb 24 17:35:59 2004  Owen Taylor  <otaylor@redhat.com>
2770
2771         * m4macros/gtk-2.0.m4: Add some quotes around ***. (#130073,
2772         Uwe Zeisberger)
2773
2774 Tue Feb 24 14:45:03 2004  Owen Taylor  <otaylor@redhat.com>
2775
2776         * === Released 2.3.3 ===
2777
2778         * configure.in: Version 2.3.3, interface age 0.
2779
2780         * NEWS: Finish updates for 2.3.3.
2781
2782 2004-02-24  Federico Mena Quintero  <federico@ximian.com>
2783
2784         * gtk/gtkfilechooserdefault.c (save_widgets_create): Use a plain
2785         GtkEntry for the filename, not a GtkFileChooserEntry.
2786         (update_chooser_entry): Use gtk_entry_set_text() rather than
2787         _gtk_file_chooser_entry_set_file_part().
2788         (gtk_file_chooser_default_set_current_name): Likewise.
2789         (gtk_file_chooser_default_set_current_folder): Don't set the base
2790         folder of the entry, and don't call update_chooser_entry().
2791         (gtk_file_chooser_default_get_paths): Use the plain entry.
2792         (save_widgets_create): Store the "Save in Folder" label in the
2793         impl structure.
2794         (expander_activate_cb): Set the sensitivity of the label and
2795         combo.
2796         (save_widgets_create): Connect to "notify::expanded" rather than
2797         "activate" on the expander.
2798         (expander_changed_cb): Renamed from expander_activate_cb().  Flip
2799         the conditions again...
2800
2801 Tue Feb 24 14:43:07 2004  Jonathan Blandford  <jrb@gnome.org>
2802
2803         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): only draw the sort
2804         column as different if there are 3 or more visible columns.
2805
2806 2004-02-24  Anders Carlsson  <andersca@gnome.org>
2807
2808         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_separator):
2809         Fix compilation (#135278, Padraig O'Briain).
2810         
2811 2004-02-24  Anders Carlsson  <andersca@gnome.org>
2812
2813         * gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
2814         Translate the desktop label.
2815         
2816         (shortcuts_get_index), (shortcuts_add_bookmarks),
2817         (shortcuts_insert_separator), (create_shortcuts_model):
2818         Don't show the bookmark separator if there are no bookmarks.
2819         
2820 Tue Feb 24 01:41:30 2004  Jonathan Blandford  <jrb@gnome.org>
2821
2822         * gtk/gtkfilechooserdefault.c (location_popup_handler): Make the
2823         dialog look like the nautilus dialog.
2824         (expander_activate_cb): get the order correct.
2825
2826 2004-02-23  Federico Mena Quintero  <federico@ximian.com>
2827
2828         * gtk/gtkfilechooserdefault.c (list_selection_changed): Call
2829         bookmarks_check_add_sensitivity().
2830         (shortcut_exists): New helper function; moved the testing code
2831         over from bookmarks_check_add_sensitivity().
2832         (bookmarks_check_add_sensitivity): Check the contents of the
2833         selection in the file/folder list.  Use shortcut_exists().
2834         (shortcuts_add_bookmark_from_path): Don't insert the bookmark if
2835         the path is already in the shortcuts list.
2836         (add_bookmark_button_clicked_cb): Add the bookmarks from the list
2837         selection or from the current folder, as appropriate.
2838
2839 Mon Feb 23 21:09:06 2004  Jonathan Blandford  <jrb@gnome.org>
2840
2841         * gtk/gtkfilechooserdefault.c (shortcuts_pane_create): Add
2842         mnemonics.  Sorry translators.
2843
2844 Tue Feb 24 02:24:58 2004  Matthias Clasen  <maclas@gmx.de>
2845
2846         * NEWS: Additions. This should be complete for the main ChangeLog
2847         now, still need to sift through gdk-pixbuf, docs, and translations.
2848
2849 Mon Feb 23 19:57:45 2004  Jonathan Blandford  <jrb@gnome.org>
2850
2851         * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size):
2852         Add a get_size implementation so that we are no longer the same
2853         height as text.
2854
2855 2004-02-24  Anders Carlsson  <andersca@gnome.org>
2856
2857         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
2858         (shortcuts_remove_rows), (shortcuts_append_bookmarks),
2859         (create_shortcuts_model), (shortcuts_tree_create),
2860         (gtk_file_chooser_default_remove_shortcut_folder):
2861         Improve bookmark list rendering by controlling the visibility
2862         of the pixbuf cell so that it will be invisible for the separator
2863         row, also use a list store instead of a tree store for the model
2864         so we won't get unnecessary space for an expander.
2865         
2866 Tue Feb 24 01:08:27 2004  Matthias Clasen  <maclas@gmx.de>
2867
2868         * gtk/gtkcombobox.c: Add a destroy implementation in order to
2869         set priv->cell_view to NULL before finalize stumbles over the 
2870         dangling pointer. This big array of pointers into the widget 
2871         tree in GtkComboBoxPrivate is really fragile and should be
2872         cleaned up.
2873
2874 Mon Feb 23 17:52:43 2004  Jonathan Blandford  <jrb@gnome.org>
2875
2876         * gtk/gtkfilechooserdefault.c (main_paned_create): use a size
2877         group when allocating space for the buttons at the bottom just in
2878         case.  Also, move the filter to below the file list.
2879
2880 Mon Feb 23 16:52:12 2004  Jonathan Blandford  <jrb@gnome.org>
2881
2882         * gtk/gtkfilechooserdefault.c
2883         (gtk_file_chooser_default_class_init): Seth was confused by
2884         keybindings.  They should be Alt, not Ctl.  Also, A-Home should go
2885         home, not up.
2886
2887 Mon Feb 23 15:23:23 2004  Jonathan Blandford  <jrb@gnome.org>
2888
2889         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Display the root a bit
2890         more cleanly.
2891
2892         * gtk/gtkpathbar.h (struct _GtkPathBarClass): fix the signal.
2893
2894 2004-02-23  Federico Mena Quintero  <federico@ximian.com>
2895
2896         Rework the user interface of the file chooser, as per 
2897         Seth Nickell's design.
2898
2899         * gtk/gtkfilechooserdefault.c
2900         (gtk_file_chooser_default_class_init): Add binding signals and bindings:
2901                 "location-popup" - C-l
2902                 "up-folder"      - C-Up
2903                 "home-folder"    - C-Home
2904         (up_folder_handler): New function; moved the code from up_button_clicked().
2905         (up_button_clicked_cb): Call up_folder_handler().
2906         (home_folder_handler): New function.
2907         (location_popup_handler): New function.
2908         (struct _GtkFileChooserDefault): Add an hpaned field.
2909         (gtk_file_chooser_default_set_current_name): Check that we are in
2910         Save mode.
2911         (save_widgets_create): New function, create the widgets specific
2912         to Save mode.
2913         (main_paned_create): New function, create the hpaned's widgets here.
2914         (gtk_file_chooser_default_constructor): Create the open and save
2915         widgets, and show only one set.
2916         (gtk_file_chooser_default_set_property): Show/hide the save widgets.
2917         (gtk_file_chooser_default_get_paths): Only pay attention to the
2918         entry in Save mode.
2919         (update_chooser_entry): Update the entry only in Save mode.
2920         (entry_activate): Removed.
2921
2922 Mon Feb 23 11:20:34 2004  Owen Taylor  <otaylor@redhat.com>
2923
2924         * configure.in: Remove the configure.in check for fontconfig 
2925         entirely; it's not needed, since PangoXft implies that sufficiently
2926         new fontconfig is present.
2927
2928 Mon Feb 23 02:26:53 2004  Jonathan Blandford  <jrb@gnome.org>
2929
2930         * gtk/gtkpathbar.c (gtk_path_bar_finalize):
2931         for (i = 0; i < 10; i++)
2932           g_print ("I will compile before committing.\n");
2933
2934 Mon Feb 23 02:08:42 2004  Jonathan Blandford  <jrb@gnome.org>
2935
2936         * gtk/gtkfilechooserdefault.c (file_pane_create): Use the
2937         GtkPathBar by default now.
2938
2939         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Correctly set the
2940         current path from the path.
2941         (gtk_path_bar_class_init): new signal
2942         (button_clicked_cb): emit the signal when we're selected.
2943         (gtk_path_bar_clear_buttons): Fix a crasher when we weren't
2944         clearing thr first_scrolled_button.
2945
2946 Mon Feb 23 02:26:15 2004  Matthias Clasen  <maclas@gmx.de>
2947
2948         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Fix the 
2949         allocation for the toggle button so that it actually shows up 
2950         in LTR list mode.
2951
2952         * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): 
2953         * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): 
2954         * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add
2955         notification, and avoid excessive relayouting. 
2956
2957 Mon Feb 23 00:38:21 2004  Matthias Clasen  <maclas@gmx.de>
2958
2959         Fix bug 134982, reported by Morten Welinder:
2960         
2961         * gtk/gtkpathbar.c (gtk_path_bar_destroy): 
2962         * gtk/gtktooltips.c (gtk_tooltips_destroy): 
2963         * gtk/gtkinvisible.c (gtk_invisible_destroy): Chain up to the 
2964         parent's ::destroy handler.
2965         
2966         * gdk/gdkdisplay.c (gdk_display_dispose): Chain up to the 
2967         parent's ::dispose handler.
2968
2969 Sat Feb 21 19:09:55 2004  Manish Singh  <yosh@gimp.org>
2970
2971         * gtk/gtksettings.c (gtk_default_substitute): Guard the FC_HINT_STYLE
2972         stuff with an #ifdef, so we still build with most fontconfig versions.
2973
2974 Sun Feb 22 03:03:29 2004  Matthias Clasen  <maclas@gmx.de>
2975
2976         * gtk/gtkaction.c: (gtk_action_finalize):
2977         * gtk/gtkclipboard.c: (gtk_clipboard_finalize):
2978         * gtk/gtkentrycompletion.c: (gtk_entry_completion_class_init),
2979         (gtk_entry_completion_finalize):
2980         * gtk/gtkfilechooserwidget.c: (gtk_file_chooser_widget_finalize):
2981         * gtk/gtkfilesystemmodel.c: (gtk_file_system_model_class_init),
2982         (gtk_file_system_model_finalize):
2983         * gtk/gtkicontheme.c: (gtk_icon_theme_class_init),
2984         (gtk_icon_theme_finalize):
2985         * gtk/gtktextchild.c: (gtk_text_child_anchor_finalize):
2986         * gtk/gtkuimanager.c: (gtk_ui_manager_class_init),
2987         (gtk_ui_manager_finalize):
2988         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_finalize):
2989         Add chains to the parent's ::finalize() handler  (#134901, Morten Welinder,
2990         patch by Jan Arne Petersen)
2991
2992 Sun Feb 22 02:10:34 2004  Matthias Clasen  <maclas@gmx.de>
2993
2994         * gtk/gtkentrycompletion.c (gtk_entry_completion_default_completion_func): 
2995         Don't crash if item is NULL.  (#131542, Dan Damian)
2996
2997 Sun Feb 22 02:04:03 2004  Matthias Clasen  <maclas@gmx.de>
2998
2999         * configure.in: Add a check for a new enough fontconfig, since
3000         we picked up a direct dependency on it with the Xft settings.
3001
3002 Sun Feb 22 00:23:40 2004  Matthias Clasen  <maclas@gmx.de>
3003
3004         Bug 112647 (Bill Haneman, patch by Narayana Pattipati):
3005         
3006         * gtk/gtkcheckmenuitem.c: Introduce a new style property 
3007         indicator_size and use it instead of the hardcoded value.
3008         
3009         * gtk/gtkmenu.c (gtk_menu_size_request): Make sure each menu 
3010         item gets enough vertical space for the label and the indicator.
3011
3012 Sat Feb 21 20:20:11 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3013
3014         * gtk/gtksettings.c (gtk_settings_class_init): Use P_ instead of
3015         _ for the new Xft settings.
3016
3017 Sat Feb 21 20:09:53 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3018
3019         Bug 130790 (Federico Mena Quintero, Owen Taylor)
3020         
3021         * gdk/x11/gdkevents-x11.c: Add Xft XSETTINGS
3022
3023         * gtk/gtksettings.c: Add new GtkSettings corresponding to the Xft
3024         XSETTINGS
3025         
3026 Sat Feb 21 19:18:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3027
3028         Bug 132502
3029         
3030         * gtk/gtkmenu.c (gtk_menu_motion_notify): Make sure we pop down
3031         if we enter a non-selectable menu item.
3032
3033         * gtk/gtkmenu.c (gtk_menu_leave_notify): Don't pop a submenu
3034         when the user has left the item.
3035
3036 Sat Feb 21 17:57:35 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3037
3038         * gtk/docs: Commit auto-generated changes
3039
3040 Fri Feb 20 18:20:22 2004  Jonathan Blandford  <jrb@gnome.org>
3041
3042         * gtk/gtkfilechooserdefault.c: conditional compile for GtkPathBar
3043
3044         * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Clean up
3045         allocation code.  Works fully in RTL languages, I think.
3046         (gtk_path_bar_scroll_up): Scroll up.
3047         (gtk_path_bar_scroll_down): Scroll down.
3048
3049 2004-02-20  Christian Rose  <menthos@menthos.com>
3050
3051         * configure.in: Added "en_CA" to ALL_LINGUAS.
3052
3053 2004-02-20  Michael Meeks  <michael@ximian.com>
3054
3055         * gtk/gtktoolitem.c (gtk_tool_item_property_notify): impl.
3056         (gtk_tool_item_class_init): hook it up.
3057         (gtk_tool_item_set_proxy_menu_item): synchronize sensitivity.
3058
3059         * gtk/gtktoolbutton.c (gtk_tool_button_property_notify):
3060         chain to parent, fix strcmp bug.
3061
3062         * tests/testtoolbar.c (main): re-arrange widgets to allow
3063         more overflowing toolbar goodness.
3064
3065 2004-02-20  Alexander Larsson  <alexl@redhat.com>
3066
3067         * gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
3068         Desktop directory is not translated.
3069         (set_tree_model):
3070         There might not be volumes for all paths.
3071         * gtk/gtkfilechooserwidget.c:
3072         (gtk_file_chooser_widget_constructor):
3073         Use gtk_file_chooser_set_current_folder to set cwd.
3074
3075 Thu Feb 19 19:58:53 2004  Jonathan Blandford  <jrb@gnome.org>
3076
3077         * gtk/gtkpathbar.[ch]: New widget to handle the path in the
3078         fileselector implementation.  Not hooked up to anything yet.
3079
3080         * gtk/Makefile.am: support the path bar.
3081
3082 Fri Feb 20 00:21:38 2004  Matthias Clasen  <maclas@gmx.de>
3083
3084         * gtk/gtkstyle.c (gtk_default_draw_handle): 
3085         (gtk_default_draw_box): Make the paned handles gray when the the 
3086         widget is_focus() but not HAS_FOCUS().  (#122751, Soeren Sandmann)
3087
3088 Thu Feb 19 23:41:06 2004  Matthias Clasen  <maclas@gmx.de>
3089
3090         Fixes for #82099:
3091         
3092         * gdk/x11/gdkevents-x11.c: Introduce new XSettings "Gtk/ButtonImages"
3093         and "Gtk/MenuImages" and map them to "gtk-button-images" and 
3094         "gtk-menu-images".
3095
3096         * gtk/gtkimagemenuitem.c: Add a boolean setting "gtk-menu-images" and 
3097         use it to set the visibility of the embedded image.
3098
3099         * gtk/gtkbutton.c: Add a boolean setting "gtk-button-images" and use
3100         it to set the visibility of an embedded image.
3101
3102 Thu Feb 19 21:26:10 2004  Matthias Clasen  <maclas@gmx.de>
3103
3104         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
3105         Give each radio action its own value.  (#134889, Paolo Borelli)
3106
3107 2004-02-19  Federico Mena Quintero  <federico@ximian.com>
3108
3109         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_finalize):
3110         Chain to the parent's ::finalize() handler.  Fixes #134885; caught
3111         by Jan Arne Petersen.
3112
3113 2004-02-19  Mark McLoughlin  <mark@skynet.ie>
3114
3115         Make the entire expander widget width prelight as suggested
3116         by Seth in bug #134263.
3117
3118         * gtk/gtkexpander.c:
3119         (gtk_expander_paint_prelight): impl.
3120         (gtk_expander_paint): use it.
3121         (gtk_expander_redraw_expander): don't only redraw the
3122         arrow when prelit.
3123
3124 2004-02-19  Alexander Larsson  <alexl@redhat.com>
3125
3126         * gtk/gtkfilechooser.c: (gtk_file_chooser_class_init):
3127         * gtk/gtkfilechooserutils.c:
3128         * gtk/gtkfilechooserutils.h:
3129         * gtk/gtkfilechooserwidget.c:
3130         Remove old file-system property.
3131         Add new file-system-backend string property
3132         
3133         * gtk/gtkfilechooserdefault.[ch]:
3134         Handle the file-system-backend property
3135         
3136         * gtk/gtkfilechooserdialog.[ch]:
3137         (gtk_file_chooser_dialog_new_with_backend):
3138         Remove old file-system property.
3139         Add new file-system-backend string property
3140         Add new function gtk_file_chooser_dialog_new_with_backend
3141         
3142         * gtk/gtkfilesystem.c: 
3143         * gtk/gtkfilesystem.h:
3144         Add filesystem module support.  
3145
3146 2004-02-18  Federico Mena Quintero  <federico@ximian.com>
3147
3148         * gtk/gtkfilechooserdefault.c (shortcuts_tree_create): Renamed
3149         from create_shortcuts_tree().
3150         (shortcuts_pane_create): New function.
3151         (button_new): Renamed from toolbar_button_new().
3152         (shortcuts_pane_create): New function, create the whole shortcuts
3153         pane here.
3154         (current_folder_create): Renamed from toolbar_create().  Don't
3155         create the bookmarks buttons here.
3156         (file_pane_create): New function.
3157         (gtk_file_chooser_default_constructor): Use the new helper
3158         functions, and don't use an extra vbox as GtkFileChooserDefault is
3159         already a vbox.
3160
3161 Thu Feb 19 01:39:30 2004  Matthias Clasen  <maclas@gmx.de>
3162
3163         * gtk/gtkuimanager.h: 
3164         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Add
3165         default handlers for all signals; for consistency and for the
3166         benefit of language bindings which still rely on header parsing
3167         to find the signals.  (#134269, Jeroen Zwartepoorte)
3168         
3169 Thu Feb 19 00:45:02 2004  Matthias Clasen  <maclas@gmx.de>
3170
3171         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): 
3172         Improve the efficiency here by prepending on the list and reverting
3173         it after the loop.  (#134435, Christian Biere)
3174
3175 Thu Feb 19 00:32:21 2004  Matthias Clasen  <maclas@gmx.de>
3176
3177         * gtk/gtkplug.c (_gtk_plug_remove_from_socket): Avoid errors when
3178         removing the plug from the socket.  (#128546, Christopher Blizzard)
3179
3180 Thu Feb 19 00:09:35 2004  Matthias Clasen  <maclas@gmx.de>
3181
3182         * gtk/gtkradiomenuitem.h:
3183         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_from_widget): 
3184         (gtk_radio_menu_item_new_with_label_from_widget): 
3185         (gtk_radio_menu_item_new_with_mnemonic_from_widget): New
3186         convenience functions analogous to similar API on GtkRadioButton.
3187         (#51700, Vitaly Tishkov, patch by Soeren Sandmann)
3188
3189 Wed Feb 18 17:53:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3190
3191         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Use a scratch GC in the
3192         case where the background is a solid color.
3193         (gdk_window_clear_backing_rect): Reset the clip region after use.
3194
3195         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Go
3196         back to using a scratch GC. Pointed out by Owen Taylor
3197         
3198         * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Only use a
3199         scratch GC if the passed-in one is NULL
3200
3201 Wed Feb 18 14:27:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3202
3203         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): Reset clip
3204         region back to NULL on cached GC (rest of #134728)
3205
3206 Wed Feb 18 13:28:57 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3207
3208         Fix bug reported by Nam SungHyun (#134728)
3209         
3210         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha):
3211         Don't use a cached GC here since the function needs to modify the
3212         foreground color.
3213
3214         * gdk/gdkwindow.c (gdk_window_end_paint): Reset clip region back
3215         to NULL on the cached GC.
3216
3217 2004-02-17  Federico Mena Quintero  <federico@ximian.com>
3218
3219         * gtk/gtkfilechooserdialog.c
3220         (gtk_file_chooser_dialog_style_set): Use HIG-compliant spacings.
3221         This sucks a lot.
3222
3223 Wed Feb 18 02:03:47 2004  Matthias Clasen  <maclas@gmx.de>
3224
3225         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Document some
3226         peculiarities of the ::delete_range signal.  (#132135, Grant Gayed)
3227
3228 Wed Feb 18 01:44:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3229
3230         GC caching, bug #125645 (based on patch by Brian Cameron)
3231         
3232         * gdk/gdkscreen.h (struct _GdkScreen): Add GC cache
3233         * gdk/gdkscreen.c (gdk_screen_dispose): New function. Unref the
3234         cached GC's here.
3235         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): New function to
3236         get a scratch gc.
3237         * gdk/gdkinternals.h: Declare the function here
3238
3239         * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Use
3240         _gdk_drawable_get_scratch_gc() instead of creating a new GC.
3241         * gdk/x11/gdkgeometry-x11.c (gdk_window_copy_area_scroll): same
3242         * gdk/x11/gdkdrawable-x11.c (draw_with_images): same
3243         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): same
3244         * gdk/gdkwindow.c (gdk_window_end_paint): same
3245         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): same
3246         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): same
3247         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_pixmap_and_mask_for_colormap): same
3248
3249 Tue Feb 17 23:28:33 2004  Matthias Clasen  <maclas@gmx.de>
3250
3251         * gtk/gtkmenu.c (gtk_menu_init): ...and don't forget to initalize
3252         priv->columns to 1.
3253
3254 Tue Feb 17 23:11:21 2004  Matthias Clasen  <maclas@gmx.de>
3255
3256         * gtk/gtkmenu.c (gtk_menu_do_remove): Make sure that we keep
3257         priv->columns >= 1 even for empty menus, since we divide by it
3258         somewhere else.  (#133428, Vincent Noel)
3259
3260 Tue Feb 17 23:02:58 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3261
3262         Fix for #119722, reported by Olexiy Avramchenko, patch by Owen
3263         Taylor.
3264
3265         * gdk/x11/gdkprivate-x11.h (struct _GdkGCX11): Add a depth field
3266
3267         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Keep track of the GC's
3268         depth.
3269
3270         * gdk/x11/gdkgc-x11.c (_gdk_gc_x11_get_fg_xft_color): First query
3271         the colormap, if no colormap, special case depth 1, 
3272
3273         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Use
3274         _gdk_gc_x11_get_fg_xft_color() to get the foreground color.
3275
3276         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_xft_draw):
3277         Special-case bitmaps without a colormap.
3278
3279         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Use inherited
3280         draw_pixbuf() implementation in the bitmap case.
3281
3282 2004-02-17  Mark McLoughlin  <mark@skynet.ie>
3283
3284         * modules/input/Makefile.am: only reference input method
3285         modules we've actually built. Fixes re-build failure with
3286         stale hangul module lying aroung. Bug #134518.
3287
3288 Mon Feb 16 19:13:21 2004  Owen Taylor  <otaylor@redhat.com>
3289
3290         * gdk/gdkdraw.c: Revert last commit, please don't commit patches
3291         without approval, this isn't the right way to do it.
3292
3293 2004-02-16  DindinX  <david@dindinx.org>
3294
3295         * gdk/gdkdraw.c (gdk_draw_segments): don't try to draw more than 32767
3296         segments at a time, since XDrawSegments cannot handle more than this.
3297
3298         fixes bug #122026.
3299         
3300 Mon Feb 16 18:26:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3301
3302         * gtk/gtktoolbar.c (gtk_toolbar_set_child_property): Call
3303         gtk_tool_item_set_expand(), not gtk_tool_item_set_homogeneous()
3304         in the CHILD_PROP_EXPAND branch. (#134543, Damon Chaplin)
3305
3306 Mon Feb 16 00:04:46 2004  Matthias Clasen  <maclas@gmx.de>
3307
3308         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_*): 
3309         Split declaration and assignment of combo_box.
3310         
3311         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Remove a 
3312         pointless cast
3313
3314 Sun Feb 15 22:08:53 2004  Matthias Clasen  <maclas@gmx.de>
3315
3316         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Add 
3317         deprecation note pointing people to GtkComboBox.
3318
3319 Sun Feb 15 02:49:45 2004  Matthias Clasen  <maclas@gmx.de>
3320
3321         * gtk/gtktreednd.c: 
3322         * gtk/gtktreeview.c: Document the tree DND API.
3323
3324         * gtk/gtktreeview.c (gtk_tree_view_unset_rows_drag_source): 
3325         Call gtk_drag_source_unset().  
3326         
3327 Sun Feb 15 00:49:59 2004  Matthias Clasen  <maclas@gmx.de>
3328
3329         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init): 
3330         Make stock_size an uint property, to allow custom icon 
3331         sizes. Also clarify the blurb.  (#130047, Erik Grinaker)
3332
3333 Sat Feb 14 11:05:26 2004  Manish Singh  <yosh@gimp.org>
3334
3335         * configure.in: Remove unnecessary STRIP_* definitions, and GNU
3336         make check.
3337
3338 2004-02-13  Federico Mena Quintero  <federico@ximian.com>
3339
3340         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_add_bookmark):
3341         Duh, duh, duh!  Don't bail out if the bookmarks file doesn't exist
3342         the very first time you try to save one.
3343
3344 2004-02-13  Federico Mena Quintero  <federico@ximian.com>
3345
3346         Fix #129020.
3347
3348         * gtk/gtkfilechooserdialog.c
3349         (set_default_size): New function, sets a reasonable default size
3350         for the window.
3351         (gtk_file_chooser_dialog_realize): New function, call
3352         set_default_size().
3353         (gtk_file_chooser_dialog_style_set): Likewise.
3354         (gtk_file_chooser_dialog_screen_changed): Likewise.
3355
3356         * tests/testfilechooser.c (main): Don't set a default size for the
3357         dialog.
3358
3359 Sat Feb 14 00:05:18 2004  Matthias Clasen  <maclas@gmx.de>
3360
3361         * gtk/gtktreemodelfilter.c (bsearch_elt_with_offset): 
3362         Use do instead of while.  (#134031, Morten Welinder);
3363
3364 Sat Feb 14 00:00:52 2004  Matthias Clasen  <maclas@gmx.de>
3365
3366         * configure.in: Suppress xsltproc and xmlcatalog checks
3367         if enable_man=no.  (#134162, Julio M. Merino Vidal)
3368
3369 Fri Feb 13 23:54:48 2004  Matthias Clasen  <maclas@gmx.de>
3370
3371         * configure.in: Remove checks for sgml2html. It was once
3372         used for building the linuxdoc version of the tutorial.
3373         Nowadays, we use db2html.  (#134164, Julio M. Merino Vidal)
3374
3375 Fri Feb 13 08:17:43 2004  Owen Taylor  <otaylor@redhat.com>
3376
3377         Fix various compilation problems (#134312, David
3378         Hawthorne)
3379
3380         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Use 
3381         g_return_if_fail(), not g_return_val_if_fail().
3382
3383         * gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): 
3384         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Use 
3385         g_return_if_reached(), not g_return_val_if_reached().
3386         
3387         * gtk/gtkvscale.c (gtk_vscale_expose): Fix the types
3388         of some parameters.
3389
3390         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Remove
3391         extra 'scale' parameter.
3392
3393 Thu Feb 12 21:58:20 2004  Owen Taylor  <otaylor@redhat.com>
3394
3395         Various reentrancy fixes for widgets being destroyed
3396         out of focus-out-event. (#128821, Grant Gayed)
3397
3398         * gtk/gtkwindow.c (_gtk_window_unset_focus_and_default): 
3399         Ref window and widget over callbacks.
3400
3401         * gtk/gtkwidget.c (gtk_widget_hide)
3402           gtk/gtkwidget.c (gtk_widget_set_child_visible):
3403         Ref the widget before calling _gtk_window_unset_focus_and_default(),
3404         since that can call user callbacks.
3405
3406         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
3407         Do nothing if the widget isn't realized.
3408
3409 Fri Feb 13 01:31:44 2004  Matthias Clasen  <maclas@gmx.de>
3410
3411         * gtk/gtkbutton.c (_gtk_button_paint): Don't draw bevels around
3412         active, RELIEF_NONE buttons that aren't depressed. This improves
3413         the appearance of buttons in notebook tabs.  (#109213, reported
3414         by Benjamin Otte, patch by Rodney Dawes)
3415
3416 Fri Feb 13 01:06:08 2004  Matthias Clasen  <maclas@gmx.de>
3417
3418         * demos/gtk-demo/main.c (read_line): Protect getc_unlocked() by 
3419         HAVE_FLOCKFILE in all cases.  (#134205, Julio M. Merino Vidal)
3420
3421 Fri Feb 13 00:54:59 2004  Matthias Clasen  <maclas@gmx.de>
3422
3423         Fix for #104811, Padraig O'Briain:
3424
3425         * gtk/gtkscale.h:
3426         * gtk/gtkscale.c (_gtk_scale_clear_layout): 
3427         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): 
3428         * gtk/gtkscale.c (gtk_scale_get_layout): New functions to determine the
3429         text and its position from a GtkScale, to make it more accessible. 
3430         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets):
3431         * gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): Implementations of the 
3432         new GtkScale vfunc.
3433
3434 Thu Feb 12 17:59:52 2004  Owen Taylor  <otaylor@redhat.com>
3435
3436         * gtk/gtkicontheme.c (gtk_icon_theme_get_search_path): 
3437         Remove an extraneous + 1 (#134015, Torsten Schoenfeld)
3438
3439 Thu Feb 12 23:55:08 2004  Matthias Clasen  <maclas@gmx.de>
3440
3441         * gtk/gtktooltips.h:
3442         * gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window): New 
3443         function to improve the accessibility of tooltips.  (#114851, 
3444         Padraig O'Briain)
3445
3446 Thu Feb 12 23:16:04 2004  Matthias Clasen  <maclas@gmx.de>
3447
3448         * gtk/gtkcombobox.c (gtk_combo_box_popup): 
3449         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Make these public and
3450         add docs.  (#132847)
3451
3452 Thu Feb 12 11:05:16 2004  Manish Singh  <yosh@gimp.org>
3453
3454         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Assign xtype using
3455         gdk_x11_atom_to_xatom_for_display () when type != GDK_NONE.
3456
3457         * gtk/gtkselection.c (_gtk_selection_request): Use GDK_NONE in
3458         gdk_property_get call instead of 0.
3459
3460         * docs/reference/gdk/tmpl/properties.sgml: Document the above
3461         as GDK_NONE instead of simply 0.
3462
3463 Thu Feb 12 15:46:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3464
3465         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Fix up item_area
3466         correctly in RTL mode. (#133984, patch from Semion Chichelnitsky).
3467
3468 Thu Feb 12 02:22:02 2004  Matthias Clasen  <maclas@gmx.de>
3469
3470         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func): 
3471         Correct the docs.
3472
3473 Thu Feb 12 01:17:01 2004  Matthias Clasen  <maclas@gmx.de>
3474
3475         * gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source): Call
3476         gtk_drag_source_set(), so that things like gtk_drag_set_icon_*() work
3477         for automatic DND.  (#133485, Tommi Komulainen)
3478
3479 Thu Feb 12 00:37:00 2004  Matthias Clasen  <maclas@gmx.de>
3480
3481         * gdk/x11/gdkproperty-x11.c (gdk_property_change): Fix misleading
3482         debug output.
3483
3484 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
3485
3486         * gtk/gtkmessagedialog.c (gtk_message_dialog_map): New ::map()
3487         handler.  If no widget has the focus, try to give it to the
3488         default widget.  If there is no default widget, give it to the
3489         first button.  Fixes the cause for which #59707 was reopened.
3490
3491 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
3492
3493         Fixes #134051.
3494
3495         * gtk/gtkicontheme.c (struct _GtkIconInfo): Remove the ref_count field.
3496         (icon_info_new): Don't initialize the ref_count field.
3497
3498 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
3499
3500         * gtk/gtkicontheme.c (gtk_icon_theme_prepend_search_path): Shift
3501         the array correctly.  Fixes #134055, patch by Tosten Schoenfeld
3502         <kaffeetisch@gmx.de>.
3503
3504 Wed Feb 11 02:23:39 2004  Matthias Clasen  <maclas@gmx.de>
3505
3506         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child): Handle
3507         focus [hv]adjustment correctly when the focus is located deeper
3508         down in the hierarchy.  (#133489)
3509
3510 Wed Feb 11 02:06:38 2004  Matthias Clasen  <maclas@gmx.de>
3511
3512         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Remove 
3513         arbitrary low upper limits on the xpad, ypad, width and height
3514         properties.  (#129696, John Ellis)
3515
3516 Wed Feb 11 01:24:20 2004  Matthias Clasen  <maclas@gmx.de>
3517
3518         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
3519         Ugh. Don't try to free ints, even if they're stored in pointers.
3520         (#133997, Morten Welinder)
3521
3522 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
3523
3524         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
3525         Free the filters.  Fixes #133547, patch by Morten Welinder
3526         <mortenw@gnome.org>.
3527
3528 Tue Feb 10 12:02:14 2004  Owen Taylor  <otaylor@redhat.com>
3529
3530         * gdk/x11/xsettings-client.c (read_settings): Avoid
3531         triggering an X error when the client->manager_window
3532         is None...makes logs look cleaner.
3533
3534         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Handle
3535         GDK_NONE to mean AnyPropertyType as documented. (Reported 
3536         by Yu Shao)
3537
3538         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window,
3539         gdk_x11_screen_get_window_manager_name): Fix error trap
3540         we've been leaking since 2002... (#129538)
3541
3542 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
3543
3544         Fixes the entry-related part of #133852.
3545
3546         * gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't change
3547         the file part of the entry if the selected item is a folder.
3548
3549 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
3550
3551         Fixes #133995, patch by Morten Welinder <mortenw@gnome.org>.
3552
3553         * tests/prop-editor.c (create_prop_editor): Free the title.
3554         (object_changed): Free the children list.
3555
3556 Tue Feb 10 01:58:55 2004  Matthias Clasen  <maclas@gmx.de>
3557
3558         * gtk/gtkcontainer.c (gtk_container_set_focus_hadjustment): 
3559         * gtk/gtkcontainer.c (gtk_container_set_focus_vadjustment): Document 
3560         these functions.
3561
3562 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
3563
3564         * gtk/gtkfilechooserdefault.c (set_list_model): Request
3565         GTK_FILE_INFO_ALL from the file system model, so that arbitrary
3566         filtering will work.  Perhaps we should have a way of aggregating
3567         info types to the model as filters get installed.
3568
3569 Mon Feb  9 22:22:19 2004  Matthias Clasen  <maclas@gmx.de>
3570
3571         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
3572         Ugh. Don't try to free ints, even if they're stored in pointers.
3573
3574 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
3575
3576         Fix #132256.
3577
3578         * gtk/gtkfilechooserdefault.c
3579         (gtk_file_chooser_default_get_paths): Read the contents of the
3580         filename entry in both OPEN and SAVE mode.  In multiple-selection
3581         mode, add this to the selection from the file/folder list.
3582         (struct get_paths_closure): Add a path_from_entry field.
3583         (get_paths_foreach): Only add the iterated path if it is not the
3584         same as the path from the entry.
3585
3586 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
3587
3588         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): If
3589         the folder is already open, add the requested info types to it.
3590
3591 Sun Feb  8 01:28:02 2004  Manish Singh  <yosh@gimp.org>
3592
3593         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add appropriate
3594         type casts for the gtk_window_set_screen() call.
3595
3596 Sun Feb  8 01:44:06 2004  Matthias Clasen  <maclas@gmx.de>
3597
3598         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make popups 
3599         come up on the same screen as the combo box.  (#133544, 
3600         Morten Welinder)
3601
3602 Fri Feb  6 23:40:24 2004  Jonathan Blandford  <jrb@gnome.org>
3603
3604         * gtk/gtkfilechooserdefault.c (create_file_list): clean up the
3605         packing of the file selector.
3606
3607 Sat Feb  7 01:21:09 2004  Matthias Clasen  <maclas@gmx.de>
3608
3609         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Don't use function 
3610         calls in array initializers, as some compilers seem to hate this.
3611         (#133216, Jonas Jonsson)
3612
3613 Sat Feb  7 00:06:44 2004  Matthias Clasen  <maclas@gmx.de>
3614
3615         * gtk/gtkaccelmap.[hc]: Add change notification for GtkAccelMap,
3616         by on-demand instantiating a singleton object with a "changed" 
3617         signal. 
3618
3619         * gtk/gtkmarshalers.list (VOID:STRING,UINT,FLAGS): Add marshaller
3620         for GtkAccelMap::changed.
3621
3622 Fri Feb  6 23:08:29 2004  Matthias Clasen  <maclas@gmx.de>
3623
3624         * gtk/gtktextbtree.c (_gtk_text_btree_check): 
3625         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
3626         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
3627         Actually free the lists. Pointed out by Morten Welinder.
3628         
3629 Fri Feb  6 22:38:54 2004  Matthias Clasen  <maclas@gmx.de>
3630
3631         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Handle character 
3632         positions in UTF-8 strings correctly.  (#133315, Theppitak 
3633         Karoonboonyanan)
3634
3635 2004-02-06  Morten Welinder  <terra@gnome.org>
3636
3637         * gtk/gtktoolbar.c (show_menu): Cleanup using
3638         gtk_menu_attach_to_widget.  Also fixes leak, see #133411.
3639
3640 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
3641
3642         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free the
3643         list.  Fixes #133546.
3644
3645 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
3646
3647         Fix #132327.
3648
3649         * gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add a
3650         folder_hash field to keep a list of live folder objects.
3651         (gtk_file_system_unix_init): Create the folder_hash.
3652         (gtk_file_system_unix_finalize): Destroy the folder_hash.
3653         (gtk_file_system_unix_get_folder): Ref and return an existing
3654         folder if we have it around, otherwise return a new folder object.
3655         (struct _GtkFileFolderUnix): Add a field for the parent file system.
3656         (gtk_file_folder_unix_finalize): Remove the folder from the file
3657         system's hash table.
3658         (gtk_file_system_unix_create_folder):  Emit "files-added" on the
3659         newly-created folder's parent.  Fixes #132327.
3660
3661 Fri Feb  6 00:51:57 2004  Matthias Clasen  <maclas@gmx.de>
3662
3663         * gtk/gtkstock.c (builtin_items): Change the labels of the 
3664         ZOOM_100 and ZOOM_FIT stock items to "_Normal Size" and
3665         "Best _Fit", to be HIG compliant.  (#124080, Mariano 
3666         Suárez-Alvarez)
3667
3668 Fri Feb  6 00:45:16 2004  Matthias Clasen  <maclas@gmx.de>
3669
3670         * gtk/gtkcombobox.c (gtk_combo_box_finalize): Add a finalize 
3671         function to plug a few memory leaks.  (#133544, Morten Welinder)
3672
3673 Fri Feb  6 00:15:38 2004  Matthias Clasen  <maclas@gmx.de>
3674
3675         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_mnemonic_activate): 
3676         Support mnemonic_activate here as well.
3677         
3678         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Focus
3679         the button, not the tree_view.
3680
3681 Thu Feb  5 23:48:19 2004  Matthias Clasen  <maclas@gmx.de>
3682
3683         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Add this
3684         function, to make mnemonic_activate work for combo boxes.
3685         (#133443, Paolo Borelli)
3686
3687 Thu Feb  5 22:05:52 2004  Matthias Clasen  <maclas@gmx.de>
3688
3689         * gtk/gtkfilesystemunix.c (bookmark_list_read): Initialize result
3690         to FALSE.  (#133539, Morten Welinder)
3691
3692 Thu Feb  5 21:36:43 2004  Matthias Clasen  <maclas@gmx.de>
3693
3694         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): Fix the logic
3695         of the depth one check.  (#133488, Christian Persch)
3696
3697 Thu Feb  5 01:50:19 2004  Matthias Clasen  <maclas@gmx.de>
3698
3699         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_paint): Fix
3700         the drawing of tearoff menu items which don't come first in their
3701         menu.  (#33311)
3702
3703 Thu Feb  5 00:59:08 2004  Matthias Clasen  <maclas@gmx.de>
3704
3705         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Use 
3706         g_completion_complete_utf8(). (#133313, Theppitak Karoonboonyanan)
3707
3708 2004-02-04  Federico Mena Quintero  <federico@ximian.com>
3709
3710         Fix #59707.
3711
3712         * gtk/gtklabel.c (gtk_label_focus): Removed, so we don't ignore
3713         the focus chain.
3714         (gtk_label_button_press): Fix prototype.
3715         (gtk_label_button_release): Likewise.
3716         (gtk_label_motion): Likewise.
3717
3718         * tests/testgtk.c (create_message_dialog): For the dialog with
3719         only GTK_BUTTONS_CLOSE, make GTK_RESPONSE_CLOSE the default.
3720
3721 2004-02-04  Morten Welinder  <terra@gnome.org>
3722
3723         * gtk/gtktoolbar.c (show_menu): Show on the right screen.  (Fixes
3724         bug 133411, apart from the leak.)
3725
3726 Tue Feb  3 13:39:27 2004  Manish Singh  <yosh@gimp.org>
3727
3728         * gtk/gtkadjustment.c (gtk_adjustment_new): pass value in last
3729         in g_object_new, since it depends on lower and upper being set.
3730
3731 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
3732
3733         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): Make the
3734         window not resizable.  Fixes #114032.
3735
3736 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
3737
3738         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add
3739         documentation for the use_separator style property.
3740
3741 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
3742
3743         Fix #68938.
3744
3745         * gtk/gtkdialog.c (GtkDialogPrivate): New private structure for
3746         GtkDialog; right now it only contains an ignore_separator field.
3747         (gtk_dialog_class_init): Register the private structure.
3748         (gtk_dialog_init): Initialize the priv->ignore_separator field.
3749         (_gtk_dialog_set_ignore_separator): New private function.
3750         (gtk_dialog_set_has_separator): Ignore the setting if appropriate.
3751
3752         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add a
3753         use_separator style property.
3754         (gtk_message_dialog_style_set): Change the dialog's separator
3755         based on the style property.
3756         (gtk_message_dialog_init): Set the dialog box to ignore the
3757         separator setting.
3758
3759 Tue Feb  3 02:35:09 2004  Matthias Clasen  <maclas@gmx.de>
3760
3761         * gtk/Makefile.am: Build filesystemwin32.c if OS_WIN32 and
3762         also dist gtkfilesystemwin32.[hc].
3763
3764 Tue Feb  3 02:04:44 2004  Matthias Clasen  <maclas@gmx.de>
3765
3766         * gtk/gtklabel.c (gtk_label_ensure_layout): Right-justify labels
3767         in rtl mode.  (#129071, chinen@jp.ibm.com)
3768
3769 Tue Feb  3 02:01:25 2004  Matthias Clasen  <maclas@gmx.de>
3770
3771         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Exchange the
3772         meaning GTK_MENU_DIR_PARENT/CHILD and GTK_MENU_DIR_PREV/NEXT in rtl
3773         mode.  (#107528)
3774
3775 Tue Feb  3 01:38:06 2004  Matthias Clasen  <maclas@gmx.de>
3776
3777         Clip narrow columns in rtl-oriented tree views (#128089,  
3778         chinen@jp.ibm.com):
3779         
3780         * gtk/gtkstyle.c (gtk_default_draw_option): 
3781         * gtk/gtkstyle.c (gtk_default_draw_check): Clip to the 
3782         given area.
3783
3784         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action): 
3785         Use the right clip area when calling gtk_cell_renderer_render().
3786         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_draw_focus): 
3787         Use the right clip area when calling gtk_paint_focus().
3788         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): 
3789         Use the right clip area when calling gtk_paint_toggle() or
3790         gtk_paint_check().
3791         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
3792         Clip to the expose_area when drawing the background rectangle.
3793         
3794 Tue Feb  3 00:14:36 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3795
3796         * gdk/x11/gdkgeometry-x11.c (queue_item_free, gdk_window_queue):
3797         Use a weak reference instead of ref()/unref(). (#60857, reported
3798         by Joshua N Pritikin)
3799
3800         * gdk/gdkimage.c (scratch_image_info_for_depth): Formatting fix.
3801
3802 Tue Feb  3 00:15:17 2004  Matthias Clasen  <maclas@gmx.de>
3803
3804         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add 
3805         init_hadjust_value and prev_width.
3806         * gtk/gtktreeview.c (gtk_tree_view_init): Initialize 
3807         them here.
3808         * gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
3809         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
3810         here to properly handle the initial position of rtl-oriented
3811         tree views.  (#127581, chinen@jp.ibm.com)
3812
3813 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
3814
3815         Fix #130846, reported by R. McFarland <rwmcfa1@neces.com>.
3816
3817         * gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
3818         we handle an event in the colums, and FALSE at the end if the
3819         event is not handled at all.
3820
3821 Mon Feb  2 23:41:48 2004  Matthias Clasen  <maclas@gmx.de>
3822
3823         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): 
3824         Don't access the level after removing the node, since that may
3825         kill the level.  (#132615, Crispin Flowerday)
3826
3827 2004-02-02  Tor Lillqvist  <tml@iki.fi>
3828
3829         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Set the cursor
3830         in all cases. If no grab cursor specified, use the grabbing
3831         window's cursor. If the grabbing window has no cursor, use the
3832         default arrow cursor. (#118025)
3833
3834 Mon Feb  2 22:05:36 2004  Matthias Clasen  <maclas@gmx.de>
3835
3836         * gtk/gtkseparatormenuitem.c (gtk_separator_menu_item_init): The
3837         latest in menu separation technology.
3838
3839 Mon Feb  2 19:04:17 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3840
3841         * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else
3842         we have to take our chances with).
3843         
3844         (Bug 97510)
3845
3846 Mon Feb  2 18:45:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3847
3848         Fix bug 110224.
3849
3850         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
3851         Remove unused variable 'result'
3852
3853         * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions.
3854
3855         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them
3856         here.
3857
3858 Mon Feb  2 14:32:32 2004  Pablo Saratxaga  <pablo@mandrakesoft.com>
3859
3860         * configure.in po/uz*.po: changed default for Uzbek; now just "uz"
3861         is in cyrillic and "uz@Latn" for latin; "uz@Cyrl" has been removed
3862
3863 Sun Feb  1 16:34:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3864
3865         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Only start
3866         sliding when using the new API.
3867
3868 Sun Feb  1 16:03:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3869
3870         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
3871         item_area is positioned correctly. Fix #133070, reported by Jeroen
3872         Zwartepoorte.
3873
3874 Sat Jan 31 23:13:43 2004  Matthias Clasen  <maclas@gmx.de>
3875
3876         * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't
3877         crash when finalizing an unused GtkTextChildAnchor.  (#132260,
3878         muppet)
3879
3880 Sat Jan 31 22:41:57 2004  Matthias Clasen  <maclas@gmx.de>
3881
3882         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct
3883         the documentation for new_order.  (#124790, Tim-Philipp Müller)
3884
3885 Sat Jan 31 22:38:07 2004  Matthias Clasen  <maclas@gmx.de>
3886
3887         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
3888         Reset use_resized_width when setting fixed_width.  (#108612, 
3889         Felipe Heidrich) 
3890
3891 Sat Jan 31 16:27:44 2004  Matthias Clasen  <maclas@gmx.de>
3892
3893         * gtk/gtkmain.c (gtk_key_snooper_remove): Don't leak the
3894         GtkKeySnooperData.  (#132038, R. McFarland)
3895
3896 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
3897
3898         Fixes #132975.
3899
3900         * gtk/gtkfilesystem.c (gtk_file_system_make_path): Return NULL,
3901         not FALSE.
3902         (gtk_file_system_volume_render_icon): Likewise.
3903
3904         * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
3905         Likewise.
3906
3907         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Return 0,
3908         not FALSE.
3909
3910         * gtk/gtktoolbar.c (gtk_toolbar_get_drop_index): Return -1, not
3911         FALSE.
3912
3913         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): Return 0,
3914         not FALSE.
3915         (gtk_text_iter_get_bytes_in_line): Likewise.
3916
3917         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
3918         Likewise.
3919
3920         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Return FALSE, not
3921         0.
3922
3923 2004-01-30  Not Zed  <NotZed@Ximian.com>
3924
3925         Fixes #132929.
3926
3927         * gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
3928         handler when we clear the timeout id.
3929
3930 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
3931
3932         Fix #129872, based on a patch by Jan Arne Petersen
3933         <jpetersen@uni-bonn.de>
3934
3935         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_list_bookmarks):
3936         Implement.
3937         (gtk_file_system_unix_add_bookmark): Implement.
3938         (gtk_file_system_unix_remove_bookmark): Implement.
3939
3940 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
3941
3942         Fixes #132693.
3943
3944         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_parent): Don't
3945         use filename_from_path().  Also, check that the filename is
3946         absolute.
3947         (gtk_file_system_unix_get_folder): Likewise.
3948         (gtk_file_system_unix_create_folder): Likewise.
3949         (gtk_file_system_unix_make_path): Likewise.
3950         (gtk_file_system_unix_parse): Likewise.
3951         (gtk_file_folder_unix_get_info): Likewise.
3952         (filename_from_path): Removed.
3953
3954 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
3955
3956         * gtk/gtkcalendar.c (arrow_action): Remove C++ comment; reported
3957         by Damien Carbery <damien.carbery@sun.com>.  Fixes #132956.
3958
3959 Fri Jan 30 11:37:37 2004  Owen Taylor  <otaylor@redhat.com>
3960
3961         * gdk/x11/gdkdrawable-x11.c: Revert changes from
3962         #113476 and go back to using XftDrawSetClip, because
3963         XftDrawSetClipRectangles is buggy in XFree86-4.3.
3964
3965 Thu Jan 29 18:08:06 2004  Owen Taylor  <otaylor@redhat.com>
3966
3967         * gtk/gtktextlayout.c (line_display_iter_to_index)
3968         * gtk/gtktextlayout.c (line_display_index_to_iter): Only
3969         adjust the preedit position for lines that include the
3970         preedit string. (#132353, Yao Zhang). How the heck
3971         did this work as well as it did?!?!
3972
3973         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): 
3974         Reverse change to change of XNFilterEvents event mask from
3975         #110493 -- it's documented and in the Xlib code an
3976         unsigned long. 
3977         
3978         * modules/input/gtkimcontextxim.c (preedit_start_callback): 
3979         Return -1 rather than void to indicate no length limit.
3980         (#129548)
3981
3982 Fri Jan 30 00:45:46 2004  Matthias Clasen  <maclas@gmx.de>
3983
3984         * gtk/gtkadjustment.c: Add properties to GtkAdjustment.
3985         (#64601, Murray Cumming)
3986
3987 Fri Jan 30 00:13:46 2004  Matthias Clasen  <maclas@gmx.de>
3988
3989         * gtk/gtkcombo.c (gtk_combo_set_popdown_strings): Allow NULL
3990         for strings to clear the list.  (#105386, Marco Pesenti Gritti)
3991         
3992 2004-01-28  Richard Hult  <richard@imendio.com>
3993
3994         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size):
3995         Free font_desc.  Fixes #132805.
3996
3997 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
3998
3999         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): Free the GError.
4000         Patch provided by Christian Persch <chpe@stud.uni-saarland.de>
4001         Fixes #132574.
4002
4003 Thu Jan 29 11:00:18 2004  Owen Taylor  <otaylor@redhat.com>
4004
4005         * gtk/gtkselection.c (gtk_selection_default_handler): 
4006         nul-terminate the target atoms. (#132656, Christian Persch)
4007
4008 Thu Jan 29 00:59:03 2004  Matthias Clasen  <maclas@gmx.de>
4009
4010         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
4011         Don't leak path if we bail out early.  (#132505, Christian Persch)
4012
4013 Thu Jan 29 00:48:47 2004  Matthias Clasen  <maclas@gmx.de>
4014
4015         * gtk/gtkactiongroup.c (gtk_action_group_add_toggle_actions_full):
4016         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Do
4017         reference counting on the user_data that is shared between
4018         multiple signal handlers, to avoid calling the destroy notify
4019         multiple times.  (#132447, Adam Hooper)
4020
4021 2004-01-28  Hans Breuer  <hans@breuer.org>
4022
4023         * gtk/stock-icons/stock_network_(16|24).png : new GTK_STOCK_NETWORK ...
4024           gtk/gtkstock.[hc] : ... define ...
4025           gtk/gtkiconfactory.c : ... register ...
4026           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc : ... compile ...
4027         * gtk/gtkfilesystemwin32.c : ... and use. Also adapt to recent 
4028         IFace changes.
4029
4030         * gtk/gtk.def : added a bunch of new exported symbols
4031
4032         * tests/testfilechooser.c (no_backup_files_filter) : don't crash
4033         on filter_info->display_name being NULL
4034
4035         * tests/testgtk.c : make testgtk --bench=all work again
4036
4037 Wed Jan 28 21:40:47 2004  Matthias Clasen  <maclas@gmx.de>
4038
4039         * gtk/gtkentrycompletion.c (gtk_entry_completion_action_data_func):
4040         Don't leak string.  (#132482, Christian Persch)
4041
4042 Tue Jan 27 18:45:47 2004  Manish Singh  <yosh@gimp.org>
4043
4044         * m4macros/gtk-2.0.m4: quote AC_DEFUN macro names so automake
4045         1.8 won't whine at us.
4046
4047 2004-01-28  Tor Lillqvist  <tml@iki.fi>
4048
4049         * gdk/win32/gdkevents-win32.c (synthesize_leave_event,
4050         synthesize_enter_event): Don' generate enter or leave events if
4051         the pointer is grabbed with owner_events off, and the grab event
4052         mask doesn't ask for them. (#129242)
4053
4054         (gdk_event_translate): Ditto for focus change events.
4055
4056 2004-01-27  Federico Mena Quintero  <federico@ximian.com>
4057
4058         Fix #132314.
4059
4060         * gtk/gtkfilesystem.h: Removed the #ifdef-ed out, old icon API.
4061
4062         * gtk/gtkfilesystem.c: Likewise.
4063
4064         * gtk/gtkfilesystemunix.c (filename_get_info): Removed the old
4065         icon-type code.
4066         (gtk_file_system_unix_render_icon): Moved the icon-rendering code
4067         from GtkFileInfo to here.
4068         (gtk_file_system_unix_volume_render_icon): Implement.
4069
4070 2004-01-28  Changwoo Ryu  <cwryu@debian.org>
4071
4072         * modules/input/imhangul-defs.h: 
4073         * modules/input/imhangul.c:
4074         * modules/input/Makefile.am: Remove broken hangul input module.
4075         
4076 Tue Jan 27 01:56:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4077
4078         * gtk/gtktoolbar.c: Remove obsolete comment.
4079
4080         * gtk/gtktoolbar.c (DEFAULT_SPACE_SIZE, SPACE_LINE_START, 
4081         SPACE_LINE_END): Make separators wider and taller, so they are
4082         easier to pick up when editing the toolbar.
4083
4084         * gtk/gtktoolbar.c (slide_idle_handler): Add a comment, simplify
4085         a bit, 
4086
4087         * gtk/gtktoolbar.c (rect_within): Formatting fix
4088
4089         * gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
4090         sliding feel more responsive by only restarting sliding when the
4091         placeholder actually changes its goal allocation.
4092
4093 Tue Jan 27 02:00:37 2004  Matthias Clasen  <maclas@gmx.de>
4094
4095         * gtk/gtktreeitem.c (gtk_tree_item_add_pixmaps): Avoid a 
4096         compiler warning.  (#122725, Kjartan Maraas)
4097         
4098 Tue Jan 27 01:46:54 2004  Matthias Clasen  <maclas@gmx.de>
4099
4100         Make menus work better on Xinerama (#126150):
4101         
4102         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Calculate the 
4103         monitor_num on the screen of the menu, not of the attach widget.
4104
4105         * gtk/gtkmenu.c (menu_change_screen): Forget the stored monitor_num. 
4106         (gtk_menu_window_size_request): Remember the monitor_num.
4107
4108 2004-01-26  Federico Mena Quintero  <federico@ximian.com>
4109
4110         Fix #105497; constify uses of GdkColor.
4111
4112         * gdk/gdkgc.c (gdk_gc_set_rgb_fg_color): Constify.
4113         (gdk_gc_set_rgb_bg_color): Constify.
4114         (gdk_gc_set_foreground): Constify.
4115
4116         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): Constify.
4117         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Constify.
4118         * gdk/linux-fb/gdkcursor-fb.c (gdk_cursor_new_from_pixmap): Constify.
4119
4120         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_create_from_data): Constify.
4121         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data): Constify.
4122         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_create_from_data): Constify.
4123
4124         * gdk/x11/gdkwindow-x11.c (gdk_window_set_background): Constify.
4125         * gdk/win32/gdkwindow-win32.c (gdk_window_set_background): Constify.
4126         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Constify.
4127
4128         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors): Constify.
4129         (gdk_draw_layout_with_colors): Constify.
4130
4131         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): Constify.
4132         (gdk_pixmap_colormap_create_from_xpm): Constify.
4133         (gdk_pixmap_create_from_xpm): Constify.
4134         (gdk_pixmap_colormap_create_from_xpm_d): Constify.
4135         (gdk_pixmap_create_from_xpm_d): Constify.
4136
4137         * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Constify.
4138
4139         * gtk/gtkclist.c (gtk_clist_set_foreground): Constify.
4140         (gtk_clist_set_background): Constify.
4141
4142         * gtk/gtkcolorbutton.c (gtk_color_button_new_with_color): Constify.
4143         (gtk_color_button_set_color): Constify.
4144
4145         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_color):
4146         Constify and add a check for color != NULL.
4147         (gtk_color_selection_get_current_color): Add a check for color != NULL.
4148         (gtk_color_selection_set_previous_color): Constify and add a check
4149         for color != NULL.
4150         (gtk_color_selection_get_previous_color): Add a check for color != NULL.
4151
4152         * gtk/gtkctree.c (gtk_ctree_node_set_foreground): Constify.
4153         (gtk_ctree_node_set_background): Constify.
4154
4155         * gtk/gtktext.c (gtk_text_insert): Constify.
4156         (insert_text_property): Constify.
4157         (text_properties_equal): Constify.
4158         (new_text_property): Constify.
4159
4160         * gtk/gtkwidget.c (gtk_widget_modify_color_component): Constify.
4161         (gtk_widget_modify_fg): Constify.
4162         (gtk_widget_modify_bg): Constify.
4163         (gtk_widget_modify_text): Constify.
4164         (gtk_widget_modify_base): Constify.
4165
4166 2004-01-26  Christian Rose  <menthos@menthos.com>
4167
4168         * configure.in: Added "mi" to ALL_LINGUAS.
4169
4170 2004-01-25  Tor Lillqvist  <tml@iki.fi>
4171
4172         * gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the
4173         WM_TRANSIENT_FOR property is being deleted, set the owner of the
4174         window to the root window (i.e., effectively unset it). (#132411)
4175
4176         * gdk/win32/gdkprivate-win32.h
4177         * gdk/win32/gdkglobals-win32.c
4178         * gdk/win32/gdkmain-win32.c: Declare, define and initialize
4179         _wm_transient_for, a GdkAtom for WM_TRANSIENT_FOR.
4180
4181         * acconfig.h: Remove HAVE_WINSOCK_H, not used any longer.
4182
4183 Sun Jan 25 15:14:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4184
4185         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Base the decision
4186         to map/unmap items on whether they are actually allocated outside
4187         the toolbar, not on whether that will eventually happen. Improves
4188         animation in the presence of overflown items.
4189
4190         * gtk/gtktoolbar.c (gtk_toolbar_begin_sliding): Add a
4191         queue_resize() to so that the items will get their new goal
4192         values and the idle handler will not immediately return FALSE.
4193
4194         * gtk/gtktoolbar.c (slide_idle_handler): simplify the logic and
4195         make sure that a placeholder becoming invisible doesn't cause a
4196         return TRUE.
4197
4198         * gtk/gtktoolbar.c (get_item_size): Don't special case
4199         placeholders here.
4200
4201 Sat Jan 24 23:17:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4202
4203         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
4204         try to pack icon if there actually is one.
4205
4206         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
4207         OVERFLOWN items get an allocation even when they are
4208         unmapped. This ensures they will slide in properly.
4209
4210         * gtk/gtktoolbar.c (slide_idle_handler): Make sure we return TRUE
4211         when there are overflown items that need to slide in. Also add
4212         comments and make formatting more readable.
4213
4214 Sat Jan 24 17:38:48 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4215
4216         * gtk/gtkradiotoolbutton.c (gtk_radio_tool_button_class_init):
4217         Add a write-only property ::group to be consistent with
4218         GtkRadioAction and GtkRadioButton. (#132159, Patch from Olivier
4219         Andrieu)
4220
4221 Fri Jan 23 23:46:12 2004  Matthias Clasen  <maclas@gmx.de>
4222
4223         * gtk/gtkfontbutton.c (gtk_font_button_label_use_font): Don't leak the 
4224         font description.  (#132168)
4225
4226 2004-01-23  Federico Mena Quintero  <federico@ximian.com>
4227
4228         Fix #132247.
4229
4230         * gtk/gtkfilechooserdefault.c (set_select_multiple): Handle folder
4231         mode.
4232         (set_select_multiple): Optionally notify about changes to the
4233         select-multiple property.
4234         (list_selection_changed): Change the condition for the editable row to
4235         test for save mode; this is more clear than testing for not being
4236         in multiple selection mode.
4237         (gtk_file_chooser_default_get_paths): Get impl->action directly
4238         rather than calling gtk_file_chooser_get_action().
4239         (entry_activate): Likewise.
4240         (set_select_multiple): Annotate about #133255.
4241         (update_chooser_entry): Likewise.
4242         (check_preview_change): Likewise.
4243         (tree_selection_changed): Likewise.
4244
4245 Fri Jan 23 14:56:18 2004  Jonathan Blandford  <jrb@gnome.org>
4246
4247         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
4248         when there are no columns, or all columns are hidden, #131402
4249
4250 Fri Jan 23 16:58:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4251
4252         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): Changing to 200 was a
4253         mistake. Change back to 225.
4254
4255 Thu Jan 22 18:46:05 2004  Owen Taylor  <otaylor@redhat.com>
4256
4257         * === Released 2.3.2 ===
4258
4259 Thu Jan 22 18:45:26 2004  Owen Taylor  <otaylor@redhat.com>
4260
4261         * gtk/gtkicontheme.c: Patch from Christian Neumair
4262         to make warning string more translator friendly.
4263
4264         * gtk/gtktreemodelfilter.h gtkseparatortoolitem.[ch]
4265         gtk/gtktoolbar.c: Parameter name fixes to keep gtk-doc
4266         happy.
4267
4268         * configure.in: Require GLib-2.3.2, version 2.3.2,
4269         interface age 0, binary age 302.
4270
4271         * NEWS: Organized, added some names.
4272
4273 Thu Jan 22 16:59:36 2004  Jonathan Blandford  <jrb@gnome.org>
4274
4275         * gtk/gtkliststore.c (gtk_list_store_reorder): Doc fix.
4276
4277 2004-01-22  Federico Mena Quintero  <federico@ximian.com>
4278
4279         * gtk/gtkwidget.c (gtk_widget_class_init): Added documentation for
4280         GtkWidget::popup_menu.
4281
4282 Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
4283
4284         * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
4285         info after calling gtk_menu_do_remove(), since that function
4286         uses the attach info. Doh!
4287
4288         * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
4289         for being 1 directly after setting it to 0.
4290
4291 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4292
4293         * NEWS: Updates
4294
4295 2004-01-22  Alexander Larsson  <alexl@redhat.com>
4296
4297         * gdk/x11/gdkwindow-x11.c (WINDOW_IS_TOPLEVEL):
4298         Fix typo
4299
4300 2004-01-21  Federico Mena Quintero  <federico@ximian.com>
4301
4302         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
4303         Free the path fields.
4304
4305         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): Free
4306         the root_path, reported by <scott@asofyet.org>
4307         (gtk_file_system_model_finalize): Unref the file system.
4308
4309         * gtk/gtkfilefilter.c (filter_rule_free): default:
4310         g_assert_not_reached().
4311         (gtk_file_filter_finalize): Free the filter->name, reported by
4312         <scott@asofyet.org>
4313         (gtk_file_filter_finalize): Free the rules list.
4314
4315 Wed Jan 21 18:10:40 2004  Jonathan Blandford  <jrb@gnome.org>
4316
4317         * gtk/gtkcolorbutton.c (gtk_color_button_set_color):redraw the
4318         color button when an alpha is set.
4319         (gtk_color_button_set_alpha): redraw the color button when an
4320         alpha is set.
4321
4322 Wed Jan 21 23:27:14 2004  Matthias Clasen  <maclas@gmx.de>
4323
4324         Fix #131869: 
4325         
4326         * gtk/gtkaction.c (_gtk_action_emit_activate): Hold
4327         a reference to the group while emitting the signals.
4328
4329         * gtk/gtkactiongroup.c (gtk_action_group_init): Use a 
4330         destroy notify which does not only unref, but also resets
4331         the action_group property of the action.
4332
4333 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
4334
4335         * NEWS: Added details about GtkFileChooser changes.
4336
4337 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
4338
4339         Fix #99425, add accessor functions for GtkPaned's children.
4340
4341         * gtk/gtkpaned.c (gtk_paned_get_child1): New function.
4342         (gtk_paned_get_child2): New function.
4343
4344 Tue Jan 20 23:49:52 2004  Matthias Clasen  <maclas@gmx.de>
4345
4346         * NEWS: Start of 2.3.2 section.
4347
4348 Tue Jan 20 22:11:31 2004  Matthias Clasen  <maclas@gmx.de>
4349
4350         Fixes for #130370, based on a patch by Michael Meeks:
4351         
4352         * gtk/gtkmenu.c (gtk_menu_do_remove): New auxiliary function to
4353         adjust cell positions and recalculate row and column counts after
4354         removing an item.
4355
4356         * gtk/gtkmenu.c (gtk_menu_remove): Call gtk_menu_do_remove.
4357
4358         * gtk/gtkmenu.c (gtk_menu_do_insert): Don't leave empty rows when
4359         appending items.
4360
4361         * gtk/gtkmenu.c (gtk_menu_attach): Don't call gtk_menu_shell_append,
4362         to avoid an unintended recursion.
4363
4364 2004-01-19  Federico Mena Quintero  <federico@ximian.com>
4365
4366         Fix #131418.
4367
4368         * gtk/gtkfilechooserdefault.c (set_select_multiple): New helper
4369         function.
4370         (gtk_file_chooser_default_set_property): Use
4371         set_select_multiple().  Also, re-set this mode to single if the
4372         file chooser is set to Save mode.
4373         (entry_activate): Handle the case where the entry is completely
4374         empty *and* its current folder does exist.  Also, there is need to
4375         test for select_multiple here now that we ensure that it won't
4376         happen during Save mode.
4377
4378 Sun Jan 18 15:25:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4379
4380         * gtk/gtktoolbar.[ch]: Add _gtk_toolbar_paint_space_line(),
4381         _gtk_toolbar_get_default_space_size ();
4382
4383         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose,
4384         get_space_size): Use them here.
4385
4386 Sun Jan 18 13:16:34 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4387
4388         * tests/testgtk.c (create_toolbar): Set a small size request and
4389         make the window resizable, to test mapping/unmapping of buttons.
4390
4391         * gtk/gtktoolbar.c (gtk_toolbar_remove_content,
4392         gtk_toolbar_insert_tool_item): remove these functions.
4393
4394         * gtk/gtktoolbar.c (gtk_toolbar_show_all,
4395         toolbar_content_show_all, gtk_toolbar_hide_all,
4396         toolbar_content_hide_all): New functions. 
4397
4398         Ignore show_all/hide_all for buttons created in compatibility mode.
4399
4400         * gtk/gtktoolbar.c (internal_insert_element, gtk_toolbar_show_all,
4401         gtk_toolbar_hide_all): Make sure buttons are ignored by
4402         gtk_toolbar_show_all() and gtk_toolbar_hide_all().
4403         
4404         * gtk/gtktoolbar.c: s/regular_widget/compatibility/g
4405
4406         * gtk/gtktoolbar.c (struct _ToolbarContent): Allocate
4407         GtkToolbarChild inline. Get rid of GtkToolbarChildSpace.
4408
4409         * gtk/gtktoolbar.c (toolbar_content_expose): Fix bug where widget
4410         could become NULL.
4411
4412         * gtk/gtktoolbar.c (gtk_toolbar_add): Append new tool items
4413         instead of prepending them.
4414
4415         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Use the same
4416         'elapsed' for all items.
4417
4418         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Turn booleans
4419         into bitfields.
4420
4421         * gtk/gtktoolbar.c: Many formatting fixes
4422         
4423 Sun Jan 18 01:51:12 2004  Matthias Clasen  <maclas@gmx.de>
4424
4425         * configure.in: Add the necessary magic to create
4426         po-properties/Makefile.
4427
4428 Sat Jan 17 23:05:52 2004  Matthias Clasen  <maclas@gmx.de>
4429
4430         The second part of the fix for #114351 (see also 
4431         gdk-pixbuf/ChangeLog and po/ChangeLog):
4432
4433         * Makefile.am (SUBDIRS): Add po-properties.
4434
4435         * configure.in (AC_CONFIG_FILES): Add po-properties/Makefile.in 
4436
4437         * gdk/gdkintl.h (P_): 
4438         * gtk/gtkintl.h (P_): Use translation domain gtk20-properties. 
4439
4440         * gtk/gtkmain.c (gtk_parse_args): Call bindtextdomain and
4441         bind_textdomain_codeset for gtk20-properties as well.
4442
4443 Sat Jan 17 22:00:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4444
4445         * gtk/gtktoolbar.c: 
4446
4447         Fix rest of #128678: Implement all the toolbar_content()
4448         methods for the old API case.
4449
4450 Sat Jan 17 16:53:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4451
4452         * gtk/gtktoolbar.c: 
4453
4454         Phase 1 of fixing #128678: Only access ToolbarContent through a
4455         set of new functions:
4456
4457         toolbar_content_expose, toolbar_content_visible,
4458         toolbar_content_size_request, toolbar_content_is_homogeneous,
4459         toolbar_content_get_child_requisition,
4460         toolbar_content_is_placeholder, toolbar_content_disappearing,
4461         toolbar_content_get_state, toolbar_content_child_visible,
4462         toolbar_content_get_goal_allocation,
4463         toolbar_content_get_allocation,
4464         toolbar_content_set_start_allocation,
4465         toolbar_content_get_start_allocation, toolbar_content_get_expand,
4466         toolbar_content_set_goal_allocation,
4467         toolbar_content_set_child_visible, toolbar_content_size_allocate,
4468         toolbar_content_set_state, toolbar_content_get_widget,
4469         toolbar_content_set_disappearing,
4470         toolbar_content_set_size_request,
4471         toolbar_content_toolbar_reconfigured,
4472         toolbar_content_retrieve_menu_item, 
4473         toolbar_content_new_tool_item, toolbar_content_destroy,
4474         toolbar_content_is_separator
4475
4476         Also fix #127092.
4477         
4478 Sat Jan 17 12:55:13 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4479
4480         * gtk/gtktoolitem.c (gtk_tool_item_finalize): don't leak the menu
4481         item ID.
4482
4483 Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4484
4485         * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
4486         overflow menu.
4487         
4488         * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
4489         [#127726]
4490
4491 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4492
4493         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
4494         has_editable field.
4495         (_gtk_file_system_model_add_editable): New function.
4496         (_gtk_file_system_model_remove_editable): New function.
4497         (gtk_file_system_model_get_value): Return appropriate values for
4498         the temporary editable row.
4499         (_gtk_file_system_model_get_info): Handle the editable row.
4500         (_gtk_file_system_model_get_path): Likewise.
4501
4502         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks):
4503         Removed an unused variable.
4504         (toolbar_button_new): Optionally show the button.
4505         (up_button_clicked_cb): Renamed from up_button_cb(), fixed prototype.
4506         (toolbar_create): Add a "New Folder" button for Save mode.
4507         (error_building_filename_dialog): New helper function.
4508         (gtk_file_chooser_default_get_paths): Use error_building_filename_dialog().
4509         (create_file_list): Connect to the "edited" signal of the text
4510         cell renderer.  Store the name column and text renderer in the
4511         impl structure.
4512         (renderer_edited_cb): New callback.
4513         (gtk_file_chooser_default_set_property): Show/hide the "New
4514         folder" button when the save action changes.
4515         (COMPARE_DIRECTORIES): Allow the info values to be NULL.
4516         (COMPARE_DIRECTORIES): Duh, use the list_model, not the
4517         tree_model.
4518         (get_list_file_info): Likewise!
4519         (list_icon_data_func): Handle the path being NULL.
4520         (new_folder_button_clicked): New callback.
4521         (list_name_data_func): If we are on the editable row, set the text
4522         to "Type name of new folder".
4523         (list_selection_changed): Handle the editable row.
4524         (list_mtime_data_func): Likewise.
4525
4526         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Return
4527         NULL, not FALSE.
4528         (gtk_file_system_unix_create_folder): Test the result of mkdir() correctly.
4529
4530 Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>
4531
4532         The first part of the fix for #114351 (see also 
4533         gdk-pixbuf/ChangeLog and po/ChangeLog):
4534         
4535         * gtk/gtkintl.h: 
4536         * gdk/gdkintl.h: Define P_() for property blurbs and nicks.
4537
4538         * gdk/gdkdisplaymanager.c:
4539         * modules/input/gtkimcontextxim.c:
4540         * gtk/*.c:  Mark property blurbs and nicks with P_().
4541         
4542 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4543
4544         Fix #130969.
4545
4546         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): Added an
4547         editing_canceled signal.
4548
4549         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Create the
4550         "editing-canceled" signal.
4551         (gtk_cell_renderer_editing_canceled): New function.
4552
4553         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
4554         Call gtk_cell_renderer_editing_canceled().
4555
4556 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4557
4558         * gtk/gtkfilechooserdefault.c
4559         (gtk_file_chooser_default_set_property): Do not allow setting
4560         select_multiple when in Save mode.
4561         (set_list_model): No need to nullify the list_model and
4562         sort_model.
4563         (gtk_file_chooser_default_get_paths): Handle folder mode as well.
4564         (get_paths_foreach): Likewise.
4565
4566         * gtk/gtkfilechooser.c (gtk_file_chooser_get_filename): Clarify
4567         documentation about folder mode.
4568         (gtk_file_chooser_get_uri): Likewise.
4569
4570 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
4571
4572         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): New
4573         get_volume_for_path() method.
4574         (struct _GtkFileSystemIface): Finally removed the list_roots() and
4575         get_root_info() methods, and the "roots-changed" signal.
4576
4577         * gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path): New
4578         function.
4579         (gtk_file_system_list_roots): Removed.
4580         (gtk_file_system_get_root_info): Removed.
4581
4582         * gtk/gtkfilesystemunix.c
4583         (gtk_file_system_unix_get_volume_for_path): Implement.
4584         (get_root_volume): New helper function.
4585         (gtk_file_system_unix_list_volumes): Use get_root_volume().
4586         (gtk_file_system_unix_list_roots): Removed.
4587         (gtk_file_system_unix_get_root_info): Removed.
4588
4589         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Don't
4590         accept a NULL root_path.
4591         (struct _GtkFileSystemModel): Add a field to remember the
4592         root_path.
4593         (_gtk_file_system_model_new): Store the root_path in the model
4594         structure.
4595         (find_and_ref_path): Stop going up the hierarchy at the root_path
4596         of the model.  Also, don't return prematurely when walking up the
4597         hierarchy.
4598
4599         * gtk/gtkfilechooserdefault.c (create_file_list): Sigh, restore
4600         the rules_hint.
4601         (struct _GtkFileChooserDefault): Added a current_volume_path field.
4602         (set_tree_model): New function; create the folder tree model here.
4603         (create_folder_tree): Don't create the model here.
4604         (set_list_model): Set the show_hidden flag on the list model.
4605
4606 Fri Jan 16 00:04:43 2004  Matthias Clasen  <maclas@gmx.de>
4607
4608         * gtk/gtknotebook.h:
4609         * gtk/gtknotebook.c (gtk_notebook_append_page): 
4610         * gtk/gtknotebook.c (gtk_notebook_append_page_menu): 
4611         * gtk/gtknotebook.c (gtk_notebook_prepend_page): 
4612         * gtk/gtknotebook.c (gtk_notebook_prepend_page_menu): 
4613         * gtk/gtknotebook.c (gtk_notebook_insert_page): 
4614         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Return the
4615         index of the newly inserted page.  (#130986, Olexiy Avramchenko) 
4616
4617 Thu Jan 15 23:17:14 2004  Matthias Clasen  <maclas@gmx.de>
4618
4619         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Inserting
4620         a 'newly-allocated' to hint that the list should be freed after
4621         use.
4622
4623 Wed Jan 14 18:01:52 2004  Jonathan Blandford  <jrb@gnome.org>
4624
4625         * gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
4626         to after handling the button presses in the TreeView to avoid
4627         getting multiple selection_changes()
4628
4629 Wed Jan 14 21:16:20 2004  Matthias Clasen  <maclas@gmx.de>
4630
4631         * gtk/gtkimcontext.c: Documentation fix.  (#131335, Theppitak 
4632         Karoonboonyanan)
4633
4634 Wed Jan 14 21:00:49 2004  Matthias Clasen  <maclas@gmx.de>
4635
4636         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
4637         Don't leak name and stock_id.  (#131358, Morten Welinder)
4638
4639 Wed Jan 14 13:07:30 GMT 2004  Tony Gale <gale@gtk.org>
4640
4641         * docs/faq/gtk-faq.sgml: Updates to Section 5
4642
4643 Wed Jan 14 02:34:57 2004  Matthias Clasen  <maclas@gmx.de>
4644
4645         * gtk/gtkradioaction.c: Add a writable group property to align
4646         with the GtkRadioButton API.  (#129166, Olivier Andrieu) 
4647
4648 Tue Jan 13 14:48:27 GMT 2004  Tony Gale <gale@gtk.org>
4649
4650         * docs/faq/gtk-faq.sgml: Update info on using autoconf
4651
4652 Mon Jan 12 23:40:34 2004  Matthias Clasen  <maclas@gmx.de>
4653
4654         * tests/testmerge.c: Adjust to the new connect_proxy signals.
4655
4656         * gtk/gtkuimanager.c
4657         * gtk/gtkactiongroup.c
4658         * gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
4659         from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
4660         removes the confusion between the disconnect_/connect_proxy signals 
4661         and the (unrelated) virtual functions of the same name and aligns
4662         the setup with the pre_/post_activate signals.
4663
4664 2004-01-12  Jody Goldberg <jody@gnome.org>
4665
4666         * gtk/gtkaction.c (connect_proxy) : only connect activate for menus
4667           with no submenus otherwise it looks like we activate every time a
4668           submenu opens.
4669
4670 2004-01-12  Jody Goldberg <jody@gnome.org>
4671
4672         * gtk/gtkuimanager.c: Remove accidentially committed debug spew.
4673
4674 Sun Jan 11 01:55:07 2004  Matthias Clasen  <maclas@gmx.de>
4675
4676         * gtk/gtkaccelmap.c: Remove accidentally committed notification stuff. 
4677         (gtk_accel_map_lock_path): 
4678         (gtk_accel_map_unlock_path): Path locking can now be nested, a missing
4679         entry is silently created during lock_path(), and treated as an error 
4680         during unlock_path(). These changes have been requested by Tim Janik.
4681
4682 2004-01-10  Jody Goldberg <jody@gnome.org>
4683
4684         * gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
4685         s/merge_signals/ui_manager_signals/ for readability.
4686         (gtk_ui_manager_class_init) : add pre_activate and post_activate
4687           signals.
4688         (cb_proxy_pre_activate) : new.
4689         (cb_proxy_post_activate) : new.
4690         (gtk_ui_manager_insert_action_group) : connect the proxies for
4691           GtkActionGroup::pre/post_activate
4692         (gtk_ui_manager_remove_action_group) : disconnect them.
4693
4694         * gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
4695           'sensitive', and 'visible' properties.  Also add pre_activate and
4696           post_activate signals to help deal with activations at a higher
4697           level (eg GtkUIManager)
4698         (gtk_action_group_init) : init sensitive and visible
4699         (gtk_action_group_set_property) : add sensitive and visible
4700         (gtk_action_group_get_property) : add sensitive and visible
4701         (gtk_action_group_get_sensitive) : new.
4702         (gtk_action_group_get_visible) : new.
4703         (cb_set_action_sensitivity) : new with minor optimization that only
4704           signals sensitivity changes if the action could possibly change.
4705         (cb_set_action_visiblility) : ditto.
4706         (gtk_action_group_set_sensitive) : new.  walk the actions directly
4707           rather than using notify::sensitive because that is simpler, easier
4708           to read, and more efficient.
4709         (gtk_action_group_set_visible) : ditto.
4710         (gtk_action_group_add_action) : Each action can only be in 1 group,
4711           set GtkAction::action_group.
4712         (gtk_action_group_remove_action) : clear it.
4713         (gtk_action_group_add_toggle_actions_full) : warning suppression.
4714         (gtk_action_group_add_radio_actions_full) : warning suppression.
4715         (_gtk_action_group_emit_pre_activate) : new protected routine for use
4716           by GtkAction.
4717         (_gtk_action_group_emit_post_activate) : ditto.
4718
4719         * gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
4720         (gtk_action_init) : initialize it.
4721         (gtk_action_get_property) : get.
4722         (gtk_action_set_property) : set it via
4723         (gtk_action_set_action_group) : new function.
4724         (gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
4725           with the logical sensitivity (action & group) rather than the simple
4726           action::sensitivity.
4727         (gtk_action_sync_visible) : use gtk_action_is_visible to handle
4728           logical visibility (action & group) rather than the simple
4729           action::visible.  Use widget show/hide directly.
4730         (connect_proxy) : handle the custom sensitivity handler.
4731           Make the TOOL_BUTTON signals more general and support TOOL_ITEM
4732           directly, with special cases for TOOL_BUTTON.  Still not especially
4733           good it might be useful to handle label/use_underline by parmspec
4734           lookup.  Those are likely to be implemented by custom types, and are
4735           assumed to exist in GtkToolItem.
4736         (disconnect_proxy) : disconnect the new sensitivity handler.
4737         (_gtk_action_emit_activate) : add pre/post signals.
4738         (gtk_action_activate) : use logical sensitivity.
4739         (gtk_action_is_sensitive) : logical sensitivity.
4740         (gtk_action_get_sensitive) : actual sensitivity.
4741         (closure_accel_activate) : use logical sensitivity.
4742
4743 Fri Jan  9 22:23:45 2004  Matthias Clasen  <maclas@gmx.de>
4744
4745         * gtk/gtkuimanager.c: Introduce a new parser state for 
4746         accelerator elements to avoid misparsing files containing 
4747         such elements.  (#131035, Morten Welinder)
4748
4749 Fri Jan  9 11:58:47 2004  Manish Singh  <yosh@gimp.org>
4750
4751         * gdk-pixbuf/gdk-pixbuf-io.c: #include <unistd.h> for unlink()
4752
4753 Fri Jan  9 15:28:21 GMT 2004  Tony Gale <gale@gtk.org>
4754
4755         * docs/faq/gtk-faq.sgml: update GtkEntry filter code example
4756
4757 Fri Jan  9 00:34:57 2004  Matthias Clasen  <maclas@gmx.de>
4758
4759         * gtk/gtkuimanager.h:
4760         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
4761         obtain a list of toplevel widgets constructed by the ui manager.
4762
4763         * gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that 
4764         the values can be combined for gtk_ui_manager_get_toplevels().
4765
4766         * tests/testmerge.c: Add a "Dump toplevels" button to test 
4767         gtk_ui_manager_get_toplevels().
4768
4769 Wed Jan  7 23:20:06 2004  Matthias Clasen  <maclas@gmx.de>
4770
4771         * demos/gtk-demo/Makefile.am (demos): Add entry_completion.c
4772         
4773         * demos/gtk-demo/entry_completion.c: New demo for GtkEntryCompletion 
4774         by Anders Carlsson  (#130464).
4775
4776 Wed Jan  7 23:07:28 2004  Matthias Clasen  <maclas@gmx.de>
4777
4778         * gtk/gtkmain.h: 
4779         * gtk/gtkmain.c (gtk_events_pending): Change the return value from 
4780         gint to gboolean.  (#130718, reported by Johannes Weißl)
4781
4782 Wed Jan  7 23:03:32 2004  Matthias Clasen  <maclas@gmx.de>
4783
4784         * gtk/gtkactiongroup.h: 
4785         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
4786         Remove the redundant name and stock_id parameters, adjust all callers.
4787
4788 Wed Jan  7 22:20:20 2004  Matthias Clasen  <maclas@gmx.de>
4789
4790         * gtk/gtkaction.h: 
4791         * gtk/gtkaction.c (gtk_action_new):  
4792         * gtk/gtktoggleaction.h: 
4793         * gtk/gtktoggleaction.c (gtk_toggle_action_new): 
4794         * gtk/gtkradioaction.h: 
4795         * gtk/gtkradioaction.c (gtk_radio_action_new): Add creation 
4796         functions for actions.
4797
4798         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
4799         (gtk_action_group_add_toggle_actions_full): 
4800         (gtk_action_group_add_radio_actions_full): and use the
4801         new functions here.  (#125322, Patch by Jeff Frank)
4802
4803 Wed Jan  7 21:42:49 2004  Matthias Clasen  <maclas@gmx.de>
4804
4805         * gtk/gtkaccelmap.c (gtk_accel_map_lock_path): Fix grammar of 
4806         docs.
4807
4808 2004-01-07  Jan Arne Petersen  <jpetersen@uni-bonn.de>
4809
4810         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
4811         (shortcuts_append_home), (shortcuts_append_desktop),
4812         (shortcuts_append_paths), (shortcuts_add_volumes),
4813         (shortcuts_append_bookmarks), (create_shortcuts_model),
4814         (gtk_file_chooser_default_add_shortcut_folder): add REMOVABLE column
4815         to the shortcuts_model.
4816
4817         (remove_bookmark_button_clicked_cb),
4818         (bookmarks_check_remove_sensitivity): use REMOVABLE column to check if
4819         bookmarks can be removed. Fixes #129873
4820
4821 Wed Jan  7 02:50:55 2004  Matthias Clasen  <maclas@gmx.de>
4822
4823         * demos/testpixbuf-save.c: Make s, S, Control-S, p, P, Control-P,
4824         i, I, Control-I test gdk_pixbuf_save(), gdk_pixbuf_save_to_buffer()
4825         and gdk_pixbuf_save_to_callback() with jpeg, png and ico formats, 
4826         respectively. Tests #82203.
4827
4828 2004-01-06  Federico Mena Quintero  <federico@ximian.com>
4829
4830         * gtk/gtkfilesel.c (gtk_file_selection_create_dir_confirmed): Use
4831         0777 as the mode for mkdir() and let the umask do the right
4832         thing.  Fixes #121819.
4833
4834         * gtk/gtkfilesystemunix.c (filename_is_root): g_path_skip_root()
4835         can return NULL; handle this.  Fixes #129565.
4836
4837 2004-01-06  Alexander Winston  <alexander.winston@comcast.net>
4838
4839         * gtk/gtkfilesel.c: (gtk_file_selection_delete_file): Removed space
4840         that proceeded the end-of-sentence punctuation. Fixes: #130353.
4841
4842 2004-01-06  Jody Goldberg <jody@gnome.org>
4843
4844         * gtk/gtktoolitem.c (gtk_tool_item_set_property) : Call 
4845           gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
4846
4847 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
4848
4849         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks): Oops,
4850         call shortcuts_add_bookmarks() here.
4851         (remove_bookmark_button_clicked_cb): Ahem, fetch the selected
4852         iter.
4853         (shortcuts_append_paths): Don't display error dialogs here.
4854         (create_file_list): Remove the @#$% rules hint.
4855
4856 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
4857
4858         * gtk/gtkfilechooserdefault.c (toolbar_button_new): New helper
4859         function.
4860         (toolbar_create): Do not use a toolbar widget, just an hbox
4861         instead.  Add the bookmarks buttons and the current folder label
4862         here.
4863         (create_filename_entry_and_filter_combo): Create the filter combo
4864         here.
4865         (filter_create): Don't show the filter combo initially.
4866         (up_button_cb): Renamed from toolbar_up_cb().
4867         (create_shortcuts_buttons): Removed.
4868
4869 2004-01-05  Murray Cumming  <murrayc@usa.net>
4870
4871         * gdk/gdkimage.h: Added <public> documentation to the struct, as
4872         suggested by Owen Taylor.
4873
4874 2004-01-05  Jody Goldberg <jody@gnome.org>
4875
4876         * gtk/gtkiconfactory.c (get_default_icons) : add stock indent, unindent
4877           I would have prefered outdent, but compatibility seems more
4878           important.
4879         * gtk/gtkstock.c (builtin_items) : ditto.
4880         * gtk/gtkstock.h : ditto.
4881         * gtk/stock-icons/Makefile.am : ditto.
4882         * gtk/stock-icons/stock_text_indent_16.png :
4883         * gtk/stock-icons/stock_text_indent_24.png :
4884         * gtk/stock-icons/stock_text_unindent_16.png :
4885         * gtk/stock-icons/stock_text_unindent_24.png : from gnome-icon-theme
4886
4887 Sun Jan  4 15:29:04 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4888
4889         * gtk/gtkradiotoolbutton.[ch]
4890         (gtk_radio_tool_button_new_with_stock_from_widget): Change API so
4891         group is a GtkRadioButton, not a GtkWidget.
4892
4893 2004-01-04  Hans Breuer  <hans@breuer.org>
4894
4895         * gdk/win32/gdkwindow-win32.c : use SWP_NOACTIVATE in 
4896         gdk_window_set_keep_(above|below) to make DND work again.
4897         Thanks to Alif Wahid for noticing.
4898
4899         * gdk/gdk.def : update externals
4900
4901         * gtk/gtkfilesystemwin32.c : adapt to GtkFileSystemIFace changes
4902
4903         * gtk/gtk-stock.[hc] gtk/gtkiconfactory.c 
4904           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc :
4905           gtk/stock-icons/stock_harddisk_16.png 
4906           gtk/stock-icons/stock_harddisk_24.png 
4907         Harddisk stock icons for file system implementations. Beside
4908         FLOPPY and CDROM there is now HARDDISK, probably some 
4909         GTK_STOCK_NETWORK would be useful, but I could not find one.
4910
4911 Sat Jan  3 11:39:42 2004  Manish Singh  <yosh@gimp.org>
4912
4913         * gtk/gtkclipboard.c: Update freedesktop.org clipboard doc link.
4914         Patch from Andrew Moise (#130462).
4915
4916 2004-01-01  Jody Goldberg <jody@gnome.org>
4917
4918         * gtk/gtkaction.c (_GtkActionPrivate) : add visible_horizontal,
4919           visible_vertical.
4920         (gtk_action_class_init) : here.
4921         (gtk_action_init) : here.
4922         (gtk_action_set_property) : here.
4923         (gtk_action_get_property) : here.
4924         (connect_proxy) : and here.
4925
4926 2003-12-30  Jody Goldberg <jody@gnome.org>
4927
4928         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel) :  new
4929           utility routine for use in derived GtkActions with the replicated code
4930           from.
4931         (gtk_action_group_add_actions_full) : here.
4932         (gtk_action_group_add_toggle_actions_full) : here.
4933         (gtk_action_group_add_radio_actions_full) : and here.
4934
4935 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
4936
4937         * configure.in: Added "bn" to ALL_LINGUAS.
4938
4939 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
4940
4941         * bn.po: Added Bangla translation by 
4942         of Ankur group <gnome-translation@bengalinux.org>.
4943
4944 Fri Jan  2 02:50:11 2004  Matthias Clasen  <maclas@gmx.de>
4945
4946         * gtk/gtkcalendar.c (gtk_calendar_compute_days): 
4947         * gtk/gtkcalendar.c (gtk_calendar_paint_day_names): 
4948         * gtk/gtkcalendar.c (gtk_calendar_init): Changes to support 
4949         week_start values other than 0 and 1, e.g. 6 will let weeks start
4950         on Saturday.  (#130349, Roozbeh Pournader) 
4951
4952 2003-12-31 13:49 Daniel Rogers <dsrogers@phasevelocity.org>
4953
4954         * gdk/x11/gdkinput-x11.c: (gdk_input_translate_coordinates)
4955         
4956         Fix to allow reasonable pointer behavior in window mode when an
4957         extended input device reports an incorrect resolution of 0.  Fixes
4958         bug #123546
4959         
4960 2003-12-31  Christian Neumair  <chris@gnome-de.org>
4961
4962         * gdk-pixbuf/gdk-pixdata.c: (gdk_pixbuf_from_pixdata):
4963         * gtk/gtkfilechooserdefault.c: (list_size_data_func): Use ngettext for
4964         plurals (#123847).
4965
4966 Wed Dec 31 02:05:39 2003  Matthias Clasen  <maclas@gmx.de>
4967
4968         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
4969         (gtk_action_group_add_toggle_actions_full):
4970         (gtk_action_group_add_radio_actions_full): Pull accelerator key
4971         from the stock item if stock_id is given, but accelerator 
4972         not.  (Noticed by Jeff Franks and Jody Goldberg)
4973
4974         * tests/testmerge.c: Remove the accelerator from the "Open" entry
4975         to test the above change.
4976         
4977 2003-12-29  Federico Mena Quintero  <federico@ximian.com>
4978
4979         Make show_all() work for the extra and preview widgets; reported
4980         by Paolo Maggi.
4981
4982         * gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
4983         preview widget.
4984         (set_extra_widget): show_all() the extra widget.
4985
4986 Mon Dec 29 12:22:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4987
4988         * gtk/gtkuimanager.c (do_updates): 
4989         * gtk/gtktoolbar.c (slide_idle_handler): 
4990         * gtk/gtkdnd.c (gtk_drag_update_idle): 
4991
4992         Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
4993         functions. (#130157, patch from Olexiy Avramchenko).
4994         
4995 2003-12-29  Anders Carlsson  <andersca@gnome.org>
4996
4997         * gtk/gtkradiotoolbutton.c:
4998         * gtk/gtkradiotoolbutton.h:
4999         * gtk/gtkseparatortoolitem.c:
5000         * gtk/gtkseparatortoolitem.h:
5001         * gtk/gtktoggletoolbutton.c:
5002         * gtk/gtktoggletoolbutton.h:
5003         * gtk/gtktoolbar.c:
5004         * gtk/gtktoolbar.h:
5005         * gtk/gtktoolbutton.c:
5006         * gtk/gtktoolbutton.h:
5007         * gtk/gtktoolitem.c:
5008         * gtk/gtktoolitem.h:
5009         Update my e-mail address.
5010         
5011 Mon Dec 29 01:36:22 2003  Matthias Clasen  <maclas@gmx.de>
5012
5013         * gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path, 
5014         gtk_accel_map_unlock_path): Add a way to lock individual accelerator
5015         paths.  (#73207, reported by Havoc Pennington)
5016
5017 Sat Dec 27 23:17:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5018
5019         * gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
5020         instead of VISIBLE to determine whether we should stop
5021         sliding. (#130018, reported by Christian Persch).
5022
5023 Fri Dec 26 23:24:35 2003  Matthias Clasen  <maclas@gmx.de>
5024
5025         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
5026         Don't use first_action without initializing it if n_entries is 0.
5027
5028 Thu Dec 25 00:26:34 2003  Matthias Clasen  <maclas@gmx.de>
5029
5030         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
5031         Add the missing _get_ to the name of the non-Xcursor version of
5032         this function.  (noticed by Torsten Schoenfeld)
5033
5034 Tue Dec 23 22:34:50 2003  Manish Singh  <yosh@gimp.org>
5035
5036         * gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
5037         muppet.
5038
5039 2003-12-24  Jody Goldberg <jody@gnome.org>
5040
5041         * gtk/gtkactiongroup.h : Add some const to the char * in
5042           GtkActionEntry*.  We're reccomending people pass static strings to
5043           them, and not freeing them.  This stems to flood of warnings that
5044           result.
5045         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) : change
5046           temp vars to const to match above.
5047         (gtk_action_group_add_toggle_actions_full) : ditto.
5048         (gtk_action_group_add_radio_actions_full) : ditto.
5049
5050 Wed Dec 24 01:12:53 2003  Matthias Clasen  <maclas@gmx.de>
5051
5052         * gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
5053         gtk_clipboard_request_targets() and 
5054         gtk_clipboard_wait_for_targets().  (#101774, Dom Lachowicz)
5055
5056 Mon Dec 22 00:40:39 2003  Matthias Clasen  <maclas@gmx.de>
5057
5058         * gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use 
5059         gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
5060         * gtk/gtkcalendar.c (draw_arrow_left):
5061         (draw_arrow_right): Removed. 
5062         * gtk/gtkcalendar.c (gtk_calendar_realize_arrows): 
5063         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
5064         arrow_state to GTK_STATE_INSENSITIVE if the calendar is 
5065         insensitive.  (#97376)
5066
5067 Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>
5068
5069         * gtk/gtkuimanager.c (update_node): 
5070         (update_smart_separators): 
5071         (_gtk_menu_is_empty): 
5072         (find_menu_position): 
5073         * gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy): 
5074         * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): 
5075         (gtk_combo_box_relayout): Fix memory leaks caused by the
5076         failure to free the result of gtk_container_get_children().
5077
5078 Sun Dec 21 17:34:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5079
5080         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
5081         properties when the window becomes a toplevel. When a window that
5082         was previously a toplevel becomes a toplevel again, restore its
5083         window type. Also make sure the focus window is removed from the
5084         XID hash when it is destroyed. (#117579, reported by Morten
5085         Welinder, patch reviewed by Owen Taylor).
5086
5087 Sun Dec 21 01:54:40 2003  Matthias Clasen  <maclas@gmx.de>
5088
5089         * gtk/gtkmenushell.h: 
5090         * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function 
5091         to emit the "cancel" signal on a menu shell.
5092
5093         * gtk/gtkmenu.c (gtk_menu_key_press): 
5094         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): 
5095         * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the 
5096         new function instead of directly emitting the 
5097         signal.  (#81803, Owen Taylor)
5098
5099 Sun Dec 21 00:39:50 2003  Matthias Clasen  <maclas@gmx.de>
5100
5101         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
5102         Fix the "language_set" blurb.  
5103         
5104 Sat Dec 20 22:06:03 2003  Kristian Rietveld  <kris@gtk.org>
5105
5106         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
5107         all of treeview when resizing (#110074, patch from Soeren Sandmann).
5108
5109 Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>
5110
5111         Fixes #108458.
5112
5113         * gtk/gtkcelllayout.[ch]: added a reorder method.
5114
5115         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
5116         (gtk_tree_view_column_cell_layout_reorder): implement reorder.
5117
5118         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
5119         (gtk_cell_view_cell_layout_reorder): ditto.
5120
5121         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
5122         (gtk_combo_box_cell_layout_reorder): ditto.
5123
5124         * gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
5125         (gtk_entry_completion_reorder): ditto.
5126
5127 Fri Dec 19 22:18:19 2003  Kristian Rietveld  <kris@gtk.org>
5128
5129         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
5130         instead of strcmp (#117127, suggestion from Soeren Sandmann).
5131
5132 Fri Dec 19 21:52:46 2003  Kristian Rietveld  <kris@gtk.org>
5133
5134         * gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
5135         here from gtk_menu_real_insert(),
5136         (gtk_menu_real_insert): just call gtk_menu_do_insert(),
5137         (gtk_menu_reorder_child): run _do_insert after inserting the child
5138         (unbreaks _reorder_child, reported by Tim Janik).
5139
5140 2003-12-19  Federico Mena Quintero  <federico@ximian.com>
5141
5142         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
5143         g_date_strftime() for UTF-8 correctness; use Julian dates to
5144         simplify the function.
5145
5146 Fri Dec 19 01:47:34 2003  Matthias Clasen  <maclas@gmx.de>
5147
5148         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): 
5149         Test extra_width, not extra_height, when determining whether to
5150         set extra_width.  (#129647, Jan Arne Petersen)
5151
5152 Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
5153
5154         Fix the behaviour of insensitive actions, which was broken
5155         when gtk_action_activate() was changed to pay attention to 
5156         sensitivity  (#129557, Christian Persch)
5157         
5158         * gtk/gtkaction.h: 
5159         * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
5160         function to emit an activate signal without regard to sensitivity.
5161
5162         * gtk/gtkradioaction.c: 
5163         * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
5164         instead of gtk_action_activate().
5165
5166 2003-12-18  Jody Goldberg <jody@gnome.org>
5167
5168         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon)) : Add a sanity test
5169           to ensure that the base hicolor theme is installed.  Silently
5170           failing to produce icons that apps assume exist in the theme seems
5171           like a bad idea.
5172
5173 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
5174
5175         Fixes #110249, reworked patch from Joshua N Pritikin.
5176
5177         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
5178         (gtk_tree_model_sort_tree_drag_source_init),
5179         (gtk_tree_model_sort_row_draggable),
5180         (gtk_tree_model_sort_drag_data_get),
5181         (gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.
5182
5183         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
5184         (gtk_tree_model_filter_tree_drag_source_init),
5185         (gtk_tree_model_filter_row_draggable),
5186         (gtk_tree_model_filter_drag_data_get),
5187         (gtk_tree_model_filter_drag_data_delete): ditto.
5188
5189 Thu Dec 18 18:01:01 2003  Kristian Rietveld  <kris@gtk.org>
5190
5191         * gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
5192         for "*" and "/" (expand/collapse all). (#110195, reported by
5193         Calum Benson).
5194
5195 Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
5196
5197         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
5198         clear the extra_attrs list if we set "text" after "markup".
5199         (Fixes #121933, Federico Mena Quintero).
5200
5201 2003-12-18  Alexander Larsson  <alexl@redhat.com>
5202
5203         * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
5204         Fix typo that used the wrong x/y values for the x1, y1 point
5205         (#129605)
5206
5207 Thu Dec 18 01:41:50 2003  Kristian Rietveld  <kris@gtk.org>
5208
5209         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
5210         (gtk_cell_renderer_text_finalize),
5211         (gtk_cell_renderer_text_get_property),
5212         (gtk_cell_renderer_text_set_property), (get_layout): added language
5213         and language_set properties like GtkTextTag has. (#103800, reported
5214         by Owen Taylor).
5215
5216 Thu Dec 18 01:37:59 2003  Matthias Clasen  <maclas@gmx.de>
5217
5218         * gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
5219         * gtk/gtkbutton.c (gtk_button_class_init): Add docs for the 
5220         "activate" signal.  (#129358, Ka-Hing Cheung)
5221
5222 Thu Dec 18 01:21:59 2003  Kristian Rietveld  <kris@gtk.org>
5223
5224         * gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
5225         the logical flag backwards in the expand_collapse_cursor_row
5226         bindings, fixing.
5227         (gtk_tree_view_real_expand_collapse_cursor_row): invert expand
5228         flag when !logical and in RTL. (Fixes #107527, reported by
5229         Noah Levitt).
5230
5231 Thu Dec 18 01:10:16 2003  Kristian Rietveld  <kris@gtk.org>
5232
5233         * gtk/gtktreeview.c (gtk_tree_view_button_press): only start
5234         editing when activated by the left mouse button. (#106869,
5235         patch from Evan Martin).
5236
5237 Thu Dec 18 00:57:18 2003  Kristian Rietveld  <kris@gtk.org>
5238
5239         Migrating all cell renderers to use the new instance private data
5240         construction.
5241
5242         * gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
5243         longer being used.
5244
5245         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
5246         (gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
5247         (set_cell_bg_color), (gtk_cell_renderer_render): remove old
5248         GtkCellRendererInfo handling, migrate to instance private data.
5249
5250         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
5251         (gtk_cell_renderer_text_start_editing): moved focus_out_id
5252         from GtkCellRendererInfo to text renderer private data.
5253
5254         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
5255         (gtk_cell_renderer_pixbuf_class_init),
5256         (gtk_cell_renderer_pixbuf_finalize),
5257         (gtk_cell_renderer_pixbuf_get_property),
5258         (gtk_cell_renderer_pixbuf_set_property),
5259         (gtk_cell_renderer_pixbuf_create_stock_pixbuf),
5260         (gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
5261         migrate to instance private data.
5262
5263         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
5264         (gtk_cell_renderer_toggle_get_property),
5265         (gtk_cell_renderer_toggle_set_property),
5266         (gtk_cell_renderer_toggle_render): migrate to instance private data.
5267
5268 Thu Dec 18 00:24:32 2003  Kristian Rietveld  <kris@gtk.org>
5269
5270         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
5271         (gtk_cell_renderer_text_get_property),
5272         (gtk_cell_renderer_text_set_property), (get_layout): add a
5273         single-paragraph-mode property, use private instance data.
5274         (Fixes #114943, reported by Morten Welinder).
5275
5276 Thu Dec 18 00:07:01 2003  Kristian Rietveld  <kris@gtk.org>
5277
5278         * gtk/gtktreemodel.h (gtk_tree_path_new_root),
5279         (gtk_tree_model_get_iter_root): now deprecated (#106953, reported
5280         by Matthias Clasen).
5281
5282 Wed Dec 17 23:50:56 2003  Kristian Rietveld  <kris@gtk.org>
5283
5284         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
5285         if we set a new stock_id and there was a previous stock_id, unref
5286         the pixbuf (since it was used to renderer the previous stock_id
5287         and stock_id might have been set to NULL now). (Fixes #122966).
5288
5289 2003-12-17  Marco Pesenti Gritti  <marco@gnome.org>
5290
5291         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):
5292
5293         Check that index is not bigger than level array length
5294         also when depth is 1. Now get_iter_first correctly return
5295         FALSE when the model is empty (#129411).
5296
5297 Wed Dec 17 23:31:19 2003  Kristian Rietveld  <kris@gtk.org>
5298
5299         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
5300         try to strcmp or strlen if we managed to normalize and casefold
5301         the string correctly. Fixes crashes with non-UTF8 strings.
5302         (#121617, Patch from Tim-Philipp Müller).
5303
5304 Wed Dec 17 23:20:23 2003  Matthias Clasen  <maclas@gmx.de>
5305
5306         * gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
5307         GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
5308         * gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c, 
5309         gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c, 
5310         gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
5311         GSourceFunc instead of GtkFunction.  (#129525, Olexiy Avramchenko) 
5312
5313 Wed Dec 17 23:16:45 2003  Kristian Rietveld  <kris@gtk.org>
5314
5315         * gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
5316         (#122727, patch from Kjartan Maraas).
5317
5318 Wed Dec 17 21:23:01 2003  Kristian Rietveld  <kris@gtk.org>
5319
5320         Yay! Fixed height mode! Hooray! (Part 2 of #80868).
5321
5322         * gtk/gtktreeview.c (gtk_tree_view_class_init),
5323         (gtk_tree_view_init), (gtk_tree_view_set_property),
5324         (gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
5325         fixed_height_mode property,
5326         (intialize_fixed_height_mode), (do_validate_rows),
5327         (column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
5328         (gtk_tree_view_style_set), (gtk_tree_view_row_changed),
5329         (gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
5330         (gtk_tree_view_insert_column): implement fixed height mode,
5331         (gtk_tree_view_append_column), (gtk_tree_view_insert_column),
5332         (gtk_tree_view_insert_column_with_attributes),
5333         (gtk_tree_view_insert_column_with_data_func): update docs.
5334
5335         * gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
5336
5337 2003-12-07  Murray Cumming  <murrayc@usa.net>
5338  
5339         * gtk/gtktreemodel.c:
5340         (row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
5341         Actually call the default signal handlers instead of calling the
5342         marshallers themselves in an endless loop. These default signal handler
5343         callbacks are not actually set so this is only noticed by gtkmm at
5344         the moment. Bug 123923.
5345
5346 2003-12-16  Federico Mena Quintero  <federico@ximian.com>
5347
5348         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
5349         "volumes-changed" signal.  Added the following methods:
5350                 list_volumes
5351                 volume_free
5352                 volume_get_base_path
5353                 volume_get_is_mounted
5354                 volume_mount
5355                 volume_get_display_name
5356                 volume_render_icon
5357
5358         * gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
5359         "volumes-changed" signal.
5360         (gtk_file_system_list_volumes): New function.
5361         (gtk_file_system_volume_free): New function.
5362         (gtk_file_system_volume_get_base_path): New function.
5363         (gtk_file_system_volume_get_is_mounted): New function.
5364         (gtk_file_system_volume_mount): New function.
5365         (gtk_file_system_volume_get_display_name): New function.
5366         (gtk_file_system_volume_render_icon): New function.
5367
5368         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
5369         (gtk_file_system_unix_volume_get_base_path): Implement.
5370         (gtk_file_system_unix_volume_get_is_mounted): Implement.
5371         (gtk_file_system_unix_volume_mount): Implement.
5372         (gtk_file_system_unix_volume_get_display_name): Implement.
5373         (gtk_file_system_unix_volume_render_icon): Implement.
5374
5375         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
5376         Added a field for the "volumes-changed" signal connection.
5377         (gtk_file_chooser_default_set_property): Connect to
5378         "volumes-changed" on the file system.
5379         (gtk_file_chooser_default_finalize): Disconnect from
5380         "volumes-changed".
5381
5382         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
5383         function.
5384         (shortcuts_get_index): New helper function.
5385         (shortcuts_insert_path): Can now insert volumes as well as paths.
5386         (shortcuts_append_paths): Don't take is_file_system_root.
5387         (shortcuts_add_volumes): New function.
5388         (shortcuts_append_file_system_roots): Removed.
5389         (create_shortcuts_model): Use shortcuts_add_volumes().
5390         (remove_bookmark_button_clicked_cb): Check that the index is
5391         within range.
5392         (bookmarks_check_add_sensitivity): Take volumes into account.
5393         (shortcuts_get_selected_index): New helper function.
5394         (remove_bookmark_button_clicked_cb): Use
5395         shortcuts_get_selected_index().
5396         (bookmarks_check_remove_sensitivity): Likewise.
5397         (shortcuts_select_func): Likewise.
5398         (shortcuts_row_activated_cb): Handle volumes as well as normal
5399         paths.
5400         (shortcuts_activate_volume): New function.
5401         (struct _GtkFileChooserDefault): Removed the bookmarks_set and
5402         bookmarks_iter fields.
5403         (shortcuts_append_bookmarks): Use shortcuts_remove_rows().
5404         (bookmarks_changed_cb): Use shortcuts_add_bookmarks().
5405         (remove_bookmark_rows): Removed.
5406         (shortcuts_add_bookmarks): New function; moved most of the code
5407         over from shortcuts_append_bookmarks().
5408         (shortcuts_append_bookmarks): Add the separator node here, and
5409         then call shortcuts_add_bookmarks().
5410
5411 Tue Dec 16 15:01:10 2003  Manish Singh  <yosh@gimp.org>
5412
5413         * gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
5414         (G_OS_UNIX/G_OS_WIN32 stuff)
5415
5416 Tue Dec 16 01:46:46 2003  Matthias Clasen  <maclas@gmx.de>
5417
5418         Do not interpret distant clicks as double-clicks  (#116541,
5419         Bernhard Walle):
5420         
5421         * gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
5422         double_click_distance, button_x and button_y.
5423         * gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.
5424
5425         * gdk/gdkdisplay.h: 
5426         * gdk/gdkevents.c (gdk_display_set_double_click_distance): 
5427         New function to set the double click distance on a display.
5428
5429         * gdk/gdkevents.c: Take double click distance into account
5430         when generating single, double or triple clicks.
5431
5432         * gtk/gtksettings.c: Add new setting "gtk-double-click-distance".
5433
5434         * gdk/x11/gdkevents-x11.c: Add the XSetting 
5435         "Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
5436
5437 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
5438
5439         * gtk/gtkdialog.c: Sigh, revert the change.
5440
5441 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
5442
5443         * gtk/gtkdialog.c (dialog_has_cancel): Removed.
5444         (gtk_dialog_close): Don't call dialog_has_cancel().  At least
5445         allows sane behavior for #101293.
5446
5447 Mon Dec 15 00:56:54 2003  Matthias Clasen  <maclas@gmx.de>
5448
5449         * gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
5450         getter and setter gtk_button_[sg]et_alignment(), to set the
5451         alignment of the child.  (#70961, Jody Goldberg)
5452
5453 2003-12-14  Hans Breuer  <hans@breuer.org>
5454
5455         * gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
5456         similar as the other filesystem placement 'constants' (dynamic
5457         resolving on win32)
5458
5459         * gtk/gtkfilechooserwidget.c : handle file system to win32
5460         renaming here as will
5461         * gtk/gtkfilesystemwin32.c : implement render_icon
5462
5463         * gtk/gtk.def gdk/gdk.def : updated externals
5464
5465         * gdk/win32/gdkdisplay-win32.c : make it compile without
5466         <multimon.h> - i.e. even older sdk
5467
5468         * gdk/win32/gdkevents-win32.c : match resize_timer_proc
5469         with TIMERPROC prototype
5470
5471         * gdk/win32/gdkwindow-win32.c : older msvc does not know
5472         BITMAPV5HEADER (from win xp) either
5473
5474         * gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
5475         not defined
5476
5477         * tests/testfilechooser.c : recent GLib crashes on 
5478         g_print ("%s", NULL) so avoid this
5479
5480 2003-12-14  Tor Lillqvist  <tml@iki.fi>
5481
5482         * gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
5483         followed by calls to CloseClipboard(). Add a missing call to
5484         CloseClipboard(). Found by Adam Wright, fixes #104944. Use
5485         API_CALL macro in more places.
5486
5487 2003-12-14  Tor Lillqvist  <tml@iki.fi>
5488
5489         Merge from stable:
5490
5491         * gdk/gdkdisplaymanager.c: Mark default_display static.
5492
5493         * gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.
5494
5495         * gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
5496         output.
5497
5498         * gdk/win32/gdkevents-win32.c: Clean up the debugging output from
5499         --gdk-debug=events. In general, output just one line of debugging
5500         output for each Windows message, plus one line for each GDK event
5501         generated. Indent all lines according to window procedure nesting
5502         level.
5503
5504         (inner_window_procedure): Rename from real_window_procedure.
5505
5506         (find_real_window_for_grabbed_mouse_event): Don't get misled when
5507         the point is in the non-client (decoration) area of the window
5508         returned by WindowFromPoint(). Return the root window in that
5509         case.
5510
5511         (build_pointer_event_state): Test also MK_XBUTTON1 and
5512         MK_XBUTTON2 (buttons 4 and 5).
5513
5514         (synthesize_enter_event): Track the mouse leaving the window in
5515         the event being generated, not the one mentioned in the Windows
5516         message.
5517
5518         (propagate): Test for NULL parent earlier. Improves event
5519         generation from a grabbed pointer. Part of fix for #107320.
5520
5521         (handle_stuff_while_moving_or_resizing): New function, to
5522         dispatch the main loop (once).
5523
5524         (resize_timer_proc): New function, set to be called by an inerval
5525         timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().
5526
5527         (gdk_event_translate): Drop unused return_exposes parameter.
5528
5529         Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).
5530
5531         On WM_SYSKEYUP, generate a key release event also for just the Alt
5532         key.
5533
5534         On WM_MOUSELEAVE, generate a leave event of type
5535         GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
5536         top-level window, and left the app completely.
5537
5538         On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
5539         calls resize_timer_proc() at regular intervals. On
5540         WM_EXITSIZEMOVE, kill the timer.
5541
5542         On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
5543         and dispatch the main loop (by calling
5544         handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
5545         Herman Bloggs.
5546
5547         * gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
5548         also wintab messages.
5549
5550         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
5551         Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
5552         the window's owner. Fixes #118093, reported by Maxime Romano.
5553
5554 Tue Dec  8 09:41:00 2003  Tim Evans  <t.evans@aranz.com>
5555
5556         * gdk/win32/gdkwindow-win32.[ch]: Implement
5557         gdk_window_set_icon_list() for Win32, with support for big and
5558         small icons and support for alpha-channel icons under Windows
5559         XP. Replaces the previous implementation of gdk_window_set_icon().
5560         (#128762)
5561         
5562 Sun Dec 14 01:28:23 2003  Matthias Clasen  <maclas@gmx.de>
5563
5564         * gdk/x11/gdkprivate-x11.h: 
5565         * gdk/x11/gdkx.h: 
5566         * gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type): 
5567         Rename from _gdk_x11_register_event_type(), added API docs.
5568         * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): 
5569         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
5570         all callers.  (#121471, Bill Haneman)
5571
5572 Sat Dec 13 23:37:50 2003  Matthias Clasen  <maclas@gmx.de>
5573
5574         * gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
5575         of gc is ignored.  (#101983, Sebastian Rittau)
5576
5577 Sat Dec 13 16:13:27 2003  Kristian Rietveld  <kris@gtk.org>
5578
5579         A trick for a faster treeview, step 1. Patch to short circuit
5580         _build_tree(), inspired by Jonathan (#80868).
5581
5582         * gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
5583         flags by default,
5584         (gtk_tree_view_build_tree): don't even try to recurse when the
5585         model says that it is a list, remove flag unsetter,
5586         (gtk_tree_view_set_model): change flag setting logic.
5587
5588         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
5589         propagate whether or not the child model has _IS_LIST set.
5590
5591         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
5592         ditto.
5593
5594 Sat Dec 13 02:33:17 2003  Matthias Clasen  <maclas@gmx.de>
5595
5596         * gtk/gtkrange.c (gtk_range_scroll): Undo the last change, 
5597         since it broke logical keynav. 
5598         * gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
5599         direction in inverted scrollbars here instead.
5600
5601 Sat Dec 13 00:39:24 2003  Matthias Clasen  <maclas@gmx.de>
5602
5603         * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
5604         "gravity" for RTL mode in a better way: Keep the distance from 
5605         the upper end of the page to the upper bound constant. This also 
5606         fixes problems with the initial position of the viewport in RTL 
5607         mode.  (#129063)
5608         
5609 Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>
5610
5611         Combo box flipping support.
5612
5613         * gtk/gtkcombobox.c (gtk_combo_box_menu_position),
5614         (gtk_combo_box_size_allocate): support RTL flipping (#126518,
5615         patch from Matthias Clasen),
5616         (gtk_combo_box_popup): fix popup window alignment if there's a
5617         cell view frame visible (#126518, patch from Semion Chichelnitsky).
5618
5619         * gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
5620         (#128348, patch from Semion Chichelnitsky).
5621
5622 Fri Dec 12 01:13:34 2003  Matthias Clasen  <maclas@gmx.de>
5623
5624         * examples/gtkdial/gtkdial.c:
5625         * examples/menu/menu.c:
5626         * examples/scribble-xinput/scribble-xinput.c:
5627         * examples/progressbar/progressbar.c:
5628         * docs/tutorial/gtk-tut.sgml: Remove deprecated functions
5629         in examples. (#129074, Olexiy Avramchenko)
5630         * examples/calendar/Makefile:
5631         * examples/rangewidgets/Makefile:
5632         * examples/menu/Makefile: Allow deprecated functions in
5633         examples which use deprecated widgets.
5634
5635 Fri Dec 12 00:43:16 2003  Matthias Clasen  <maclas@gmx.de>
5636
5637         * gdk/gdk.c (gdk_threads_set_lock_functions): 
5638         * gdk/x11/gdkspawn-x11.c: Add "Since: 2.4" to doc comments.
5639
5640 Fri Dec 12 00:05:31 2003  Matthias Clasen  <maclas@gmx.de>
5641
5642         * gtk/gtkrange.c (gtk_range_scroll): Fix direction of 
5643         steppers in inverted scrollbars.  (#129084, Olexiy Avramchenko)
5644
5645 Thu Dec 11 23:50:30 2003  Matthias Clasen  <maclas@gmx.de>
5646
5647         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't 
5648         unnecessarily reserve space for arrows in RTL mode.  (#129075,
5649         Semion Chichelnitsky)
5650
5651 Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>
5652
5653         Changes to allow "no input" windows (#64613):
5654         
5655         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
5656         field accept_focus.
5657         
5658         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
5659         set it.
5660
5661         * gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
5662         and gtk_window_get_focus() and gtk_window_set_focus().
5663
5664         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
5665         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
5666         * gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
5667         Initialize the accept_focus field to TRUE.
5668
5669         * gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus): 
5670         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus): 
5671         * gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus): 
5672         Implementations for the various backends. The Win32 and linux-fb
5673         implementations set the accept_focus field, but don't use it yet 
5674         to actually implement noinput windows. The X implementation updates
5675         the WM_HINTS to select the globally active input model (see the
5676         ICCCM) if accept_focus is FALSE.
5677
5678         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
5679         WM_TAKE_FOCUS message if accept_focus is FALSE.
5680         
5681 2003-12-10  Federico Mena Quintero  <federico@ximian.com>
5682
5683         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
5684         Added toolbar items for the filter separator and the filter item.
5685         (toolbar_create): Add the filter widgets here.
5686         (filter_create): Renamed from create_filter().  Don't store the
5687         alignment in the impl structure, just return it.
5688         (toolbar_show_filters): New function.
5689         (gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
5690         (gtk_file_chooser_default_remove_filter): Likewise.
5691         (gtk_file_chooser_default_constructor): Don't create the filter
5692         widget here.
5693         (struct _GtkFileChooserDefault): Added a field for a current
5694         folder label.
5695         (gtk_file_chooser_default_constructor): Create the folder label.
5696         (gtk_file_chooser_default_set_current_folder): Set the current
5697         folder label.
5698
5699         * tests/testfilechooser.c (main): Dramatically improved the
5700         usability of the extra widget through careful word choice.
5701
5702 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
5703
5704         * gdk/gdk.h: include gdkspawn.h.
5705
5706 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
5707
5708         * gdk/linux-fb/gdkspawn-fb.c,
5709           gdk/win32/gdkspawn-win32.c,
5710           gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
5711         s/gdk_spawn/gdk_spawn_on_screen/.
5712
5713 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
5714
5715         Utility functions for multi-screen applications which need
5716         to ensure launched applications appear on a certain screen.
5717         See bug #95897.
5718         
5719         * gdk/gdkspawn.h: header for multi-screen launching
5720         support.
5721         
5722         * gdk/Makefile.am: install gdkspawn.h.
5723         
5724         * gdk/x11/Makefile.am:
5725         * gdk/x11/gdkspawn-x11.c:
5726         (gdk_spawn_make_environment_for_screen): private function
5727         to create an environment vector with DISPLAY set appropriately
5728         for the screen.
5729         (gdk_spawn_on_screen): multi-screen version of g_spawn_async().
5730         (gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
5731         (gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().
5732         
5733         * gdk/linux-fb/Makefile.am,
5734           gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.
5735         
5736         * gdk/win32/Makefile.am,
5737           gdk/win32/gdkspawn-win32.c: win32 impl.
5738
5739 2003-12-09  Federico Mena Quintero  <federico@ximian.com>
5740
5741         * gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
5742         rather than "Username's Home" (#125964).
5743         (shortcuts_selection_changed_cb): New callback, check the
5744         sensitivity of the Remove Bookmark button at the right time.
5745         (shortcuts_row_activated_cb): It is not necessary to check the
5746         sensitivity here.
5747
5748 Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>
5749
5750         Improve the GDK API for dealing with group leaders (#119375):
5751         
5752         * gdk/gdkwindow.h: 
5753         * gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to 
5754         get the group leader of a toplevel window as a GdkWindow.
5755
5756         * gdk/gdkdisplay.h: 
5757         * gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New 
5758         function to get the default group leader as a GdkWindow.
5759
5760         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
5761         the GdkWindow of the default group leader.
5762         
5763         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
5764         for the default group leader.
5765
5766 2003-12-09  Noah Levitt  <nlevitt@columbia.edu>
5767
5768         * gdk/gdkkeysyms.h:
5769         * gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
5770         Ukrainian_GHE_WITH_UPTURN. (#128529)
5771
5772 2003-12-08  Jan Arne Petersen  <jpetersen@uni-bonn.de>
5773
5774         * gtk/gtkfilechooserdefault.c:
5775         (gtk_file_chooser_default_get_paths), (entry_activate): Use the
5776         behavior of the GtkFileSelection to determine selected paths in
5777         single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.
5778
5779 2003-12-08  Federico Mena Quintero  <federico@ximian.com>
5780
5781         * gtk/gtkfilechooserdefault.c
5782         (gtk_file_chooser_default_get_paths): Don't declare the closure
5783         struct twice.
5784         (get_paths_foreach): Likewise.
5785
5786 Tue Dec  9 00:12:36 2003  Matthias Clasen  <maclas@gmx.de>
5787
5788         * gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g. 
5789
5790 2003-12-08  Tor Lillqvist  <tml@iki.fi>
5791
5792         * gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
5793         with MSVC and old headers. (#126933, John Ehresman)
5794
5795 Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>
5796          
5797         * === Released 2.3.1 ===
5798
5799         * NEWS: Updates for 2.3.1
5800
5801         * configure.in: Version 2.3.1, interface age 0, binary age 301.
5802
5803         * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
5804         Rename from gtk_menu_item_real_can_activate_accel() to
5805         match GTK+ convention, improve comment.
5806
5807         * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
5808         can ::can-activate-accel signal.
5809
5810         * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
5811         in comment.
5812
5813         * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean 
5814         up comment.
5815         
5816         * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
5817         into the .c file.
5818
5819 Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>
5820
5821         * gtk/gtkicontheme.c (find_builtin_icon): Fix a
5822         missing 'else'. (#128816, Jorn Baayen)
5823
5824 2003-12-02  Michael Meeks  <michael@ximian.com>
5825
5826         Based on a patch by Martin Kretzschmar; #122448
5827         
5828         * gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
5829         implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
5830         (GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
5831         function pointers. Deprecate the global gdk_threads_mutex variable.
5832         
5833         * gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
5834         extracted from GTK_THREADS_ENTER/LEAVE macros.
5835         (gdk_threads_init): init gtk_threads_[un]lock if not set.
5836         (gdk_threads_set_lock_functions): impl.
5837
5838         * gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
5839
5840 Sun Dec  7 23:45:40 2003  Matthias Clasen  <maclas@gmx.de>
5841
5842         * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
5843         icon_theme_builtin_icons hasn't been initialized.  (#128726, Diego
5844         Gonzalez)
5845
5846 2003-12-07  Tor Lillqvist  <tml@iki.fi>
5847
5848         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
5849         return value from SendMessage(WM_SETICON). That is the old
5850         icon. Fixes GDI resource leak. (#128559, Tim Evans)
5851
5852         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
5853         have a pointer grab active with a grab cursor set, destroy that
5854         cursor to avoid a GDI resource leak. (#128410, Tim Evans)
5855
5856 2003-12-05  Paisa Seeluangsawat  <paisa@users.sf.net>
5857
5858         * configure.in: Added Thai (th) to ALL_LINGUAS.
5859
5860 Sat Dec  6 01:42:04 2003  Matthias Clasen  <maclas@gmx.de>
5861
5862         * gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
5863         RTL flipping for GtkAlignment.  (#127585)
5864
5865 Sat Dec  6 01:13:09 2003  Matthias Clasen  <maclas@gmx.de>
5866
5867         * gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the 
5868         popup window when in RTL mode.  (#127578)
5869
5870 Fri Dec  5 15:30:16 2003  Manish Singh  <yosh@gimp.org>
5871
5872         * gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
5873         Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
5874         before doing anything to prevent garbage returns.
5875
5876 Sat Dec  6 00:23:46 2003  Matthias Clasen  <maclas@gmx.de>
5877
5878         * gtk/gtkviewport.c: Implement RTL flipping for 
5879         GtkViewport: Adjust the "gravity" when resizing
5880         This is a bit flickery in RTL mode.  (#107526)
5881
5882 Sat Dec  6 00:22:14 2003  Matthias Clasen  <maclas@gmx.de>
5883
5884         * gtk/gtkscrolledwindow.c: Implement RTL flipping for 
5885         GtkScrolledWindow: the vertical scrollbar shows up on the left
5886         side in RTL mode.  (#107526)
5887
5888 Fri Dec  5 01:58:33 2003  Matthias Clasen  <maclas@gmx.de>
5889
5890         * gtk/gtknotebook.c: Implement RTL flipping for GtkNotebook:
5891         tabs displayed at the top/bottom are rearranged, and tabs on
5892         the left/right are displayed at the opposite edge.  (#96630)
5893
5894 2003-12-04  Mark McLoughlin  <mark@skynet.ie>
5895
5896         * gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
5897         gtk_label_set_attributes() take NULL. See bug #128517.
5898
5899 2003-12-03  Federico Mena Quintero  <federico@ximian.com>
5900
5901         * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
5902         the in_change flag.
5903         (completion_idle_callback): Use a temporary list store and re-set
5904         it on the completion rather than modifying the old one.  We are
5905         re-reading the folder anyway, and this gets rid of non-atomicity
5906         problems.
5907
5908 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
5909
5910         Decouple impl->current_folder from the selection in the folder
5911         tree.  This is so that going to /home/federico/.foo (e.g. from a
5912         bookmark) will work even if show_hidden == FALSE.  The folder tree
5913         needs to be fixed in this case to show such folders explicitly.
5914
5915         * gtk/gtkfilechooserdefault.c
5916         (gtk_file_chooser_default_set_current_folder): When changing
5917         folders, do the entry and list model work here, instead of
5918         tree_selection_changed().
5919         (struct _GtkFileChooserDefault): Added a changing_folder flag
5920         again, dum de dum.
5921         (tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
5922
5923 Tue Dec  2 01:01:54 2003  Matthias Clasen  <maclas@gmx.de>
5924
5925         * gtk/gtkiconfactory.h: Remove duplicate declaration of 
5926         gtk_icon_source_set_icon_name().  (#Jeff Franks, #128269)
5927
5928 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
5929
5930         Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
5931         bookmarks buttons with the location entry.
5932
5933         * gtk/gtkfilechooserdefault.c
5934         (gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
5935         bookmarks buttons and the location entry.
5936
5937 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
5938
5939         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
5940         shortcuts tree as a drag destination.
5941         (shortcuts_drag_data_received_cb): New callback.
5942         (get_file_info): Also fetch information on whether the file is a folder.
5943         (add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
5944         (error_could_not_add_bookmark_dialog): New function.
5945         (shortcuts_add_bookmark_from_path): New helper function.
5946         (add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
5947         (shortcuts_row_activated): We no longer need the changing_folder flag.
5948         (struct _GtkFileChooserDefault): Likewise.
5949
5950 Sun Nov 30 17:31:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5951
5952         * gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
5953         disappearing placeholders that are still visible.
5954
5955         * gtk/gtktoolbar.c: formatting fixes
5956
5957         * gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
5958         disappearing, for placeholders that are going to disappear.
5959
5960         * gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
5961
5962 Sat Nov 29 00:55:28 2003  Jonathan Blandford  <jrb@gnome.org>
5963
5964         * gtk/gtktreeview.c (gtk_tree_view_new_column_width): 
5965         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5966         Patch from <chinen@jp.ibm.com> to handle RTL support for column
5967         resizers, #127874
5968
5969 Fri Nov 28 00:26:24 2003  Matthias Clasen  <maclas@gmx.de>
5970
5971         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): 
5972         Don't use freed memory.  (#127698, Taavi Talvik) 
5973
5974 Fri Nov 28 00:09:10 2003  Matthias Clasen  <maclas@gmx.de>
5975
5976         * gtk/gtkfilechooserentry.c: Remove debug g_print()s. 
5977
5978 Thu Nov 27 22:17:50 2003  Matthias Clasen  <maclas@gmx.de>
5979
5980         * gtk/gtkuimanager.c: Remove debug define.
5981
5982 Thu Nov 27 16:19:03 2003  Tim Janik  <timj@gtk.org>
5983
5984         * gtk/gtkmenu.c: allow accel activation depending on sensitivity
5985         and the attach widget.
5986
5987         * gtk/gtkmenuitem.c: allow accel activation depending on visibility,
5988         sensitivity and the parent menu.
5989
5990         * gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
5991         checks whether accelerators may activate a widget. the default handler
5992         demands the widget be sensitive and visible+viewable.
5993
5994         * gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
5995
5996 Tue Nov 25 00:10:05 2003  Matthias Clasen  <maclas@gmx.de>
5997
5998         * gtk/gtkuimanager.c (update_node): Don't show accelerators in
5999         popup menus.  (#127227)
6000
6001 Mon Nov 24 13:47:39 GMT 2003  Tony Gale <gale@gtk.org>
6002
6003         * docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
6004
6005 Mon Nov 24 04:05:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6006
6007         * gtk/gtkradiotoolbutton.[ch]
6008         (gtk_radio_tool_button_new_from_widget): Make this function take a
6009         GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
6010         Cumming)
6011
6012 Mon Nov 24 02:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6013
6014         * gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
6015
6016 Mon Nov 24 02:19:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6017
6018         * gtk/gtktoolbar.c: remove variable
6019         n_overflowed_menu_items_when_dnd_started
6020
6021 Mon Nov 24 01:47:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6022
6023         Rework sliding algorithm.
6024         - No more weird jumping when items are dragged off and added to
6025         the toolbar,
6026         - More natural item movement
6027
6028         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
6029         function is now responsible for calculating intermediate positions
6030         during item sliding. It is also responsible for starting sliding
6031         if items disappear.  Also turn off expanding when there is an
6032         overflow menu.
6033         (gtk_toolbar_begin_sliding, stop_sliding): New functions.
6034         (slide_idle_handler): New function. All the sliding is now done by
6035         gtk_toolbar_size_allocate(), so the idle handler now just checks
6036         if there is more sliding to be done.
6037         (compute_intermediate_allocation, position): new functions
6038         calculating intermediate steps in the slide animations. The new
6039         animation algorithm uses a constant speed instead of a constant
6040         must-be-finished-within time.
6041         (struct _ToolbarContent): use 
6042         GtkAllocation goal_allocation; and 
6043         GtkAllocation start_allocation; instead of 
6044         gint start/goal_width;
6045
6046         * gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
6047         documentation
6048
6049 Sun Nov 23 22:26:25 2003  Matthias Clasen  <maclas@gmx.de>
6050
6051         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip 
6052         positioning Xinerama-aware.  (#127332)
6053
6054 Fri Nov 21 01:57:21 2003  Matthias Clasen  <maclas@gmx.de>
6055
6056         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
6057         boundaries visible in fake Xinerama mode.
6058
6059 Thu Nov 20 15:41:56 2003  Manish Singh  <yosh@gimp.org>
6060
6061         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
6062         for the gtk_widget_hide() call.
6063
6064 Thu Nov 20 14:51:41 2003  Jonathan Blandford  <jrb@redhat.com>
6065
6066         * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
6067         from David Hampton to fix sorting on booleans.
6068
6069 Thu Nov 20 15:48:03 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6070
6071         * gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
6072         instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
6073         by Frederic Crozat).
6074
6075 Thu Nov 20 13:10:29 GMT 2003  Tony Gale <gale@gtk.org>
6076
6077         * docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
6078
6079 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6080
6081         Fixes to problems reported by Iain Holmes:
6082
6083         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
6084         throw up an error dialog if the desktop doesn't exist.
6085         (error_message): Handle the case where there is no real toplevel
6086
6087         yet.
6088         (list_model_filter_func): Always let folders pass through (patch
6089         by Dave Malcolm).
6090
6091 Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>
6092
6093         * gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
6094         to a somewhat more logical place,
6095         (gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
6096
6097 Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>
6098
6099         * gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
6100         the popup when it is visible, popdown when there are less chars
6101         than the minimum key length in the entry,
6102         (gtk_entry_completion_changed): popdown when the entry is empty.
6103
6104         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
6105         size request of the vscrollbar to (-1, 0), to get a nicely sized
6106         completion treeview (Fixes #126573, reported by Piers Cornwell),
6107         (_gtk_entry_completion_resize_popup): show/hide the action_view
6108         based on items.
6109
6110 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6111
6112         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
6113         off the dialog's separator (thanks to Iain Holmes).
6114
6115 Wed Nov 19 18:15:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6116
6117         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
6118         * gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
6119         on items that have a submenu. (#120104).
6120
6121 Wed Nov 19 18:11:08 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6122
6123         * gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
6124         "ItemState" field indicating the overflowed-ness etc. of the item.
6125         (gtk_toolbar_size_allocate): update the field here.
6126
6127 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6128
6129         * gtk/gtkfilechooserdefault.c (create_filter): Don't add padding
6130         to the alignment.  Use the HIG-specified spacing between the
6131         filter label and the combo.
6132         (create_filename_entry): Use HIG-specified spacing between the
6133         location label and the entry.
6134         (gtk_file_chooser_default_constructor): Don't use vertical padding
6135         around the filename entry.
6136
6137 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
6138
6139         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
6140         render_icon virtual method.
6141
6142         * gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.
6143
6144         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
6145         Implement as a stub for now.
6146
6147         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
6148         gtk_file_system_render_icon().
6149         (list_icon_data_func): Likewise.
6150         (toolbar_create): Set the toolbar style to icons only.
6151
6152         * gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
6153         Fix doc comments.
6154
6155 Wed Nov 19 02:18:37 2003  Matthias Clasen  <maclas@gmx.de>
6156
6157         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call 
6158         gtk_widget_hide(menu) when reattaching the menu.  (#126057) 
6159
6160 Wed Nov 19 00:06:04 2003  Kristian Rietveld  <kris@gtk.org>
6161
6162         * gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
6163         only unselect all items if the treeview has focus. (Fixes bug
6164         reported by Marco Pesenti Gritti).
6165
6166 Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>
6167
6168         * gtk/gtkentry.c (gtk_entry_completion_key_press): the total
6169         number of actions is "matches + actions - 1". (Fixes #126572).
6170
6171 Tue Nov 18 21:05:05 2003  Christian Persch  <chp@cvs.gnome.org>
6172
6173         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
6174         mem leaks (#119435).
6175
6176 Tue Nov 18 20:51:38 2003  Kristian Rietveld  <kris@gtk.org>
6177
6178         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
6179         try to fetch the child back, since we do know that it is already
6180         gone by now (#126493, Marco Pesenti Gritti).
6181
6182 Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>
6183
6184         Fixes based on comments from Owen Taylor, #125264.
6185
6186         * gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
6187         variable,
6188         (gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
6189         a resize,
6190         (gtk_cell_view_get_size_of_row): new function,
6191         (gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
6192         (gtk_cell_view_set_values), (gtk_cell_view_set_model),
6193         (gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
6194         s/cellview/cell_view/ in the function definitions, so they match
6195         with the header file.
6196
6197         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
6198         flag again (:, and use gtk_cell_view_get_size_of_row instead of
6199         the measurer, remove _set_size_request call,
6200         (gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
6201         instead of the measurer,
6202         (gtk_combo_box_style_set): queue a resize,
6203         (gtk_combo_box_size_request): update of _remeasure call,
6204         (gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
6205         (gtk_combo_box_cell_layout_pack_end),
6206         (gtk_combo_box_cell_layout_clear),
6207         (gtk_combo_box_set_model): get rid of the measurer,
6208         (gtk_combo_box_cell_layout_add_attribute),
6209         (gtk_combo_box_cell_layout_set_cell_data_func),
6210         (gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
6211         resize instead of calling _remeasure.
6212
6213 Mon Nov 17 16:25:04 2003  Manish Singh <yosh@gimp.org>
6214
6215         * gdk-pixbuf/Makefile.am
6216         * modules/input/Makefile.am: Use install-data-hook for
6217         gdk-pixbuf.loaders and gtk.immodules install generation targets.
6218         Fixes #112806.
6219
6220         * gtk/gtkexpander.h: Apply missing declarations from #124449.
6221
6222 Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>
6223
6224         Fix for #119555, Peter Zelezny:
6225         
6226         * gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
6227         * gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
6228         by removing the _ prefix. 
6229         * gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c, 
6230         gdk/gdkwindow.c: Adjust all callers.
6231
6232 Mon Nov 17 23:36:02 2003  Matthias Clasen  <maclas@gmx.de>
6233
6234         * gtk/gtkaction.c (gtk_action_activate): Only activate if 
6235         the action is sensitive.  (#127187, Christian Persch)
6236
6237 Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>
6238
6239         * gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
6240
6241 Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>
6242
6243         * gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.
6244
6245         * gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
6246         mapped, else resize_popup.
6247
6248         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
6249         (_gtk_entry_completion_popup): moved all popup resizing code to
6250         _gtk_entry_completion_resize_popup, and show the window when there
6251         are more than zero items in the completion list again (sigh).
6252
6253 2003-11-17  Mark McLoughlin  <mark@skynet.ie>
6254
6255         Patch from Jaiserca <jaiserca@inf.upv.es> to add a
6256         "use_markup" property. See bug #124449.
6257
6258         * gtk/gtkexpander.c:
6259         (gtk_expander_class_init),
6260         (gtk_expander_init), (gtk_expander_set_property),
6261         (gtk_expander_get_property), (gtk_expander_set_label),
6262         (gtk_expander_set_use_markup),  (gtk_expander_get_use_markup):
6263         Add a "use_markup" property and use it when creating the
6264         child label.
6265
6266 Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>
6267
6268         Temporary size requisition fix. Will fix it for real tonight.
6269
6270         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
6271         (gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
6272         a good width for the child,
6273         (gtk_combo_box_cell_layout_add_attribute),
6274         (gtk_combo_box_set_cell_data_func),
6275         (gtk_combo_box_cell_layout_clear_attributes): update.
6276
6277 Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>
6278
6279         Fixes #124373, Murray Cumming.
6280
6281         * gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
6282         is no longer construct only,
6283         (gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
6284         (gtk_combo_box_menu_fill): new functions,
6285         (gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
6286         (gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
6287         (gtk_combo_box_list_destroy): updated,
6288         (gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
6289         functions,
6290         (gtk_combo_box_set_model): is now public, updated,
6291         (gtk_combo_box_get_model): small update.
6292
6293         * gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
6294         text_column property is no longer construct only,
6295         (gtk_combo_box_entry_set_text_column): now public,
6296         (gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
6297         new/changed functions.
6298
6299         * tests/testcombo.c: updated.
6300
6301 Sun Nov 16 22:50:58 2003  Matthias Clasen  <maclas@gmx.de>
6302
6303         Reinstate fixes for (#124212, Marco Pesenti Gritti):
6304         
6305         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
6306         warnings for popups.
6307         (_gtk_menu_is_empty): Return FALSE for non-menus.
6308
6309 Sun Nov 16 21:48:40 2003  Kristian Rietveld  <kris@gtk.org>
6310
6311         * gtk/gtkcellview.c (gtk_cell_view_finalize): just call
6312         gtk_cell_view_cell_layout_clear instead of trying to free the
6313         structure ourselves here. (#125726, Morten Welinder).
6314
6315 Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>
6316
6317         * gtk/gtkfilechooser.[hc]: 
6318         * gtk/gtkentrycompletion.h: Fix parameter name mismatches which
6319         confuse gtk-doc.
6320
6321 2003-11-15  Hans Breuer  <hans@breuer.org>
6322
6323         * gdk/makefile.msc gdk/gdk.def 
6324             gtk/gtk.def gtk/makefile.msc.in : updated
6325         * tests/makefile.msc : added all the new tests
6326
6327         * gtk/gtkfilefilter.c(finalize) : initialize filter
6328         from object not from itself
6329
6330         * gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
6331         modified as less as posible to have aworking implementation
6332         on win32. There maybe the desire to merge the unchanged pats into
6333         a common base class.
6334         Also implemented a simple glib based bookmark handling, which
6335         is currently missing in gtkfilesystemunix.[hc] but can be copied
6336         over there.
6337         * gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h
6338
6339         * gdk/win32/gdkwindow-win32.c : implement 
6340         gdk_window_set_keep_above() and gdk_window_set_keep_below()
6341
6342         * tests/testmerge.c : don't include unistd.h unconditionally,
6343         #define STDOUT_FILENO if it isn't defined
6344
6345         * tests/testfilechooser.c : make it compile on win32
6346
6347 2003-11-15  Tor Lillqvist  <tml@iki.fi>
6348
6349         * gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
6350         maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
6351
6352 Thu Nov 13 12:55:29 GMT 2003  Tony Gale <gale@gtk.org>
6353
6354         * docs/faq/gtk-faq.sgml: Update the rest of Section 2
6355
6356 Thu Nov 13 01:46:32 2003  Matthias Clasen  <maclas@gmx.de>
6357
6358         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use 
6359         GTK_DATADIR/{icons,pixmaps} instead of 
6360         GTK_DATA_PREFIX/{icons,pixmaps}.  (#123365, Marco Pesenti Gritti)
6361
6362 Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>
6363
6364         Changes to improve menu positioning on Xinerama (#108328, #126150):
6365         
6366         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event 
6367         window of the menuitem to determine the monitor. This fixes some
6368
6369         * gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
6370         to store the monitor on which the menu is to be positioned.
6371
6372         * gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
6373         in the GtkMenuPrivate struct and fetch the monitor geometry after
6374         calling the position_func, in case it has been changed.
6375
6376         * gtk/gtkmenu.c (gtk_menu_set_monitor): New function 
6377         to be used in GtkMenuPositionFunc implementations for setting
6378         the monitor_num field in GtkMenuPrivate.
6379
6380         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call 
6381         gtk_menu_set_monitor.
6382
6383 Wed Nov 12 21:00:10 2003  Matthias Clasen  <maclas@gmx.de>
6384
6385         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
6386         label for the empty list. String change.  (#95446, Tomas Ã–gren)
6387
6388 Wed Nov 12 20:57:50 2003  Matthias Clasen  <maclas@gmx.de>
6389
6390         * gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
6391         the definition of the values.  (#123361, Marco Pesenti Gritti)
6392
6393 Wed Nov 12 20:54:02 2003  Matthias Clasen  <maclas@gmx.de>
6394
6395         * gdk/gdkkeyuni.c: Map KP_Separator to ','.
6396         (#122941, Egmont Koblinger)
6397
6398 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
6399
6400         *gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
6401         opacity entry widget. Change tooltip for opacity widgets. (#126426)
6402
6403 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
6404
6405         * gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
6406         affect window menu position when popped from keyboard. (#102660)
6407
6408 Wed Nov 12 01:29:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6409
6410         * gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
6411         are using the old API, make all items "is_important". That way
6412         BOTH_HORIZ will continue to show both icon and label in old API
6413         mode.
6414
6415 Mon Nov 10 00:40:41 2003  Matthias Clasen  <maclas@gmx.de>
6416
6417         * gtk/gtkeventbox.c (gtk_event_box_set_above_child): 
6418         Remember the new value in all cases.  (#126276, Damon Chaplin)
6419
6420 Sat Nov  8 23:06:02 2003  Matthias Clasen  <maclas@gmx.de>
6421
6422         * demos/gtk-demo/main.c (row_activated_cb): Call the do_
6423         functions with the toplevel as argument.
6424
6425         * demos/gtk-demo/geninclude.pl.in: Change the signature
6426         of GDoDemoFunc to take a widget argument
6427
6428         * demos/gtk-demo/ui_manager.c (do_ui_manager): 
6429         * demos/gtk-demo/tree_store.c (do_tree_store): 
6430         * demos/gtk-demo/textview.c (do_textview): 
6431         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
6432         * demos/gtk-demo/sizegroup.c (do_sizegroup): 
6433         * demos/gtk-demo/pixbufs.c (do_pixbufs): 
6434         * demos/gtk-demo/panes.c (do_panes): 
6435         * demos/gtk-demo/menus.c (do_menus): 
6436         * demos/gtk-demo/list_store.c (do_list_store): 
6437         * demos/gtk-demo/images.c (do_images): 
6438         * demos/gtk-demo/hypertext.c (do_hypertext): 
6439         * demos/gtk-demo/editable_cells.c (do_editable_cells): 
6440         * demos/gtk-demo/drawingarea.c (do_drawingarea): 
6441         * demos/gtk-demo/dialog.c (do_dialog): 
6442         * demos/gtk-demo/colorsel.c (do_colorsel): 
6443         * demos/gtk-demo/changedisplay.c (do_changedisplay): 
6444         * demos/gtk-demo/button_box.c (do_button_box): 
6445         * demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
6446         as argument, and make new windows or dialogs appear on the
6447         same screen.  (#80388)
6448
6449 Sat Nov  8 21:59:30 2003  Matthias Clasen  <maclas@gmx.de>
6450
6451         * gtk/gtkeventbox.c (gtk_event_box_class_init): Let 
6452         visible-window default to TRUE, as documented and 
6453         implemented. (#126270 Damon Chaplin)
6454
6455 Sat Nov  8 01:50:17 2003  Matthias Clasen  <maclas@gmx.de>
6456
6457         * gtk/gtkicontheme.c: 
6458         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): 
6459         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): 
6460         * gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
6461         2.4 additions.
6462
6463 2003-11-07  Federico Mena Quintero  <federico@ximian.com>
6464
6465         Changing GtkFileChooserEntry to use GtkEntryCompletion.
6466
6467         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
6468         a GtkListStore for the completion list.  Create a
6469         GtkEntryCompletion and attach it to the chooser entry.
6470         (gtk_file_chooser_entry_finalize): Unref the completion store.
6471         (completion_match_func): New callback for the GtkEntryCompletion.
6472         (completion_idle_callback): Fill the completion store with filenames.
6473
6474 Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
6475
6476         * gtk/gtkwindow.c (gtk_window_set_role): 
6477         * gtk/gtkwindow.c (gtk_window_set_title): 
6478         * gtk/gtkwidget.c (gtk_widget_set_name): 
6479         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
6480         * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
6481         safe for self-assignment.  (#122745, Soeren Sandmann)
6482
6483 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
6484
6485         * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
6486         (#126369, Olexiy Avramchenko)
6487
6488 Thu Nov  6 00:21:41 2003  Matthias Clasen  <maclas@gmx.de>
6489
6490         * gtk/gtkcolorbutton.c (gtk_color_button_init): 
6491         * gtk/gtkfontbutton.c (gtk_font_button_init): Improve the 
6492         consistency of titles.  (#126193, Damon Chaplin)
6493
6494 Wed Nov  5 22:49:36 2003  Matthias Clasen  <maclas@gmx.de>
6495
6496         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off 
6497         menus to be transient for the toplevel they were torn off from.
6498         (gtk_menu_get_toplevel): Auxiliary function to find the
6499         toplevel of a menu.  (#54775, Jon-Kare Hellan)
6500
6501 Wed Nov  5 21:07:58 2003  Matthias Clasen  <maclas@gmx.de>
6502
6503         * gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
6504         min-position and max-position.  (#58431, Padraig O'Briain)
6505
6506 Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>
6507
6508         * gtk/gtkcolorsel.c (update_color): 
6509         (make_label_spinbutton): 
6510         (adjustment_changed): Change the ranges for Saturation and
6511         Value to be 0-100 instead of 0-255, since these axes of HSV
6512         are usually expressed in percent.  (#121519, Gregory Merchan)
6513
6514 Wed Nov  5 08:51:48 GMT 2003  Tony Gale <gale@gtk.org>
6515
6516         * docs/faq/gtk-faq.sgml: More 2.x updates
6517
6518 Tue Nov  4 15:00:33 GMT 2003  Tony Gale <gale@gtk.org>
6519
6520         * docs/faq/gtk-faq.sgml: More 2.x updates, fix
6521         pkg-config command error, update copyright.
6522
6523 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
6524
6525         * gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
6526         well.  Use a helper function.
6527         (shortcuts_append_home): Display an error box if necessary.
6528         (shortcuts_append_desktop): Likewise.
6529         (add_bookmark_button_clicked_cb): Likewise.
6530         (gtk_file_chooser_default_select_path): Likewise.
6531         (entry_activate): Likewise.
6532         (shortcuts_append_paths): New helper function.
6533         (shortcuts_append_file_system_roots): Use
6534         shortcuts_append_paths().
6535         (shortcuts_append_bookmarks): Likewise.
6536
6537 Mon Nov  3 23:12:41 2003  Matthias Clasen  <maclas@gmx.de>
6538
6539         * gtk/gtkuimanager.c (_gtk_menu_is_empty): Return TRUE if 
6540         menu is NULL.
6541         (update_smart_separators): Remove some unneeded ifs.
6542
6543 Mon Nov  3 22:45:58 2003  Matthias Clasen  <maclas@gmx.de>
6544
6545         * gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
6546         these usable in C++. Forgot this file in my Oct 11 commit.
6547
6548 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
6549
6550         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
6551         icon to the "Add bookmark" button.
6552
6553         * gtk/gtkfilesystemunix.c: Mark missing strings for translation.
6554         * gtk/gtkfilesystemmodel.c: Likewise.
6555         * gtk/gtkfilechooser.c: Likewise.
6556         * gtk/gtkfilechooserdefault.c: Likewise.
6557
6558 Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>
6559
6560         * gdk/gdk.c: 
6561         * gdk/gdkinternals.h: 
6562         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
6563         GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
6564         Xinerama mode when no actual Xinerama setup is found. 
6565
6566 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
6567
6568         * gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
6569         (create_shortcuts_tree): Don't call the above.
6570         (bookmarks_changed_cb): Likewise.
6571         (tree_selection_changed): Unselect everything from the shortcuts
6572         list.  This is the behavior that Mac OS has.
6573         (toolbar_add_item): Return the item.
6574         (toolbar_create): Store the up_button in the impl structure.
6575         (toolbar_check_sensitivity): New function to set the sensitivity
6576         of the "Up" button in the toolbar.
6577         (tree_selection_changed): Call toolbar_check_sensitivity().
6578
6579 2003-11-02  Federico Mena Quintero  <federico@ximian.com>
6580
6581         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
6582         not set a border width for the toplevel container.
6583         (toolbar_create): New function; create a simple toolbar for the
6584         file chooser.
6585         (gtk_file_chooser_default_constructor): Use a spacing of 12 for
6586         the table, as per the HIG.
6587         (gtk_file_chooser_default_init): Likewise, for the default
6588         implementation's vbox.
6589
6590         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
6591         note that NULL is a valid return value for the parent path.
6592
6593 Sat Nov  1 14:59:27 2003  Owen Taylor  <otaylor@redhat.com>
6594
6595         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated): 
6596         Change on activation, not selection change (temporary
6597         workaround for #125955, needed for keynav, likely
6598         the right UI anyways.)
6599
6600         * gtk/gtkfilechooserdefault.c (shortcuts_select_func): 
6601         Don't allow the separator node to be selected.
6602
6603         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
6604         Set the focus chain so that the entry gets focused first.
6605         (Not really right after initial focusing, maybe we
6606         should just have a gtk_file_chooser_focus_entry() that
6607         we call from gtk_file_chooser_dialog on creation.)
6608
6609 Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>
6610
6611         * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
6612         residual call to gtk_window_get_private().
6613
6614 Sat Nov  1 09:10:13 2003  Owen Taylor  <otaylor@redhat.com>
6615
6616         * gtk/gtkwindow.[ch]: Move above_initially, below_initially
6617         into GtkWindowPrivate structure, fixing ABI breakage
6618         on Win32. (Hans Breuer). Switch GtkWindowPrivate over
6619         to instance-private-data.
6620
6621 Fri Oct 31 02:43:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6622
6623         * gtk/gtktoolbar.c (get_item_requisition): delete this function
6624         (toolbar_item_is_homogeneous): cache max_homogeneous_pixels
6625         instead of re-calculating for each item.
6626         (gtk_toolbar_size_allocate): Update comments
6627
6628 Thu Oct 30 22:04:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6629
6630         * gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
6631         placeholders when include_internals is TRUE.
6632
6633 Thu Oct 30 17:57:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6634
6635         * gtk/gtktoolbar.c (logical_to_physical): Make it work even when
6636         item 0 is a placeholder. (#125826)
6637         * tests/testtoolbar.c: add an assertion that 
6638         gtk_toolbar_get_nth_item (0) != NULL
6639
6640 Thu Oct 30 17:40:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6641
6642         * gtk/gtktoolbar.c (logical_to_physical): Make it work for
6643         logical == 0.(#125826)
6644
6645 Thu Oct 30 16:20:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6646
6647         * gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
6648         return the index of a real item.
6649         (get_nth_item) assert that the returned items is not a
6650         placeholder.  (#125826, Marco Pesenti Gritti).
6651         
6652 2003-10-29  Federico Mena Quintero  <federico@ximian.com>
6653
6654         * gtk/gtkcellrendererseptext.c
6655         (gtk_cell_renderer_sep_text_render): Only paint a separator if the
6656         text is NULL, rather than also doing it if it is an empty string.
6657
6658 Wed Oct 29 15:40:26 2003  Owen Taylor  <otaylor@redhat.com>
6659
6660         * gtk/gtkmessagedialog.c (gtk_message_dialog_new/
6661         gtk_message_dialog_new_with_format): Allow NULL
6662         for message_format, as described in the docs and
6663         as worked previously. (#125759, Richard Hult)
6664
6665         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
6666         Use g_markup_vprintf_escaped() to escape arguments.
6667
6668         * gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
6669         so there is some way to set literal markup.
6670
6671 Wed Oct 29 15:01:32 2003  Owen Taylor  <otaylor@redhat.com>
6672  
6673         * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
6674         the call to gdk_error_trap_pop() to the right place,
6675         fixing a problem where we'd pop() too many times 
6676         when bailing out. (#123302, Thomas Leonard)
6677         
6678 Wed Oct 29 12:50:02 2003  Owen Taylor  <otaylor@redhat.com>
6679
6680         * gtk/gtkfilechooserutils.c (delegate_set_current_folder): 
6681         Fix infinite recursion. (#125679, Christian Persch)
6682
6683 Wed Oct 29 13:29:15 GMT 2003  Tony Gale <gale@gtk.org>
6684
6685         * docs/faq/gtk-faq.sgml: further 2.x updates:
6686         mirrors,compiling,g_main_context_iteration
6687
6688 Wed Oct 29 02:54:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6689
6690         * gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
6691         function; remove gtk_toolbar_highlight_drop_location() and
6692         gtk_toolbar_unhighlight_drop_location().
6693
6694         Also fix bug where the number of overflowed items were miscounted.
6695
6696 Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>
6697
6698         * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
6699         some accidentally committed duplicate code.
6700
6701 Tue Oct 28 17:06:17 GMT 2003  Tony Gale <gale@gtk.org>
6702
6703         * docs/faq/gtk-faq.sgml: Update info on compiling GTK+
6704
6705 Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>
6706
6707         * gtk/gtkwindow.[ch] (gtk_window_is_active, 
6708         gtk_has_toplevel_focus): Add getters corresponding to
6709         the is_active and has_toplevel_focus properties.
6710         (#122531)
6711
6712 2003-10-28  Mark McLoughlin  <mark@skynet.ie>
6713
6714         * gtk/gtkexpander.c:
6715         (gtk_expander_class_init): hook up the destroy handler.
6716         (gtk_expander_destroy), (gtk_expander_unrealize):
6717         remove the expand/collapse timeout on destroy instead
6718         of unrealize to avoid leaving the expander in a inconsistent
6719         state when unrealizing during animation.
6720         (gtk_expander_start_animation): remove realized check.
6721         (gtk_expander_set_expanded): if the widget isn't realized,
6722         expand immediately.
6723
6724 Tue Oct 28 09:44:16 2003  Owen Taylor  <otaylor@redhat.com>
6725
6726         * gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
6727         do nothing when recipient is NULL, as described in the
6728         doc comment. (#123107, Thomas Leonard)
6729
6730 Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>
6731
6732         * gtk/gtkmain.c (gtk_check_version): Move docs inline,
6733         rewrite docs, mention memory management for the return
6734         value. (Partly addresses #125549, Michael Natterer)
6735
6736 2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>
6737
6738         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
6739         Change index to filter_index to fix compilation error.
6740
6741         * gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
6742
6743 Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>
6744
6745         * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
6746         we have RandR support, for XRRUpdateConfiguration declaration.
6747
6748         * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
6749         declaration.
6750
6751         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
6752         length a gsize variable, since that's what g_file_get_contents()
6753         expects.
6754
6755 Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>
6756
6757         * NEWS: Fix attribution for above/below EWMH work.
6758
6759 Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>
6760
6761         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name" 
6762         as a construct-only property.  (#125475, Murray Cumming)
6763
6764 Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6765
6766         Fix bug 116297 and 125472
6767         
6768         * gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
6769         this function take an index and a GtkToolItem.
6770
6771         * tests/testtoolbar.c (main): Make "Show Arrow" default to
6772         true. Make one of the separators !draw and expand.
6773         Update for new highlight_drop_location() API.
6774
6775         * gtk/gtktoolitem.[ch]: Remove "pack_end" property
6776
6777         * gtk/gtktoolbar.h: Formatting fixes.
6778
6779         * gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
6780         separator tool items to expand.
6781         (logical_to_physical, physical_to_logical): Fix off-by-one errors
6782         (Fix #125472, Marco Pesenti Gritti)
6783
6784         * gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
6785         (gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
6786         return FALSE, not TRUE.
6787         (gtk_separator_too_item_{set|get}_property,
6788         (gtk_separator_tool_item_{set|get}_draw): new functions
6789
6790 Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>
6791
6792         * === Released 2.3.0 ===
6793
6794         * configure.in: Remove a stray comma.
6795
6796         * README.in: Fix a few notes about Xft 1 and pango-1.0.
6797
6798         * NEWS: Finish updates for 2.3.0.
6799
6800         * po/Makefile.in.in: Update to latest GLib version.
6801
6802 Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>
6803
6804         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
6805         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
6806         gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
6807         under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
6808         Sandmann).
6809
6810 Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>
6811
6812         * gtk/gtktreemodelfilter.h: add padding to the class structure.
6813
6814 2003-10-23  Federico Mena Quintero  <federico@ximian.com>
6815
6816         * gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
6817         (gtk_file_chooser_remove_filter): Likewise.
6818         (gtk_file_chooser_select_all): Added docs.
6819         (gtk_file_chooser_unselect_all): Likewise.
6820
6821         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
6822
6823         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
6824
6825 Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>
6826
6827         * gtk/gtkfilefilter.c: 
6828         * gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
6829
6830 Thu Oct 23 22:33:47 2003  Matthias Clasen  <maclas@gmx.de>
6831
6832         * gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
6833
6834 Thu Oct 23 21:49:05 2003  Matthias Clasen  <maclas@gmx.de>
6835
6836         * NEWS: Remove a few duplicates, group the menu changes.
6837
6838 Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>
6839
6840         * NEWS: Updates for 2.3.0; changed header to match the style we used
6841         for 2.1.0.
6842
6843 Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>
6844
6845         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
6846         assign the new leader.  (#125168, Mariano Suarez-Alvarez)
6847
6848 Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>
6849
6850         * gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
6851         gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
6852         gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
6853
6854 Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6855
6856         * NEWS: Partial update for 2.3.0.
6857
6858 Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>
6859
6860         * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
6861         GtkComboBox.
6862
6863 Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>
6864
6865         * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch] 
6866         gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
6867         gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
6868         Basic framework for the new file selector widget.
6869
6870         * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch] 
6871         gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
6872         Initial implementation of the GtkFileChooser user interface.
6873
6874         * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
6875         for Unix files.
6876
6877         * configure.in gtk/Makefile.am gtk/xdgmime: Build code
6878         for freedesktop.org MIME system on Unix.
6879
6880         * tests/testfilechooser.c: Test program for GtkFileChooser
6881
6882         * tests/prop-editor.c: Add support for properties on interfaces.
6883
6884 Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>
6885
6886         * demos/gtk-demo/menus.c (do_menus): Fix some unused
6887         variables.
6888
6889         * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
6890         variable warning.
6891
6892 Thu Oct 23 00:04:50 2003  Matthias Clasen  <maclas@gmx.de>
6893
6894         * NEWS: Partial update for 2.3.0.
6895
6896 Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>
6897
6898         * gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
6899         ctrl_pressed and shift_pressed according to the current event
6900         state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
6901
6902 Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>
6903
6904         * gtk/gtkentry.c (gtk_entry_key_press): remove the completion
6905         timeout when the user pressed on Enter/ESC. Fixes the bug where the
6906         completion popup popped up after the user pressed on Enter (which is
6907         just weird). Reported by the Epiphany people (all of them).
6908
6909 Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6910
6911         Add support for OS X like sliding of toolbar items during drag and
6912         drop, (#110919, Dave Bordoley)
6913
6914         Make dnd highlighting the responsibility of the
6915         application. (Fixes #116298, Owen Taylor)
6916
6917         * gtk/gtktoolbar.h: Add prototypes for new API.
6918         
6919         * gtk/gtktoolbar.c
6920         (physical_to_logical, logical_to_physical): new functions
6921         converting between "position including placeholders" and "position
6922         excluding placeholders".
6923         (gtk_toolbar_class_init): remove drag_leave and drag_motion
6924         handlers
6925         (struct _ToolbarContent): new struct containing information
6926         related to toolbar items.
6927         (gtk_toolbar_highlight_drop_location): new public function
6928         (gtk_toolbar_unhighlight_drop_location): new public function
6929         
6930         * tests/testtoolbar.c
6931         (toolbar_drag_motion, toolbar_drag_leave): new functions
6932         (main): connect to dnd signals.  Make the "New" item expand to
6933         make drag and drop more exciting.
6934
6935 Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>
6936
6937         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
6938         _set_active, not _set_active_item.
6939
6940 Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>
6941
6942         * gtk/gtkcombobox.h: add padding to the class structure.
6943         * gtk/gtkcomboboxentry.h: ditto.
6944         * gtk/gtkentrycompletion.h: ditto.
6945
6946 Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>
6947
6948         * gtk/gtkcombobox.c (gtk_combo_box_get_active),
6949         (gtk_combo_box_set_active): mention in the docs that -1 is a valid
6950         value and what it means.
6951
6952         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
6953         item to -1 (default),
6954         (gtk_combo_box_entry_active_changed): do nothing when the index is
6955         < 0.
6956
6957 Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>
6958
6959         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
6960         to set the active row by iter.
6961
6962         * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
6963         to get the active row by iter.
6964
6965 2003-10-13  Federico Mena Quintero  <federico@ximian.com>
6966
6967         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
6968         operations on windows if the tree view is not mapped.
6969         (gtk_tree_view_button_press): Compare equal types of pointers, not
6970         GtkWidget* vs. GtkTreeView*.
6971
6972 Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>
6973
6974         * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
6975         the reset of first_sel_changed, as after the first popup the treeview
6976         will always have a row selected and will thus not focus_to_cursor.
6977
6978         * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
6979         whether the keyval should move the completion selection cursor (used
6980         to avoid ending up with extreme cluttered code), also added
6981         all KP_ equivalents of the keys here,
6982         (gtk_entry_completion_key_press): Keynav tweaks based on comments
6983         from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
6984         as possible current selection, implement Home/End keys, modified
6985         the down key to stop cycling. Maybe page up/down should be implemented
6986         at some later time.
6987
6988 Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>
6989
6990         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work 
6991         as documented when pixmap or mask is NULL.  (#124081) 
6992
6993 Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>
6994
6995         * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
6996         I was adding the signal block/unblock code. Oops. (Noticed by
6997         Marco Pesenti Gritti).
6998
6999 Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>
7000
7001         * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
7002         (set_interp_type), (main): port over from option menu to GtkComboBox.
7003
7004 Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>
7005
7006         * tests/testmenus.c: Still uses option menus, so turn off
7007         GTK_DISABLE_DEPRECATED.
7008
7009 Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>
7010
7011         * gtk/gtkalignment.[hc]: 
7012         * gtk/gtkcombobox.[hc]: 
7013         * gtk/gtkcomboboxentry.[hc]: 
7014         * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
7015         from header to implementation.
7016
7017 Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>
7018
7019         * tests/testtreeview.c: 
7020         * demos/testpixbuf-scale.c: 
7021         * tests/prop-editor.c: These files still use option menus,
7022         so turn off GTK_DISABLE_DEPRECATED to fix the build. 
7023
7024 Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>
7025
7026         * gtk/gtkactiongroup.h: 
7027         * gtk/gtkaction.h: 
7028         * gtk/gtkradioaction.h: 
7029         * gtk/gtkradiotoolbutton.h: 
7030         * gtk/gtkseparatortoolitem.h: 
7031         * gtk/gtktoggleaction.h: 
7032         * gtk/gtktoolitem.h: 
7033         * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
7034         these usable in C++.  (#124351, Murray Cumming)
7035
7036 Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>
7037
7038         * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
7039         non-NULL before accessing it. Oops.
7040
7041 Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>
7042
7043         * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
7044         (gtk_entry_completion_insert_action_text),
7045         (gtk_entry_completion_insert_action_markup): the gchar* parameters
7046         should be const (pointed out by both Marco Pesenti Gritti and
7047         Murray Cumming (#124356).
7048
7049 Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>
7050
7051         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
7052         child list mode, allocate the height allocation->height to the
7053         button instead of the height requested by the button. (Tiny
7054         size allocation screwup noticed by Macro Pesenti Gritti).
7055
7056 Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>
7057
7058         Fixes based on comments from Marco Pesenti Gritti.
7059
7060         * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
7061         signal handler, avoids the completion popup to popup when text is
7062         set programmatically in most cases (we actually have to handle this
7063         in the _editable functions as well, but that will break popping up
7064         when the user actually typed something :),
7065         (gtk_entry_completion_key_press): when handling enter, bail out
7066         when nothing has been selected,
7067         (gtk_entry_completion_changed): don't popdown when the entry content
7068         changed.
7069
7070         * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
7071         (gtk_entry_completion_selected_changed): unselect_all on the
7072         first selected changed signal. Avoids having a default row selected,
7073         (_gtk_entry_completion_popup): don't select the first row by default.
7074
7075         * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
7076         first_sel_changed field.
7077
7078 Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>
7079
7080         * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager 
7081         in the intro (again).
7082
7083 Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>
7084
7085         Fixes for (#124212, Marco Pesenti Gritti):
7086         
7087         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
7088         warnings for popups.
7089         (_gtk_menu_is_empty): Return FALSE for non-menus.
7090
7091 Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>
7092
7093         * gtk/gtkcombo.h: Deprecate.
7094         * gtk/gtkoptionmenu.h: Ditto.
7095
7096         * gtk/gtkcombobox.c (gtk_combo_box_size_request),
7097         (gtk_combo_box_size_allocate): Rework, things behave better now. Still
7098         needs some work on requesting enough size when taking the items in
7099         the list into account.
7100
7101         * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
7102         deprecated" guards.
7103         * gtk/gtkinputdialog.c: ditto.
7104         * gtk/gtkitemfactory.c: ditto.
7105         * gtk/gtkoptionmenu.c: ditto.
7106
7107         * demos/gtk-demo/menus.c: remove the option menu.
7108         * demos/gtk-demo/sizegroup.c: replace the option menus with
7109         GtkComboBox.
7110         * demos/gtk-demo/textview.c: ditto.
7111         (A general GtkComboBox demo will be added later on).
7112
7113 Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>
7114
7115         * demos/gtk-demo/ui_manager.c (activate_radio_action): New
7116         callback to propertly report radio actions.
7117
7118         * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
7119
7120 Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>
7121
7122         * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
7123         version in in the right field of the _XEMBED_INFO property.  
7124         (#123885, Denis Mikhalkin)
7125
7126 Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>
7127
7128         * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
7129         the child if we have one.
7130
7131         (gtk_expander_button_release): use
7132         gtk_widget_activate instead.
7133
7134 Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>
7135
7136         * gtk/gtktable.c (gtk_table_class_init): Start the blurb for 
7137         "right_attach" with a capital.  (#123945, Christian Rose)
7138
7139 Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>
7140
7141         * tests/testsocket.c (child_read_watch): Remove an
7142         extraneous unref.  (#122336, Frederic Crozat)
7143
7144 Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>
7145
7146         * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim 
7147         whitespace in "visible-window" blurb.  (#123910, Christian Rose)
7148
7149 Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7150
7151         * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
7152         focus arrow before pack_end items (#123851, Matthias Clasen)
7153
7154 Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>
7155
7156         * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
7157         on ->priv->cell_view if ->priv->cell_view is non-NULL.
7158
7159         * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
7160         field to GtkComboBoxEntryPrivate,
7161         (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
7162         (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
7163         (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
7164         a construct-only "text_column" property and reorder code to use it
7165         and support inheriting this widget.
7166
7167 Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>
7168
7169         * gtk/gtkcombobox.c: Added API doc comments.
7170
7171         * gtk/gtkcomboboxentry.c: Ditto.
7172
7173 2003-10-02  Matthias Clasen  <maclas@gmx.de>
7174
7175         * gtk/gtktoggleaction.c: Documentation tweaks.
7176
7177 Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>
7178
7179         * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
7180         packing/attribute/cell data functions from the header,
7181         (gtk_cell_view_set_cell_data): added support for cell data funcs.
7182
7183         * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
7184         packing/attribute/cell data functions from the header, implemented
7185         cell data func support.
7186
7187         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
7188         for the move to GtkCellLayout.
7189
7190         * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
7191
7192 2003-10-01  Matthias Clasen  <maclas@gmx.de>
7193
7194         * gtk/gtkaction.c (gtk_action_class_init): 
7195         (gtk_action_[gs]et_property): Introduce a separate
7196         "hide_if_empty" property for empty menu handling.
7197         (_gtk_action_sync_menu_visible): ...and use it here.
7198
7199         * tests/testmerge.c (main): ...and here.
7200
7201         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc 
7202         comments to pacify gtk-doc.
7203
7204         * gtk/gtkmain.c: Doc formatting tweaks.
7205
7206         * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
7207
7208         * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio): 
7209         Use the same parameter names as in .c file, to pacify gtk-doc.
7210
7211         * gtk/gtktoggletoolbutton.[hc]: 
7212         * gtk/gtktoolbutton.[hc]: 
7213         * gtk/gtktoolitem.[hc]:
7214         * gtk/gtktoolbar.[hc]: 
7215         * gtk/gtkcolorbutton.[hc]: 
7216         * gtk/gtkfontbutton.[hc]: 
7217         * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the 
7218         source, not in the header.
7219
7220         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio): 
7221         Document these as 2.4 API additions.
7222
7223 Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>
7224
7225         * gtk/gtkentry.c (gtk_entry_set_completion),
7226         (gtk_entry_get_completion): Add API doc comments.
7227
7228         * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
7229
7230 Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>
7231
7232         * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
7233
7234 Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>
7235
7236         * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
7237
7238         * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
7239
7240 2003-09-30  Matthias Clasen  <maclas@gmx.de>
7241
7242         * tests/merge-*.ui: 
7243         * tests/testmerge.c: Test handling of empty menus.
7244
7245         * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
7246         whether a menu is empty. Used in gtkaction.c.
7247         (update_smart_separators): Also update the visibility of empty menus.
7248         (update_node): When creating a new menu proxy, insert an "Empty" menu 
7249         item which only gets shown if the menu is empty. 
7250
7251         * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
7252         "is_important" for menu proxies.
7253         (_gtk_action_sync_menu_visible): New function to sync the visibility
7254         of menu proxies. Used in gtkuimanager.c.
7255         (gtk_action_sync_visible): New function to sync the visibility of 
7256         proxies.
7257
7258 Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>
7259
7260         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
7261         popup_in_progress to TRUE,
7262         (gtk_combo_box_menu_show): and back to FALSE here; the menu now
7263         won't disappear on the first button release. (Reported by Matthias
7264         Clasen).
7265
7266 Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>
7267
7268         * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
7269
7270         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
7271         Marco Pesenti Gritti).
7272
7273 2003-09-30  Murray Cumming  <murrayc@usa.net>
7274  
7275         * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
7276         instead of a GdkWindow*, because that what it is given. The 
7277         documentation was already correct. This should cause no API/ABI
7278         breakage with C compilers.
7279         * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c, 
7280         gtkcellrenderertogger.c: Updated the declarations of the render vfunc
7281         implementation accordingly.
7282
7283 2003-09-30  Matthias Clasen  <maclas@gmx.de>
7284
7285         * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
7286         "direction-changed" and "keys-changed" signals.
7287
7288         * gdk/gdkscreen.c (gdk_screen_class_init): Document the 
7289         "size-changed" signal.
7290
7291         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): 
7292         Document the "display-opened" signal.
7293
7294         * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
7295         (gdk_display_class_init): Document the "closed" signal.
7296
7297 Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7298
7299         * gtk/gtktextview.[ch]: rename property tab_moves_focus to
7300         accepts_tab. (#122709 again).
7301
7302 2003-09-27  Matthias Clasen  <maclas@gmx.de>
7303
7304         * gtk/gtkwindow.c (gtk_window_new):
7305         * gtk/gtkitemfactory.c (gtk_item_factory_new): Document 
7306         the fact that the newly created object does not come with 
7307         a floating reference.  (#103068, patch by Frederic Lespez)
7308         
7309         * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor 
7310         of GtkUIManager. Just leave GtkTranslateFunc undeprecated, 
7311         since GtkActionGroup uses it.
7312
7313         * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
7314         this test uses the soon-to-be-deprecated GtkItemFactory.
7315
7316         * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
7317         remove item_factory.c
7318
7319         * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c 
7320         using GtkUIManager instead of GtkItemFactory.
7321
7322         * tests/testmerge.c: Demonstrate the use of the 
7323         connect-proxy signal.
7324
7325         * gtk/gtkaction.c (connect_proxy): Add connect-proxy and 
7326         disconnect-proxy signals to do small customizations 
7327         like displaying tooltips in the statusbar without 
7328         custom actions.  (#122894, Philip Langdale)
7329
7330         * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
7331
7332 Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>
7333
7334         Landing the new ComboBox. Note that only gtkcombobox.h and
7335         gtkcomboboxentry.h are public.
7336
7337         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
7338         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
7339
7340         * gtk/Makefile.am, gtk/gtk.h: adding the new files.
7341
7342         * tests/testcombo.c: and a new test.
7343
7344         * tests/Makefile.am: adding the new test.
7345
7346 2003-09-25  Tor Lillqvist  <tml@iki.fi>
7347
7348         * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
7349
7350 2003-09-21  Tor Lillqvist  <tml@iki.fi>
7351
7352         * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
7353         function. Code split out from gdk_event_translate(). Needed
7354         because gdk_event_get_graphics_expose() couldn't do anything
7355         sensible otherwise. (Not that I think graphics exposes work anyway
7356         in gdk/win32, but at least now the code could work.)
7357
7358         (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
7359         gdk_event_translate(), which couldn't have worked as it doesn't
7360         take any pre-allocated GdkEvent parameter any longer.
7361         
7362         (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
7363         GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
7364
7365 2003-09-24  Matthias Clasen  <maclas@gmx.de>
7366
7367         * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
7368         on toolitems.
7369
7370         * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
7371
7372         * gtk/gtkuimanager.c (update_node): Don't complain about missing
7373         actions on popups. Re-set "tooltip" property on toolitems after
7374         adding them to parent to trigger proxy update.
7375
7376 2003-09-22  Matthias Clasen  <maclas@gmx.de>
7377
7378         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
7379         group member to test the fix for #122904.
7380
7381         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
7382         Add the action to the group before activating it, otherwise we
7383         may end up with multiple active group members.  (#122904, Marco
7384         Pesenti Gritti)
7385
7386 2003-09-21  Matthias Clasen  <maclas@gmx.de>
7387
7388         Changes to make cross-process merging feasible:
7389         
7390         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
7391         merged UI definition. Remove the "changed" signal, since its role
7392         is now filled by "notify::ui". Instead add a "actions-changed" signal
7393         which gets emitted when the set of actions changes.
7394
7395         * gtk/gtktoggleactionprivate.h:
7396         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
7397         Add a "draw_as_radio" property to toggle actions so that they can be
7398         used as proxies for radio actions much like the "draw_as_radio" 
7399         property on check menu items enables them to operate as proxies for
7400         radio actions.
7401
7402         Prevent the "show_all" trap for action-based menus (see
7403         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
7404         msg00260.html):
7405
7406         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
7407         calls from static functions.
7408
7409         * gtk/gtkuimanager.c (update_node): 
7410         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
7411         widgets whose visibility is externally controlled.
7412
7413         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
7414         "no_show_all" property with setter and getter. When TRUE, it keeps
7415         gtk_widget_{hide,show}_all() from modifying the visibility of the 
7416         widget and its children.
7417
7418 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7419
7420         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
7421
7422 2003-09-20  Tor Lillqvist  <tml@iki.fi>
7423
7424         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
7425         including editor backup files. List files we want explicitly.
7426
7427         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
7428         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
7429         LC_ALL, LC_CTYPE and LANG environment variables, than calls
7430         g_win32_getlocale().
7431
7432         (gtk_get_default_language): Code snippet moved to above function,
7433         call it.
7434
7435         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
7436         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
7437         _gtk_get_lc_ctype() instead of setlocale().
7438
7439 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7440
7441         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
7442         (#96632)
7443
7444 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7445
7446         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
7447         documentation. (#117306, Steve Chaplin)
7448
7449 2003-09-19  Tor Lillqvist  <tml@iki.fi>
7450
7451         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
7452         present on the US-International keyboard. For clarity, order
7453         keysyms in case statement according to numeric value.
7454
7455         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
7456         correctly. (#120176, Ken Rastatter and Owen Taylor)
7457
7458 2003-09-18  Matthias Clasen  <maclas@gmx.de>
7459
7460         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
7461         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
7462
7463         Install accelerators on actions, not on proxies, support
7464         accelerator-only actions:
7465         
7466         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
7467         and its lock status either via _gtk_widget_get_accel_path() or by 
7468         looking at the accel_path stored in the menu item itself and determining
7469         its lock status by peeking into the contained accel label. This was
7470         already (accidentally) committed a week ago.
7471
7472         * gtk/gtkaction.h (gtk_action_set_accel_group):
7473         (gtk_action_[dis]connect_accelerator): New functions.
7474
7475         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
7476         accel_closure and accel_count. We must have a reference to the 
7477         accel_group, since we need it in connect_proxy. The count is necessary
7478         to ensure that the accelerator isn't removed before the last proxy 
7479         requesting it has been unmerged.
7480         (connect_proxy): Connect the accelerator to the 
7481         action now, only set the accel_path on the menuitem.
7482         (remove_proxy): Disconnect the accelerator from the action, not from
7483         the menuitem.
7484         (gtk_action_set_accel_group): Set the accel group. 
7485         (gtk_action_[dis]connect_accelerator): Count the number of times
7486         this functions have been called and install/remove the accelerator if
7487         the count leaves/reaches zero.
7488
7489         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
7490         GTK_UI_MANAGER_ACCELERATOR.
7491
7492         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
7493         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
7494         <accelerator> elements.
7495         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
7496         type is GTK_UI_MANAGER_ACCELERATOR.
7497         (update_node): Set the accel group on actions before creating their
7498         proxies. Don't set the accel group on created menus. For 
7499         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
7500         (print_node): Also emit <accelerator> elements.
7501
7502         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
7503
7504         * gtk/gtkuimanager.c (update_node): Robustness improvements.
7505
7506 2003-09-17  Matthias Clasen  <maclas@gmx.de>
7507
7508         * gtk/gtkuimanager.c (text_handler): Report unexpected character
7509         data as error from the GMarkup parser, otherwise things like
7510         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
7511         pass unexpectedly.
7512
7513 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7514
7515         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
7516         committed redraw_on_allocate change.
7517
7518 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
7519
7520         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
7521         stubs to fix compilation
7522
7523         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
7524         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
7525
7526         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
7527         variable. Patch from Marc Welz (#121347).
7528
7529 2003-09-16  Matthias Clasen  <maclas@gmx.de>
7530
7531         * gtk/gtkaction.h: Apply egtk-format-protos.
7532
7533 2003-09-15  Matthias Clasen  <maclas@gmx.de>
7534
7535         * gtk/gtkuimanager.c: Doc tweaks.
7536
7537         Smart separators; see 
7538         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
7539         
7540         * gtk/gtkuimanager.c (update_smart_separators): New function which 
7541         implements "smart" separators by iterating once over the entries of a 
7542         menu, hiding and showing separators as necessary.
7543         (update_node): Mark separators used as fences of placeholders as
7544         hidden. Explicitly added separators are marked as smart. Call 
7545         update_smart_separators after updating a menu or toolbar node. 
7546         Connect update_smart_separators to "notify::visible" signal on menu
7547         and tool items.
7548         
7549         * tests/merge-[12].ui: Test smart separators.
7550
7551         Changes to allow setting action state before connecting signal; see
7552         the thread starting at 
7553         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
7554         
7555         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
7556         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
7557         setting the currently selected group member before connecting signals.
7558         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
7559         including a boolean to initialize the action state before connecting
7560         signals.
7561         (gtk_action_group_add_toggle_actions):
7562         (gtk_action_group_add_toggle_actions_full): New functions to construct
7563         toggle actions from an array of GtkToggleActionEntries.
7564
7565         * demos/gtk-demo/appwindow.c: 
7566         * tests/testactions.c: 
7567         * tests/testmerge.c: Adjust to new action group API.
7568
7569 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7570
7571         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
7572         "gtk-toolbar-arrow" so themes can special-case it.
7573
7574 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7575
7576         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
7577
7578 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7579
7580         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
7581         PangoFontMetrics. Patch from Steve Chaplin (#122257).
7582
7583 2003-09-14  Tor Lillqvist  <tml@iki.fi>
7584
7585         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
7586         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
7587         the usefulness of which was already in doubt. Removing it fixes
7588         bugs #118575 and #121851.
7589
7590 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
7591
7592         Merge from stable.
7593
7594         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
7595         pressed button (used to determine if we want to initiate a drag later
7596         on) if the current grab widget is either NULL or tree_view (Reported
7597         by Jeroen Zwartepoorte).
7598
7599 2003-09-12  Matthias Clasen  <maclas@gmx.de>
7600
7601         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
7602         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
7603
7604 2003-09-11  Matthias Clasen  <maclas@gmx.de>
7605
7606         * gdk/gdkpango.c: Doc tweaks.
7607
7608         * tests/testgtk.c: Add table menu tests.
7609
7610         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
7611         GtkMenuPrivate struct itself. Pointed out by valgrind.
7612
7613         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
7614         properly.  (#121998)
7615
7616 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
7617
7618         The table menu patch! Turns GtkMenu into a table, so you can attach
7619         menu items in numerous new ways! Be creative!
7620
7621         Contains some bug fixes and RTL adaptions from Matthias Clasen.
7622
7623         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
7624         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
7625         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
7626         the heights array in the private struct,
7627         (gtk_menu_class_init): reorder code a bit, install child properties,
7628         (get_attach_info), (get_child_attach): new utility functions,
7629         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
7630         child properties, for the attach info,
7631         (gtk_menu_remove): remove AttachInfo from menu item,
7632         (gtk_menu_real_insert): implemented algorithm to automagically place
7633         inserted menu items at the correct place in the table,
7634         (gtk_menu_size_request), (gtk_menu_size_allocate),
7635         (compute_child_offset): reworked/rewritten to support table menus,
7636         (gtk_menu_attach): new function,
7637         (find_child_containing), (gtk_menu_move_current): new functions to
7638         get table menu keynav right.
7639
7640         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
7641
7642 2003-09-10  Matthias Clasen  <maclas@gmx.de>
7643
7644         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
7645         PropertyNotify events from the stream if they have been handled,
7646         in order to enable extending the plug<->socket communication via
7647         properties.
7648
7649 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
7650
7651         Big TreeView DnD fixage, makes drops on empty models work, makes
7652         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
7653         Related bugs #95362 and #113314. I don't want to touch this code
7654         ever again.
7655
7656         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
7657
7658         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
7659         for selection_data->length.
7660
7661         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
7662         (set_dest_row), (get_dest_row): we don't store just the row ref
7663         anymore, but a struct with the row ref and additional info,
7664         (set_destination_row): handle drops on empty space and some
7665         style fixes,
7666         (get_logical_dest_row): also return path_down_mode/drop_append_mode
7667         flags, handle dropping childs on their new parents, rewrite
7668         drop append handling into something saner,
7669         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
7670         spaces,
7671         (gtk_tree_view_drag_drop): updates for updated backend,
7672         (gtk_tree_view_drag_data_received): updates for updated backend,
7673         path down mode (treestore DnD) handling,
7674         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
7675         when we are trying to drop a row on an empty model,
7676         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
7677
7678         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
7679         (gtk_list_store_row_drop_possible): style and drop-append fixes.
7680
7681         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
7682
7683 2003-09-08  Alexander Larsson  <alexl@redhat.com>
7684
7685         * gtk/gtkeventbox.[hc]:
7686         Implement gtk_event_box_get/set_input_only()
7687         
7688         * tests/testgtk.c:
7689         Tests for the new input only event boxes
7690
7691 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
7692
7693         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
7694
7695         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
7696         the call to gtk_tree_model_filter_add_root,
7697         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
7698         the virtual root, allow building levels on the second try to convert
7699         the child path to a filter path,
7700         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
7701         root when calling gtk_tree_model_filter_elt_get_path.
7702
7703 2003-09-07  Matthias Clasen  <maclas@gmx.de>
7704
7705         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
7706         Josh Beam)
7707
7708         Fixes for accelerator handling during (un)merging:
7709         
7710         * gtk/gtkuimanager.c (update_node): Move setting info-action
7711         after the switch, since the old action is needed in some cases.
7712         In cases of proxy type mismatch, disconnect the old proxy from
7713         the old action.
7714
7715         * gtk/gtkaction.c (remove_proxy): Renamed from 
7716         gtk_action_remove_proxy(). Move unsetting of the accelerator
7717         here from disconnect_proxy() in order to catch all cases of 
7718         removing a proxy.
7719         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
7720         to fail if proxy isn't a proxy of action.
7721
7722 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
7723
7724         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
7725         ALL_LINGUAS
7726
7727 2003-09-07  Matthias Clasen  <maclas@gmx.de>
7728
7729         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
7730         for toolitems.
7731
7732 2003-09-06  Matthias Clasen  <maclas@gmx.de>
7733
7734         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
7735         prev_action, not from action.  (Fix by David Hampton)
7736
7737 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
7738  
7739         * Back out locale-dependent interpretation of
7740         KP_Decimal, the official XFree86 interpretation
7741         is that KP_Decimal => . KP_Separator => ,
7742         always, independent of locale. 
7743         (#105161, Frederic Crozat, 
7744         http://bugs.xfree86.org/show_bug.cgi?id=534)
7745  
7746 2003-09-04  Matthias Clasen  <maclas@gmx.de>
7747
7748         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
7749
7750         * gtk/gtktoggleaction.c (connect_proxy): 
7751         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
7752         that a "draw_as_radio" property is needed for check buttons similar to 
7753         check menu items, in order to fully support button proxies for radio actions.
7754
7755         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
7756
7757         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
7758
7759         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
7760         'type' argument of gtk_ui_manager_add_ui().
7761
7762         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
7763         to make this function as powerful as the XML methods of adding UI.  (#120647)
7764
7765 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
7766
7767         Merge from stable.
7768
7769         * docs/RELEASE-HOWTO: updates.
7770
7771 2003-09-04  Matthias Clasen  <maclas@gmx.de>
7772
7773         * tests/merge-2.ui: Use "position" instead of "pos".
7774
7775         * gtk/gtkuimanager.c (start_element_handler): No need 
7776         to be terse: Change the name of the "pos" attribute
7777         to "position".
7778
7779 2003-09-04  Matthias Clasen  <maclas@gmx.de>
7780
7781         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
7782         GtkUIManagerNode to shorten the names and to make the
7783         GTK_UI_MANAGER_<TYPE> names available for a public enum.
7784
7785         * gtk/gtkactiongroup.c:
7786         * gtk/gtkuimanager.c: Various doc tweaks.       
7787
7788         * gtk/gtkuimanager.c (start_element_handler):
7789         (end_element_handler): Improve error reporting. 
7790
7791 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
7792
7793         Merge from stable.
7794
7795         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
7796         use end_position - page_size instead of G_MAXINT, since
7797         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
7798         reported by Havoc Pennington).
7799
7800 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
7801
7802         Merge from stable.
7803
7804         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
7805         unref it. (Fixes memleak, patch from Kjartan Maraas).
7806
7807 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
7808
7809         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
7810         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
7811         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
7812         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
7813         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
7814         gtk/gtktypeutils.h: big patch from Kjartan Maraas
7815         to fix numerous typos.
7816
7817 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
7818
7819         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
7820
7821 2003-09-02  Tor Lillqvist  <tml@iki.fi>
7822
7823         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
7824         CloseHandle() on the HMODULE returned from GetModuleHandle().
7825         Didn't cause any harm, but didn't do anything useful either. When
7826         running a GTK+ program under MS's debugger, the CloseHandle() call
7827         would cause a "first-chance exception" in ntdll.dll to show up.
7828         (The exception is caught appropriately if you let it proceed, but
7829         it confuses the person using the debugger). Thanks to Bruce
7830         Hochstetler for noticing.
7831
7832 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
7833
7834         Merge from stable.
7835
7836         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
7837         to only select when button 1 is pressed introduced in the fix of
7838         bug #120187.
7839
7840 2003-09-02  Matthias Clasen  <maclas@gmx.de>
7841
7842         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
7843
7844         * gtk/gtkuimanager.c: Shorten the names of some static 
7845         functions.
7846
7847         Support adding and removing merge nodes dynamically (#120647, 
7848         Anders Carlsson):
7849         
7850         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
7851         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
7852         and made it public.
7853         (gtk_ui_manager_add_ui): New function to add UI elements
7854         without juggling XML fragments, currently restricted to menuitems,
7855         toolitems and separators. Actions still come from registered 
7856         action groups.
7857
7858 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7859
7860         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
7861         background pixmap was being offset twice, once by the ts_origin in
7862         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
7863
7864 2003-09-01  Matthias Clasen  <maclas@gmx.de>
7865
7866         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
7867         this public again, since it's occasionally useful.  (#121128,
7868         Marco Pesenti Gritti)
7869
7870         * gtk/gtkaction.c: Add an "is_important" property and propagate
7871         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
7872
7873 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7874
7875         * tests/testtoolbar.c (main): connect to "delete_event" so the
7876         application will actually quit when you close the window
7877
7878 2003-09-01  Matthias Clasen  <maclas@gmx.de>
7879
7880         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
7881         (gtk_ui_manager_get_action): g_return_if_fail() if
7882         path is NULL.
7883         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
7884         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
7885         Marco Pesenti Gritti)
7886
7887 2003-08-31  Matthias Clasen  <maclas@gmx.de>
7888
7889         * gtk/gtktoolitem.c: Fix some typos in docs.
7890
7891         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
7892         replaces gtk_ui_manager_activate().  (#120658)
7893
7894         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
7895         gtk_ui_manager_activate().
7896
7897         * gtk/gtkaction.c: 
7898         * gtk/gtkactiongroup.c: Some doc tweaks.
7899
7900         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
7901         wasn't emitted anyway. Some doc tweaks.
7902
7903 2003-08-30  Matthias Clasen  <maclas@gmx.de>
7904
7905         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
7906         rather than to "remove" on handlebox. 
7907
7908         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
7909         activate an action found by following a path.  (#120658)
7910
7911         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
7912
7913         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
7914
7915         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
7916         setter and getter. If it is set, add tearoff menu items to regular 
7917         menus, but not to popups. Add a signal "changed", which gets emitted
7918         when the merged ui has changed.  (#120649, #120656)
7919
7920         * tests/testmerge.c: Add button to test the generation of tearoff 
7921         menu items.
7922
7923 2003-08-29  Matthias Clasen  <maclas@gmx.de>
7924
7925         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
7926         Actually group the actions together rather than putting each in its 
7927         own group.
7928
7929         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
7930         proxy menu items for radio actions.
7931
7932         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
7933
7934 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7935
7936         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
7937         Fix use of uninitialized variable.
7938
7939         * gtk/gtktextutil.c
7940         (_gtk_text_util_append_special_char_menuitems): add const cast to
7941         get rid of warning
7942
7943 2003-08-29  Matthias Clasen  <maclas@gmx.de>
7944
7945         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
7946         "draw_as_radio" as a separate property, not as an alias of 
7947         "inconsistent".
7948         (gtk_check_menu_item_get_property): 
7949         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
7950
7951 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7952
7953         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
7954         are narrower than 13 time the estimated character width of the
7955         font. (#107781, David Bordoley)
7956
7957         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
7958         here if the GtkToggleButton is active. This may be the case if it
7959         is a radio button.
7960
7961         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
7962         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
7963         Suarez-Alvarez).
7964
7965         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
7966         property. (#111207, David Bordoley).
7967
7968         * gtk/gtktoggletoolbutton.c
7969         (gtk_toggle_tool_button_create_menu_proxy): use new
7970         "draw_as_radio" property on the menu item when the item is a radio
7971         tool button
7972
7973         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
7974         to only pay attention to the "use_underline" property when the
7975         button label comes from the "label" property.
7976
7977 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
7978
7979         * configure.in: Added "sq" to ALL_LINGUAS.
7980         
7981 2003-08-28  Matthias Clasen  <maclas@gmx.de>
7982
7983         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
7984         fix in the docs.
7985
7986         * gtk/gtkuimanager.c: Change the XML format:
7987         <Root> element is replaced by <ui>,
7988         <menu> element is replaced by <menubar>,
7989         <submenu> element is replaced by <menu>,
7990         <dockitem> element is replaced by <toolbar>,
7991         <popups> element is gone,
7992         verb attribute is replaced by action,
7993         name defaults to action or the element name. 
7994
7995         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
7996         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
7997         by removing the user_data, entry_type and extra_data fields, 
7998         GtkRadioActionEntry is further simplified by removing the callback. 
7999         The user_data can now be specified as an argument to 
8000         gtk_action_group_add_actions(). There is a new method 
8001         gtk_action_group_add_radio_actions(), which is similar to 
8002         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
8003         and a callback parameter in addition to the user_data. The callback
8004         is connected to the ::changed signal of the first group member.
8005         There are _full() variants taking a GDestroyNotify of 
8006         gtk_action_group_add_[radio_]actions().
8007
8008         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
8009         on every member of the radio group when the active member is changed. 
8010         Add an integer property "value", and a getter for the value of "value"
8011         on the currently active group member. 
8012
8013         * tests/testactions.c: 
8014         * tests/testmerge.c: 
8015         * tests/merge-[123].ui:  
8016         * demos/gtk-demo/appwindow.c: Adjust to these changes.
8017
8018         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
8019
8020 2003-08-27  Anders Carlsson  <andersca@gnome.org>
8021
8022         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
8023         text view, so the tool bar won't have focus.
8024
8025 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
8026
8027         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
8028         declaration not at start of block. (#120371, Damien Carbery)
8029
8030 2003-08-26  Matthias Clasen  <maclas@gmx.de>
8031
8032         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
8033         for length, not gsize.
8034
8035         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
8036         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
8037         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
8038
8039         * demos/gtk-demo/appwindow.c: 
8040         * tests/testactions.c: 
8041         * tests/testmerge.c:
8042         * tests/merge-1.ui:
8043         * tests/merge-2.ui:
8044         * tests/merge-3.ui: Adjust to the new XML format.
8045
8046 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
8047
8048         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
8049         Since we add one to the layout's reported width to
8050         account for the cursor, we need to subtract one when
8051         setting the wrap width for the layout. (Fixes infinite
8052         loop (#120325, Frederic Crozat)
8053
8054         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
8055         Be a bit more careful about rounding when converting
8056         wrapped width from Pango units to pixels.
8057
8058 2003-08-26  Matthias Clasen  <maclas@gmx.de>
8059
8060         Rename GtkMenuMerge to GtkUIManager. 
8061         
8062         * gtk/gtkuimanager.[hc]: New files. 
8063         * gtk/gtkmenumerge.[hc]: Removed. 
8064
8065         * gtk/Makefile.am: 
8066         * gtk/gtk.h:
8067         * tests/testmerge.c: 
8068         * tests/testactions.c: 
8069         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
8070         GtkUIManager.
8071
8072         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
8073         add comments to entries array, remove newlines from ui definition. Don't 
8074         use the ::add_widget signal.
8075
8076 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
8077
8078         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
8079         include page->menu_label - causes various problems,
8080         including #12047.
8081
8082 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
8083
8084         Merge from stable.
8085
8086         Fixes #115871, reported by Michael Natterer.
8087
8088         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
8089         added ctrl_pressed and shift_pressed bitfields,
8090         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
8091         arg with GtkTreeSelectMode.
8092
8093         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
8094         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
8095         (_gtk_tree_selection_internal_select_node): all updated for
8096         GdkModifierType -> GtkTreeSelectMode move.
8097
8098         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
8099         and shift_pressed around selection handling block,
8100         (gtk_tree_view_real_select_cursor_row),
8101         (gtk_tree_view_real_toggle_cursor_row),
8102         (gtk_tree_view_real_selection_cursor_parent),
8103         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
8104         instead of checking the event state. And also updates for the
8105         GdkModifierType -> GtkTreeSelectMode move.
8106
8107 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
8108
8109         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
8110         to the parent when there was no focus widget before
8111         and no focus widget after - that is, when there are
8112         no focusable widgets. (#108678, help tracking it
8113         down from Padraig O'Briain, Federico Mena Quintero, )
8114
8115         * gtk/gtkxembed.[ch]: Move various shared utilities
8116         for the XEMBED protocol eused by GtkPlug and GtkSocket 
8117         here.
8118
8119         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
8120         a flag bit that is sent with focus mesages to indicate
8121         that the focus has wrapped around on the toplevel;
8122         use this bit to catch infinite loops when there is no
8123         focusable widget at ll in the entire toplevel.
8124
8125         * tests/testsocket.c (child_read_watch): Remove an
8126         extraneous unref.
8127
8128         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
8129         Up XEMBED protocol version to 1, add logic for 
8130         sending the right version in XEMBED_EMBEDDED_NOTIFY.
8131
8132         * gtk/gtksocket.c (gtk_socket_add_window): Send
8133         the embedder window in the XEMBED_EMBEDDED_NOTIFY
8134         as the spec requires.
8135
8136 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
8137
8138         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
8139         NumLock handling for non-XKB. Add a special case
8140         hack for NumLock on Sun servers. (Patch from
8141         Robert Basch, #115819)
8142
8143 2003-08-25  Matthias Clasen  <maclas@gmx.de>
8144
8145         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
8146         Welinder)
8147
8148         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
8149         gtk_action_group_set_translation_domain): Hooks for translation of
8150         label and tooltip in GtkActionGroupEntries.  (#120620)
8151
8152 2003-08-25  Matthias Clasen  <maclas@gmx.de>
8153
8154         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
8155         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
8156         
8157         * gtk/gtkactiongroup.c: 
8158         * demos/gtk-demo/appwindow.c: 
8159         * tests/testmerge.c: 
8160         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
8161
8162 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
8163
8164         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
8165
8166 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
8167
8168         * gtk/Makefile.am: Fix accidental commit of references
8169         to gtkresizegrip.[ch]
8170
8171 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
8172
8173         * gtk/gtkrc.c: Fix some missing initializations of
8174         rc_file->directory.
8175
8176 2003-08-24  Matthias Clasen  <maclas@gmx.de>
8177
8178         * gtk/gtkaction.[ch]: 
8179         * gtk/gtktoggleaction.[ch]: 
8180         * gtk/gtktoggleactionprivate.h: 
8181         * gtk/gtkradioaction.[ch]: 
8182         * gtk/gtkactiongroup.[ch]: 
8183         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
8184         toolbars, using the EggMenu code by James Henstridge.
8185
8186         * gtk/gtk.h: Include new headers.
8187         * gtk/Makefile.am: Add new files.
8188
8189         * tests/testactions.c: Test for actions.
8190         * tests/testmerge.c: Test for menu merging.
8191         * tests/merge-[123].ui: Test data for testmerge. 
8192         * tests/Makefile.am: Add testactions and testmerge.
8193
8194         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
8195         menubar and toolbar.
8196         
8197 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
8198  
8199         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
8200         problem where rc_file->directory wasn't always getting
8201         set. (#120549, Luis Villa)
8202  
8203 2003-08-22  Christian Rose  <menthos@menthos.com>
8204
8205         * configure.in: Added "ne" to ALL_LINGUAS.
8206
8207 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
8208  
8209         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
8210         being parsed, not just the directories for those
8211         files. Use that to catch recursion. (Part of
8212         #114988)
8213  
8214 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
8215
8216         Merge from stable.
8217
8218         Fix option menu scrolling (#119821, Owen Taylor).
8219
8220         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
8221         by #80484 and the CLAMP,
8222         (get_menu_height): new function,
8223         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
8224         new_offset to handle page up/down right.
8225
8226 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
8227
8228         * gdk/x11/gdkkeys-x11.c: Change the interpretation
8229         of consumed_modifiers so that it contains:
8230          - Modifiers combinations actually found in
8231            state.
8232          - Single modifier modifier combinations.
8233         But not multi-modifier combinations that aren't
8234         in event->state. Document. (#100439)
8235
8236 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
8237
8238         Slightly modified patch from Yann Rouillard to improve selection
8239         behavior with the mouse. Fixes #120187.
8240
8241         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
8242         select/deselect items on the first button press of button 1,
8243         expand checks for row_activated to include triple clicks.
8244
8245 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
8246
8247         Merge from stable.
8248
8249         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
8250         approximate digit widths up, to avoid truncation, convert to
8251         pango pixels when we have the full string width instead of converting
8252         the approx digit width to pango pixels, take inner border and
8253         interior focus into account correctly. (Fixes #116368, patch from
8254         Morten Welinder).
8255
8256 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
8257
8258         * gtk/queryimmodules.c: Don't look at the same directory twice (in
8259         simple cases). (#120342)
8260
8261 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8262
8263         * gdk/gdkwindow.c: Make the layers in the paint stack have their
8264         own pixmap instead of sharing one. (#118317)
8265
8266         * tests/testgtk.c (create_get_image): Fixes to make the window fit
8267         on an 800x600 screen
8268
8269 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
8270
8271         Merged from stable.
8272
8273         * gtk/gtkspinbutton.c (start_spinning): change the type of step
8274         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
8275
8276 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
8277
8278         * modules/input/gtkimcontextxim.[ch]: Substantially
8279         rework the handling of status windows:
8280         
8281          - Store the current StatusWindow in the 
8282            GtkIMContextXIM structure and vice-versa, so we
8283            don't have to hunt the window hierarchy on
8284            cleanup.
8285          - Use the Gtkidget hierarchy instead of/or as well
8286            as the GdkWindow hierarchy when finding the toplevel;
8287            this helps for things like GtkHandlebox
8288          - Watch GtkWidget::hierarchy_changed to catch 
8289            changes in the toplevel without changes in the
8290            GdkWindow (reparenting)
8291          - Never create the GtkWindow for the status window
8292            unless we have text to display.
8293          - Various cleanups, add lots of comments.
8294
8295         (#115077, much help from Takuro Ashie and Hidetoshi
8296         Tajima in tracking this down and figuring out a fix.)
8297
8298         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
8299
8300         * modules/input/gtkimcontextxim.c: Track the current
8301         screen for each toplevel so that we show the status
8302         window on the right screen. (#116340, James Su)
8303
8304         * modules/input/gtkimcontextxim.c: If create a new IC
8305         when we currently have the focus, call XSetICFocus()
8306         on it.
8307         
8308         * modules/input/gtkimcontextxim.c (get_im): Fix bug
8309         with multiple open screens.
8310
8311 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
8312
8313         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
8314         Replace client_window field with 'priv' pointer,
8315         retaining binary compatibility.
8316
8317         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
8318         save use_preedit/cursor_location/focus status and set
8319         up the new slave appropriately. (#118651, Botond Botyanszki)
8320
8321 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
8322
8323         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
8324         Don't use impl->position_info.clip_rect for toplevels.
8325         (#107068, reported by Thomas Mirlacher)
8326
8327 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
8328
8329         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
8330         Add a fallback for unaligned source data for
8331         FORMAT_ARGB_MASK. (#117217)
8332
8333 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
8334
8335         * configure.in: Rework handling of REBUILD_PNGS,
8336         so that we also don't try to REBUILD_PNGS when
8337         cross-compiling and there is no gdk-pixbuf-csource.
8338         But give an error if gtk/stock-icons/gtkstockpixbufs.h
8339         is not in the source tree. (Note that REBUILDS_PNG
8340         was set backwards before, which is why you always
8341         had to manually recreate gtkstockpixbufs.h!)
8342
8343 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
8344
8345         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
8346         path to libgtk.la. (#120080, Benedikt Spranger)
8347
8348 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
8349
8350         * modules/input/imcedilla.c: Make the list of default
8351         languages more comprehensive. (Suggestion of
8352         Fco. Javier F. Serrador)
8353
8354 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
8355
8356         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
8357         parentheses when skipping args.
8358
8359 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
8360
8361         Fix major bug in row ref handling, so the new combo box
8362         will actually work right (:. Bug #107748. Patch written
8363         with help from Tim Janik.
8364
8365         The basic idea is to update the row refs in a closure,
8366         before the actual signal is emitted (rather than having
8367         the model connect signal handlers).
8368
8369         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
8370         g_signal_new calls for row_inserted, row_deleted and
8371         rows_reordered to use the new marshallers,
8372         (row_inserted_marshall), (row_deleted_marshall),
8373         (rows_reordered_marshall): the new marshallers,
8374         (gtk_tree_row_ref_inserted_callback): renamed to
8375         gtk_tree_row_ref_inserted since it isn't a callback
8376         anymore and gets called by the marshaller now,
8377         (gtk_tree_row_ref_deleted_callback): likewise,
8378         (gtk_tree_row_ref_reordered_callback): likewise,
8379         (connect_ref_callbacks), (disconnect_ref_callbacks):
8380         removed,
8381         (gtk_tree_row_reference_new_proxy),
8382         (gtk_tree_row_reference_free),
8383         (gtk_tree_row_reference_inserted),
8384         (gtk_tree_row_reference_deleted),
8385         (gtk_tree_row_reference_reordered): updated.
8386
8387 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
8388
8389         Improve Cedilla handling - based on a patch from Gustavo 
8390         De Nardin, #111334
8391
8392         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
8393         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
8394         dead_acute+c combinations. Make this the default for
8395         fr and pt.
8396
8397         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
8398         Use LC_CTYPE instead of LC_MESSAGES to pick the default
8399         input method.
8400
8401 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
8402
8403         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
8404         for Multi_key+c+apostrophe.
8405
8406 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
8407
8408         Merged from stable.
8409
8410         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
8411         on vertical scrolling. (#108035, reported by Tim Janik).
8412
8413 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
8414
8415         Merged from stable.
8416
8417         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
8418         (gtk_tree_model_sort_level_find_insert),
8419         (gtk_tree_model_sort_insert_value): fix off-by-one error.
8420         (#109292 continued, patch from Yann Rouillard).
8421
8422 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
8423
8424         (Note: This is not exactly the same as the patch which went in
8425          gtk-2-2).
8426
8427         * gtk/gtktreeview.c (gtk_tree_view_class_init),
8428         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
8429         Also support the up, down, left, right, home, end, page up and
8430         page down keys on the numpad. (#119419, reported by Alex Larsson).
8431
8432 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
8433
8434         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
8435
8436         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
8437         we link libgtk against X explicitely, since we
8438         make GTK+ calls for plug/socket.
8439
8440         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
8441         G_MODULE_SUFFIX here. 
8442
8443         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
8444         XShmPutImage with #ifdef USE_SHM.
8445
8446 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
8447
8448         * gtk/gtkfilesel.c (gtk_file_selection_populate):
8449         Don't reposition the cursor when we aren't trying
8450         to complete. (Fixes problems with selection on
8451         startup, #108433, reported by Mark Finlay.)
8452
8453         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
8454         code that tried to position the cursor after the common
8455         prefix when there was one, it wasn't working, and
8456         would be hard to fix. Just always put the cursor
8457         at the end when completing.
8458
8459 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
8460
8461         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
8462         the current directory fails because of encoding
8463         conversion problems, walk up textually to parent
8464         directories until we can convert. (#113627)
8465
8466 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
8467
8468         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
8469         Remove usage of menu_shell->ignore leave which was
8470         to deal with stray events we no longer get because
8471         we do grabbing differently. Comment it as unused in
8472         the header. (#115837, Keith Bissett)
8473
8474 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
8475
8476         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
8477         Fix some places that weren't properly Xinerama-ified.
8478
8479         * gtk/gtkmenu.c: Fix problem with windows that scroll
8480         at the top of the screen.
8481
8482 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
8483
8484         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
8485         key-press-event on the entry, so input methods get access to 
8486         key presses before GtkCombo customization.
8487         (#115451, Botond Botyanszki)
8488
8489 2003-08-13  Anders Carlsson  <andersca@gnome.org>
8490
8491         * tests/testtoolbar.c: (set_important_func), (important_toggled),
8492         (create_items_list):
8493         Add an important column.
8494         
8495 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
8496
8497         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
8498         against reentrancy from ::focus-out handlers. 
8499         (#118129, Felipe Heidrich)
8500
8501 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
8502
8503         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
8504         GDK_LOCK_MASK before calling
8505         gdk_keymap_translate_keyboard_state so bindings 
8506         and accelerators are independent of the Caps-lock
8507         key. (#115384, reported by Toni Willberg)
8508
8509 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
8510
8511         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
8512         break statements (#119494, Soeren Sandmann)
8513
8514 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
8515
8516         * gtk/gtkwidget.h: Mark parent public as well; it's
8517         extensively accessed in existing code, so there is
8518         no advantage in making people use get_parent().
8519         (Tweak to #119463 fix)
8520
8521 2003-08-11  Matthias Clasen  <maclas@gmx.de>
8522
8523         Add support for EWMH "Above" and "Below" window states.  (105100,
8524         Manuel Clos)
8525         
8526         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
8527         State" demo.
8528
8529         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
8530         gtk_window_set_keep_below.
8531
8532         * gtk/gtk.def: Add gtk_window_set_keep_above and
8533         gtk_window_set_keep_below.
8534
8535         * gtk/gtkwindow.c (gtk_window_set_keep_below):
8536         (gtk_window_set_keep_above): New functions, call the corresponding
8537         gdk functions.
8538
8539         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
8540         function, sets _NET_WM_STATE_BELOW.
8541         (gdk_window_set_keep_above): New function, sets
8542         _NET_WM_STATE_ABOVE.
8543
8544         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
8545         gdk_window_set_keep_below.
8546
8547         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
8548         GDK_WINDOW_STATE_BELOW.
8549
8550         * gdk/gdk.def: Add gdk_window_set_keep_above and
8551         gdk_window_set_keep_below.
8552
8553         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
8554         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
8555         xmlcatalog in PATH.  (#119115)
8556
8557 2003-08-10  Matthias Clasen  <maclas@gmx.de>
8558
8559         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
8560         public.  (#119463)
8561
8562 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
8563
8564         * gdk/gdkevents.h:
8565         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
8566         docs on GdkFilterFunc and GdkFilterReturn.
8567
8568 2003-08-09  Matthias Clasen  <maclas@gmx.de>
8569
8570         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
8571         to let the mouse wheels select the month. Scrolling down
8572         moves forward in time. (#53134, Abigail Brady) 
8573
8574         * gtk/gtkcalendar.c: Complete the RTL flipping support for
8575         GtkCalendar, make it possible to flip the headings using the
8576         "magic translated string" technique.  Translators, note the
8577         comment in gtk_calendar_init() explaining this.  (#102416)
8578
8579         * gtk/gtkcalendar.c: Get the information about the first day of
8580         the week from the locale using another instance of the "magic
8581         translated string" technique.  Ignore the display option
8582         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
8583
8584         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
8585         date is dragged as text, formatted via strftime %x. Text drops are
8586         accepted if g_date_set_parse() can make sense of the text. A
8587         dedicated data format for date DND has not been introduced yet,
8588         since there didn't seem to be sufficient consensus on such a
8589         format on xdg-list.  (#117297)
8590         
8591 2003-08-08  Matthias Clasen  <maclas@gmx.de>
8592
8593         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
8594         Fix a segfault.  (#115284, Jan Kratochvil)
8595
8596 2003-08-08  Tor Lillqvist  <tml@iki.fi>
8597
8598         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
8599         coordinates for events that have such. Print coordinates for enter
8600         and leave events.
8601
8602         (gdk_event_translate): Don't use event uninitialixed in the
8603         return_exposes branch of the WM_PAINT handler.
8604
8605         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
8606         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
8607         Must offset top-level window coordinates here, too.
8608
8609 2003-08-08  Matthias Clasen  <maclas@gmx.de>
8610
8611         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
8612         when maximized or fullscreen.
8613
8614 2003-08-07  Tor Lillqvist  <tml@iki.fi>
8615
8616         * gdk/win32/gdkinput-win32.h
8617         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
8618         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
8619         used.
8620
8621         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
8622         accordingly, in fact an uninitialised variable was dereferenced.
8623         
8624
8625         [Win32] Add support for multiple monitors. 
8626         
8627         * gdk/win32/gdkprivate-win32.h
8628         * gdk/win32/gdkglobals-win32.c: New global variables for
8629         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
8630         _gdk_offset_x and _gdk_offset_y.
8631         
8632         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
8633         functions, enumeration functions passed to EnumDisplayMonitors().
8634
8635         (gdk_display_open): If the EnumDisplayMonitors() and
8636         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
8637         if to find out monitor info.
8638
8639         Calculate the offset between Win32 coordinates (relative to the
8640         primary monitor's origin (and thus negative on monitors to the
8641         left of or above it), and GDK's (visible coordinates should be
8642         non-negative).
8643         
8644         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
8645         gdk_screen_get_monitor_geometry): Use information collected above.
8646
8647         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
8648         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
8649
8650         (gdk_window_get_geometry, gdk_window_get_origin,
8651         gdk_window_get_frame_extents): For top-level windows, add
8652         _gdk_offset_{x,y} to GDK root window coordinates
8653
8654         Still need to handle multiple monitors in
8655         gdk_window_fullscreen(). Probably should make the window
8656         fullscreen on the monitor where the cursor is?
8657
8658         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
8659         root window coordinates in GdkEvents.
8660
8661         
8662         [Win32] Fix geometry hint handling. Add support for resize
8663         increment and base size, and aspect ratio geometry hints. The
8664         "gridded geometry" test in testgtk now works beautifully.
8665
8666         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8667         Turns out this function shouldn't actually ever modify the
8668         window's size, just store the hints. (Old code kept for a while
8669         inside #if 0.)
8670
8671         (gdk_window_set_hints): Remove presumably broken code that handles
8672         the position hints, this function is obsolete anyway.
8673
8674         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
8675         variables, not used.
8676
8677         (adjust_drag): New function, used to implement resize increment
8678         hints.
8679
8680         (gdk_event_translate): Handle WM_SIZING, implement resize
8681         increment and base size, and aspect ratio geometry hints here. The
8682         WM_GETMINMAXINFO handler takes care of the minimum and maximum
8683         size hints as before. Fix the WM_GETMINMAXINFO handler to take
8684         into account window decorations. No need to modify the
8685         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
8686         the defaults are fine.
8687         
8688         * gdk/win32/gdkprivate-win32.h 
8689         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
8690         _gdk_win32_get_adjusted_client_rect): New helper functions.
8691
8692 2003-08-07  Matthias Clasen  <maclas@gmx.de>
8693
8694         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
8695         toplevel->have_* flags before iterating over the _NET_WM_STATE 
8696         atoms.  (#119217) 
8697
8698 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
8699  
8700         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
8701         Fix a bug where on theme change, resize/redraw wasn't
8702         properly getting queued on toplevel windows. (#116346,
8703         Rajkumar Siva)
8704  
8705         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
8706         Fix bug where wrong coordinates were used for toplevel
8707         window.
8708  
8709 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
8710
8711         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
8712         page_num variable (Archit Baweja)
8713
8714 2003-08-07  Matthias Clasen  <maclas@gmx.de>
8715
8716         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
8717         cope with C libraries with crippled locale support.  (#115293)
8718
8719 2003-08-07  Hans Breuer  <hans@breuer.org>
8720
8721         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
8722         (only if the new window not known to Gdk) to get proper
8723         leave notification, and get rid of the wrong placed 
8724         tooltips, bug #102283
8725  
8726         (gdk_event_translate) : small code reordering to not get
8727         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
8728         menus, bug #117367
8729
8730 2003-08-07  Tor Lillqvist  <tml@iki.fi>
8731
8732         * gdk/gdk.def
8733         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
8734         missing function, trivially implement.
8735
8736 2003-08-07  Matthias Clasen  <maclas@gmx.de>
8737
8738         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
8739         rendering.  (#118646, Charles Kerr) 
8740
8741 2003-08-06  Hans Breuer  <hans@breuer.org>
8742
8743         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
8744         initialize bits to 0 (probably default on NT)
8745
8746         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
8747         now it works as intended ;-)
8748
8749 2003-08-04  Hans Breuer  <hans@breuer.org>
8750
8751         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
8752         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
8753
8754         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
8755         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
8756
8757         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
8758         against all expectations it is basically ony a call with WM_SETICON
8759         needed (the visual effect is there, though colors or mask are
8760         still somewhat wrong).
8761         * gdk/win32/gdkwindow-win32.h : place to store the HICON
8762
8763         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
8764         pixel drawing as it was fixed at 1999-08-23
8765
8766         gtk/gtk.def : updated
8767
8768 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
8769
8770         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
8771         Add a missing break. (#119156, Callum McKenzie)
8772
8773 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8774
8775         * gtk/gtkmenu.c (gtk_menu_position): New positioning
8776         algorithm.(#116649)
8777
8778 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8779
8780         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
8781         property
8782         
8783         * gtk/gtkradiotoolbutton.c
8784         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
8785
8786         * gtk/gtkradiotoolbutton.c
8787         (gtk_radio_tool_button_new_with_stock_from_widget): make this
8788         function take a stock_id.
8789
8790         * gtk/toolbar: documentation
8791
8792 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
8793
8794         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
8795         Fix problem where use_xshm was getting set wrong if
8796         MIT_SHM wasn't found. (George Lebel)
8797
8798 2003-08-04  Tor Lillqvist  <tml@iki.fi
8799
8800         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
8801         actually use the passed-in filter list. The function also needs a
8802         GdkWindow parameter, as filter functions expect
8803         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
8804
8805 2003-08-03  Matthias Clasen  <maclas@gmx.de>
8806
8807         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
8808         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
8809         the term "virtual screen".  (#119030, Tor Lillqvist)
8810
8811 2003-08-02  Matthias Clasen  <maclas@gmx.de>
8812
8813         * tests/testtext.c (test_init): 
8814         * tests/testgtk.c (test_init): 
8815         * tests/testdnd.c (test_init): 
8816         * demos/pixbuf-init.c (pixbuf_init): 
8817         * demos/gtk-demo/main.c (main): Use g_setenv().
8818
8819         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
8820         g_unsetenv(). 
8821
8822 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
8823
8824         * configure.in: Requires glib-2.3.0, pango-1.2.0.
8825
8826         * configure.in: Require Xft version 2,
8827         remove code for handling older versions of pango and Xft.
8828         Many miscellaneous improvements to X checks
8829
8830         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
8831         a library to a variable, avoiding dups.
8832
8833         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
8834         Always load "fixed"
8835
8836         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
8837         for pangox.
8838
8839 2003-08-02  Matthias Clasen  <maclas@gmx.de>
8840
8841         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
8842         (palette_drop_handle): 
8843         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
8844         drops with the wrong format, since the KDE color chooser incorrectly
8845         drops application/x-color with format 8.  (#118810)
8846
8847         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
8848         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
8849         Accept drops with the wrong format, since the KDE color chooser 
8850         incorrectly drops application/x-color with format 8.  (#118810)
8851
8852 2003-08-02  Tor Lillqvist  <tml@iki.fi>
8853
8854         Fix gdk/win32 window geometry handling again. The window position
8855         in a GDK_CONFIGURE event should be that of the client area, not of
8856         the window decorations. (I was confused by the term "window
8857         border" in X11. It does *not* mean the window manager
8858         decorations. There are no X11-style window borders in Win32.)
8859         Also, this time do take the geometry hints into account
8860         appropriately when moving windows. Now testgtk's gravity test's
8861         move buttons work OK. There are stil problems with taking gravity
8862         into account when showing a hidden window.
8863
8864         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
8865         instead of separate fields.
8866         
8867         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
8868         adjust for decorations.
8869
8870         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
8871         adjust_for_gravity_hints): New functions.
8872         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
8873         above functions, take geometry hints into account.
8874         (gdk_window_set_geometry_hints): Size hints specicy client area,
8875         not including decorations.
8876
8877 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
8878
8879         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
8880         return an absolute path (#115590), fix a problem where
8881         you could crash the file selector with a looong name
8882         by returning a newly allocated buffer.
8883
8884 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
8885
8886         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
8887         bug in rarely or never hit code path (#118071,
8888         Tor Lillqvist)
8889
8890 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
8891
8892         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
8893         If the check for missing depths, try actually creating pixmaps
8894         of the depths to deal with Xinerama not reporting
8895         all the depths it should. (#115822)
8896
8897 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
8898
8899         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
8900         forward KeyRelease events as well as KeyPress events.
8901         (#115597)
8902
8903 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
8904  
8905         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
8906         if argc is 0 as well, instead of leaving it unset.
8907         (#116023, Michael Meeks)
8908  
8909 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8910
8911         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
8912         default to TRUE; ignore the property when api_mode != NEW_API
8913
8914 2003-07-31  Matthias Clasen  <maclas@gmx.de>
8915
8916         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
8917         to icon, to pacify gtk-doc.
8918
8919         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
8920         example. 
8921
8922 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8923
8924         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
8925
8926 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8927
8928         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
8929         overflow_item field.
8930
8931 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8932
8933         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
8934         an internal function
8935
8936         * gtk/gtktoolitem.h: remove unused declaration of
8937         _gtk_tool_item_get_drag_window().
8938
8939 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8940
8941         * gtk/gtktoolbutton.[ch]:
8942         (gtk_tool_button_new): swap icon_widget and label arguments to
8943         match BonoboUIToolbarButton.
8944
8945         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
8946
8947 2003-07-30  Matthias Clasen  <maclas@gmx.de>
8948
8949         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
8950         signal docs. 
8951
8952 2003-07-29  Tor Lillqvist  <tml@iki.fi>
8953
8954         Fix for #108007, #112402, #117042: There was confusion in
8955         gdk/win32 at various places whether a window position refers to
8956         the decoration position or the client area position. Also whether
8957         window size includes decorations or not.
8958         
8959         The correct interpretation apparently is that in GDK (like in
8960         X11), a top-level window position means the decoration's position,
8961         but size means the window's inner size (client area size). In the
8962         Win32 API, the window size usually includes the decorations,
8963         though.
8964         
8965         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
8966         #ifdef G_ENABLE_DEBUG.
8967         (handle_configure_event): New function, generates GDK_CONFIGURE
8968         events from WM_SIZE and WM_MOVE messages. Even if no event is
8969         generated because of the event mask, still set the private
8970         position and size fields. Calculate position and size correctly.
8971         (gdk_event_translate): Call handle_configure_event().
8972
8973         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
8974
8975         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
8976         macros. Cosmetic debugging output changes.
8977         (SafeAdjustWindowRectEx): Remove. If an application wants to
8978         locate a window outside of the screen, it's not GDK's business to
8979         prevent it. And anyway, with multiple monitors, negative
8980         coordinates are perfectly normal.
8981         (gdk_window_new): Adjust the window size for decorations after
8982         _gdk_window_init_position() has done its job. (But the big window
8983         code currently is presumably broken on Win32 anyway.)
8984         (gdk_window_move): The position passed in is supposed to be that
8985         of the window border, so don't need to adjust for decorations.
8986         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
8987
8988 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8989
8990         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
8991         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
8992         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
8993         gtk_toolbar_append_space, gtk_toolbar_insert_item,
8994         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
8995         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
8996         gtk_toolbar_new, gtk_toolbar_prepend_item):
8997
8998         Move documentation inline from template files.
8999
9000         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
9001         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
9002         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
9003         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
9004         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
9005         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
9006         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
9007
9008         Copy documentation from stable that was added after the EggToolbar
9009         branched.
9010
9011         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
9012
9013 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9014
9015         * gtk+/docs/: Commit autogenerated changes, so patches will make
9016         sense.
9017
9018 2003-07-27  Tor Lillqvist  <tml@iki.fi>
9019
9020         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
9021         the keyboard state returned by GetKeyboardState() doesn't
9022         distinguish between the left and right Control and Alt keys. Thus
9023         we cannot detect AltGr (which is supposed to be left Control +
9024         right Alt) the same way as on NT-based systems, but have to accept
9025         either Control + either Alt as AltGr.
9026
9027 2003-07-27  Matthias Clasen  <maclas@gmx.de>
9028
9029         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
9030         Fix function name in warning message.  (#118156, Tim-Philipp
9031         Mller)
9032
9033         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
9034         is-expander and is-expanded are boolean properties, not ints.
9035         (#118359, Josh Parsons)
9036
9037 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9038
9039         * gtk/gtkimagemenuitem.c
9040         (gtk_image_menu_item_toggle_size_request): don't request
9041         toggle_space when the image width is 0.
9042
9043 2003-07-25  Tor Lillqvist  <tml@iki.fi>
9044
9045         * gdk/win32/gdkprivate-win32.h
9046         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
9047         and _gdk_keyboard_has_altgr.
9048         
9049         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
9050         ones detailled here.
9051
9052         Code that has been ifdeffed out for a long time removed. Remove
9053         some really old doc comments that were left behind for some public
9054         functions, the official ones are in the X11 backend anyway. Change
9055         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
9056         multi-line boolean expressions to have the operators at ends of
9057         lines.
9058
9059         As mouse capture with SetCapture() indeed seems to work OK, no
9060         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
9061
9062         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
9063         needed at some time, and things seem to work fine now without
9064         (knock on wood).
9065
9066         Ifdef out the search for some Latin locale keyboard layout being
9067         loaded. Not used currently, but might be needed after all, if we
9068         decide that we want to be able to generate ASCII control character
9069         events with a non-Latin keyboard.
9070
9071         (assign_object): New helper function, handles the g_object_ref()
9072         and unref() calls when assigning GObject pointers.
9073                 
9074         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
9075         enter event when the pointer has moved to an ancestor window. Was
9076         left out by mistake.
9077
9078         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
9079
9080         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
9081         functionality, using ClipCursor().
9082                 
9083         (find_window_for_mouse_event): Splice part of code into new
9084         function find_real_window_for_grabbed_mouse_event().
9085
9086         (fixup_event, append_event, apply_filters): New functions, code
9087         refactored out from elsewhere.
9088
9089         (synthesize_enter_or_leave_event, synthesize_leave_event,
9090         synthesize_enter_event,
9091         synthesize_leave_events,synthesize_enter_events): Also take a
9092         GdkCrossingMode parameter, in preparation to generating
9093         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
9094
9095         (fixup_event, append_event, fill_key_event_string): New functions,
9096         code refactoring.
9097
9098         (vk_from_char, build_keypress_event, build_keyrelease_event):
9099         Removed as part of dropping WM_CHAR handling.
9100
9101         (build_key_event_state,gdk_event_translate): Call
9102         GetKeyboardState(), once, for each keyboard message, instead of
9103         several calls to GetKeyState() here and there.
9104
9105         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
9106         at it, do some major refactoring, and some fixes for potential
9107         problems noticed while going through the code.
9108
9109         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
9110         WM_KEYUP. Don't need the state variables related to whether to
9111         wait for WM_CHAR or not, and whether the current key is
9112         AltGr. Remove lots of complexity. Thus don't need the
9113         use_ime_composition flag.
9114
9115         Not handling WM_CHAR means dead key handling will have to be taken
9116         care of by GTK, but that seems to work fine, so no worry.
9117
9118         Another side-effect is that Alt+keypad digits don't work any
9119         longer, but it's better to learn to use GTK's ISO14755 support is
9120         anyway.
9121
9122         Be more careful in checking whether AltGr is involved. Only
9123         attempt to handle it if the keyboard actually has it. And
9124         explicitly check for *left* Control plus *right* Alt being
9125         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
9126         chars.
9127
9128         Handle keys using similar code as in the X11 backend. As we have
9129         built a keymap in gdkkeys-win32.c anyway, use it by calling
9130         gdk_keymap_translate_keyboard_state() to look up the keysym from
9131         the virtual key code and keyboard state. Build the key event
9132         string in exactly the same way as the X11 backend.
9133
9134         If an IME is being used, don't generate GDK events for keys
9135         between receiving WM_IME_STARTCOMPOSITION and
9136         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
9137         
9138         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
9139         the IME, not just the first one.
9140
9141         gdk_event_translate() is still quite complex, could split the
9142         message handler cases out into separate functions.
9143
9144         On mouse events, when the mouse is grabbed, use
9145         find_real_window_for_grabbed_mouse_event() in order to be able to
9146         generate correct crossing events.
9147         
9148         No longer take a pre-allocated GdkEvent as parameter. Instead,
9149         allocate events as needed and append them to the queue. (This is
9150         different from how gdk_event_translate() in the X11 backend
9151         works.) This change made the code much clearer, especially in the
9152         cases where we have to generate several GDK events for one Windows
9153         message.  Return FALSE if DefWindowProc() should be called, TRUE
9154         if not. If DefWindowProc() should not be called, also return the
9155         value to be returned from the window procedure.
9156
9157         (Previously, the interaction with gdk_event_translate()'s caller
9158         was much more complex, when we had to indicate whether the
9159         already-queued event should be left in the queue or removed, and
9160         in addition also had to indicate whether to call DefWindowProc()
9161         or not, and what value to return from the window procedure if
9162         not.)
9163
9164         Don't use a separate "private" variable required to be pointing to
9165         the GdkWindowObject of the "window" variable at all times. Just
9166         use casts, even if looks a bit uglier.
9167
9168         Notice destroyed windows as early as possible, and break out of
9169         the messsage switch.
9170
9171         Use _gdk_pointer_root as current_window when the pointer is
9172         outside GDK's top-level windows.
9173         
9174         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
9175         appropriate, based on ImmIsIME().
9176         
9177         (gdk_event_translate, gdk_event_send_client_message_for_display,
9178         gdk_screen_broadcast_client_message): Implement client messages.
9179         Use a registered Windows message to pass GDK client messages. Note
9180         that the amount of user data is restricted to four bytes, as it is
9181         carried in the LPARAM. (The WPARAM is used for the message type
9182         "atom".)
9183         
9184         (real_window_procedure): Adapt for new gdk_event_translate()
9185         interface.
9186
9187         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
9188         _gdk_input_locale_is_ime initially.
9189
9190         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
9191         of g_colormap_ref()/unref().
9192
9193         (gdk_window_new): Made code a bit more like the X11 one, pretend
9194         to handle screens (although we just have one for now).
9195
9196         * gdk/x11/gdkevents-x11.c
9197         (gdk_event_send_client_message_for_display,
9198         gdk_screen_broadcast_client_message): Document the user data
9199         limitation on Win32.
9200
9201         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
9202         and leave notify detail output.
9203
9204         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
9205         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
9206         for those, so that the GtkIMContextCimple compose tables will
9207         work. Deduce if the keyboard layout has the AltGr key, and set the
9208         above flag accordingly.
9209
9210 2003-07-26  Matthias Clasen  <maclas@gmx.de>
9211
9212         * gtk/gtkwidget.c: Document DND signals.
9213
9214 2003-07-24  Matthias Clasen  <maclas@gmx.de>
9215
9216         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
9217         insensitive when editing isn't possible.  (#118150)
9218
9219 2003-07-23  Matthias Clasen  <maclas@gmx.de>
9220
9221         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
9222         spinbutton wrap.  (#118097, John Darrington)
9223
9224         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
9225
9226 2003-07-20  Hans Breuer  <hans@breuer.org>
9227
9228         * makefile.msc : new file to build it all
9229         * Makefile.am : ... added to EXTRA_DIST
9230
9231         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
9232           gtk/makefile.msc.in tests/makefile.msc : updated
9233
9234         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
9235         functions
9236
9237         * gtk/gtkbbox.c : use g_return_val_if_fail() if
9238         there is a value to return
9239
9240         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
9241         static correctness
9242
9243         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
9244         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
9245
9246         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
9247
9248         * gtk/gtkimmulticontext.c : use gtkprivate.h
9249
9250         * gtk/stock-icons/stock_color_picker_25.png
9251           gtk/stock-icons/stock_jump_to_rtl_16.png
9252           gtk/stock-icons/stock_jump_to_rtl_24.png
9253           gtk/stock-icons/stock_redo_rtl_16.png
9254           gtk/stock-icons/stock_redo_rtl_24.png
9255           gtk/stock-icons/stock_undelete_rtl_16.png
9256           gtk/stock-icons/stock_undelete_rtl_24.png
9257           gtk/stock-icons/stock_undo_rtl_16.png :
9258           gtk/stock-icons/stock_undo_rtl_24.png :
9259         readded as binary
9260
9261 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9262
9263         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
9264         leftover request of {xy}thickness
9265
9266 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9267
9268         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
9269         attempt to add a NULL icon to the box.
9270
9271 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9272
9273         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
9274         on focus in/out.
9275
9276 2003-07-19  Matthias Clasen  <maclas@gmx.de>
9277
9278         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
9279         * gtk/gtkiconfactory.c (get_default_icons): Add
9280         stock_dialog_authentication_48.  (#65765) 
9281         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
9282         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
9283
9284         * gtk/gtkbbox.h: 
9285         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
9286         function. (#64562) 
9287
9288 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9289
9290         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
9291         declaration
9292
9293         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
9294         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
9295         instead of full draws.
9296
9297 2003-07-18  Matthias Clasen  <maclas@gmx.de>
9298
9299         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
9300
9301         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
9302         signal, move_viewport. 
9303         (gtk_text_view_move_viewport): New function which implements the
9304         move_viewport functionality. 
9305         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
9306         the viewport. (#78669) 
9307
9308         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
9309         move_viewport argument. 
9310
9311         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
9312         property.  (#111779) 
9313
9314         * gtk/gtkwindow.h: 
9315         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
9316
9317         * gtk/gtkmessagedialog.h:
9318         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
9319         (#65501, Sebastian Rittau)
9320
9321 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9322
9323         * gtk/gtktextview.c (changed_handler): use
9324         gtk_widget_queue_resize_noredraw().
9325
9326 2003-07-16  Jody Goldberg <jody@gnome.org>
9327
9328         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
9329
9330 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9331
9332         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
9333         API. 
9334
9335 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9336
9337         By popular request give toolbuttons a border.
9338         
9339         * gtk/gtktoolitem.c
9340         (gtk_tool_item_size_allocate):
9341         (gtk_tool_item_size_request): don't request and allocate a border
9342         around the child
9343
9344         * gtk/gtktoolbutton.c 
9345         (gtk_tool_button_size_allocate):
9346         (gtk_tool_button_size_request): remove these functions
9347
9348         * gtk/gtktoolbar.c 
9349         (gtk_toolbar_size_request):
9350         (gtk_toolbar_size_allocate): request and allocate a border if we
9351         have a shadow.
9352
9353 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
9354
9355         Merged from stable.
9356
9357         Fixes issues pointed out by Morten Welinder in #115140.
9358
9359         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
9360         (do_validate_rows): update validated_area with a logic OR instead
9361         of a bitwise OR,
9362         (validate_rows_handler): make the if statement match the one in
9363         validate_rows(), so we don't leak the timeout.
9364
9365 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
9366
9367         Merged from stable.
9368
9369         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
9370         should only grab focus back if the "cell_editable" widget still
9371         has focus. (Fixes #110104, testcase provided by Marco Pesenti
9372         Gritti).
9373
9374 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
9375
9376         Merged from stable.
9377
9378         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
9379         Don't set attr.event_mask twice, those things were meant to be
9380         ORred. (#115139, pointed out by Morten Welinder).
9381
9382 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
9383
9384         Merged from stable.
9385
9386         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
9387         if needed. (Fixes #115869, reported by Michael Natterer).
9388
9389 2003-07-15  Matthias Clasen  <maclas@gmx.de>
9390
9391         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
9392         Fight against gtk-doc stupidity.
9393
9394 2003-07-13  Matthias Clasen  <maclas@gmx.de>
9395
9396         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
9397         targets, to pacify gtk-doc.
9398
9399 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9400
9401         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
9402         label_text, label_widget and icon_widget. (#117312, 
9403         Christian Persch)
9404         
9405 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9406
9407         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
9408         "horizontal-offset" and "vertical-offset" that determines the
9409         position of the menu when it is a submenu. 
9410
9411         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
9412         submenus according to new vertical- and horizontal-offset
9413         properties.
9414
9415 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
9416
9417         Merged from stable.
9418
9419         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
9420         case drags to "0", scroll to the top after dropping. (Fixes #94968,
9421         reported by Alp Toker).
9422
9423 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
9424
9425         Merged from stable.
9426
9427         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
9428         code (#115784, Owen Taylor).
9429
9430 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
9431
9432         Merged from stable.
9433
9434         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
9435         free the old text and extra_attrs *after* we parsed the new
9436         markup string. (Fixes #114485, reported by Owen Taylor).
9437
9438 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
9439
9440         Merged from stable.
9441
9442         Fixes #113904, testcase provided by Rene Seindal.
9443
9444         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
9445         pressed_button to -1 when a row has been activated,
9446         (gtk_tree_view_motion_bin_window): only start a drag if there's
9447         a button being pressed.
9448
9449 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
9450
9451         Merged from stable.
9452
9453         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
9454         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
9455         to avoid a roundtrip (#110272, Owen Taylor).
9456
9457 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
9458
9459         Merged from stable.
9460
9461         This patch really really fixes scrolling. Related bugs: #81627,
9462         testcase provided by Timo Sirainen, #111500, testcase provided by
9463         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
9464
9465         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
9466         which is equal to the lower border of the window means scrolling
9467         to an invisible row, always update the dy when scrolling to an
9468         invisible row, corrected area_above/below calculations for
9469         invisible rows, when walking the tree correct the size
9470         subtracted for invalidated rows, fix wrong logic in comment.
9471
9472 2003-07-11  Matthias Clasen  <maclas@gmx.de>
9473
9474         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
9475         mime_types.  (#117219, Steve Chaplin)
9476
9477 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
9478
9479         * gdk/x11/gdkevents-x11.c (get_real_window)
9480         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
9481         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
9482         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
9483         Don't assume that all events start with XEventAny - Xkb events
9484         don't! (#105745). So, only do that for core events, and for
9485         non-core events, add a system for registering event types
9486         that start with XEventAny.
9487
9488         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
9489         Check to see if the result of gdk_window_lookup_for_display()
9490         is actually a window.
9491
9492 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
9493
9494         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
9495         check a silent assert, so it follows the g_free() behaviour.
9496
9497 2003-07-11  Matthias Clasen  <maclas@gmx.de>
9498
9499         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
9500         vertically.  (#109823, Joe Shaw)
9501
9502 2003-07-11  Morten Welinder  <terra@gnome.org>
9503
9504         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
9505         access error.  (#69436)
9506
9507 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
9508
9509         Landing GtkTreeModelFilter and the completion code. (Test program
9510         and documentation will follow next week).
9511
9512         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
9513         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
9514
9515         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
9516         necessary code to hook up completion.
9517
9518         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
9519         GtkCellLayout interface.
9520
9521         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
9522
9523         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
9524         source files.
9525
9526 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
9527
9528         Merge from stable.
9529
9530         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
9531         directly return from ->window_at_pointer, but set win_x and win_y
9532         first if needed. (Fixes #110166, reported by Arno Charlet).
9533
9534         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
9535         function to accept GdkDrawables and not just GdkWindows. This was
9536         already done in some other functions a while back, but this patch
9537         got lost for some reason.
9538
9539 2003-07-09  Matthias Clasen  <maclas@gmx.de>
9540
9541         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
9542         direction when sorting children.  (#116540, Soeren Sandmann)
9543
9544 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
9545
9546         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
9547         Change _gdk_x11_send_xevent_async() to 
9548         _gdk_x11_send_client_message_async() avoid using Xlib
9549         internals that are different on Solaris. 
9550         (#116917, Morten Welinder)
9551
9552 2003-07-08  Matthias Clasen  <maclas@gmx.de>
9553
9554         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
9555         (#116501, Doug Quale)
9556
9557 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9558
9559         * gtk/gtktoggletoolbutton.h: remove strange #define
9560         * gtk/gtktoolbutton.h: fix cut'n'paste error
9561         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
9562         private data
9563         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
9564         private data instead of g_new0()
9565         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
9566         instance private data
9567
9568 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9569
9570         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
9571         for INPUT_ONLY window
9572         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
9573         * gtk/gtknotebook.c (gtk_notebook_realize): same
9574         * gtk/gtkexpander.c (gtk_expander_realize): same
9575         * gtk/gtkrange.c (gtk_range_realize): same
9576
9577         Fix #116303
9578
9579 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9580
9581         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
9582         when detail is "menuitem". With the new menu look is isn't needed
9583         anymore.
9584
9585         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
9586         resize here, so that tool items will get a chance to relayout
9587         themselves based on the toolbar configuration.
9588
9589         change DEFAULT_SPACE_SIZE to 4 instead of 5
9590
9591         * gtk/gtktoolbar.c 
9592         Get rid of "!GTK_BIN (item)->child means separator". Separators
9593         are widgets in their own right
9594
9595         change DEFAULT_SPACE_SIZE to 4 instead of 5
9596         
9597         (get_space_size): remove this function
9598         (toolbar_item_is_homogeneous): new function
9599
9600         * gtk/gtkseparatortoolitem.c
9601         (gtk_separator_tool_item_size_request): new function.
9602
9603 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9604
9605         * gtk/gtktoggletoolbutton.h: use private data, add new
9606         internal function _gtk_toggle_tool_button_get_button()
9607
9608         * gtk/gtktoolbutton.h: move to private data
9609
9610         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
9611         private data.
9612
9613 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9614
9615         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
9616         type check, (#116947, Krasimir Angelov)
9617
9618         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
9619         
9620         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
9621         data. Not instance private data yet, because of bug 116921.
9622
9623         * gtk/gtktoolitem.h: new accessors:
9624                 gtk_tool_item_get_homogeneous ()
9625                 gtk_tool_item_get_expand ()
9626                 gtk_tool_item_get_pack_end ()
9627                 gtk_tool_item_get_use_drag_window ()
9628
9629 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9630
9631         * gtk/gtkcellrenderertext.c
9632         (gtk_cell_renderer_text_class_init): remove accidentally committed
9633         debugging spew
9634
9635         * gtk/gtktoolbar.c
9636         (gtk_toolbar_paint_space_line): remove this function
9637         (gtk_toolbar_expose): always propagate expose, even if the item is
9638         a separator item
9639
9640         * gtk/gtkseparatortoolitem.c
9641         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
9642         (get_space_size): new function.
9643         (get_space_style): new function
9644
9645 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
9646
9647         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
9648         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
9649         of GDK_POINTER_MOTION_HINT_MASK.
9650
9651         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
9652         of the drag into an idle as a superior form of 
9653         expose compression.
9654
9655         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
9656         creation here, so that we have an icon at the start
9657         of the drag (e.g., when retrieving the window cache
9658         information.)
9659
9660 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9661
9662         * docs/widget_geometry.txt: better drawing of GtkMenuItem
9663         * docs/widget_geometry.txt: add notes about GtkMenu
9664         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
9665
9666 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9667
9668         * gtk/gtkmenu.c: add vertical_padding style property.
9669         
9670         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
9671         arrow_spacing and horizontal_padding. Also center separators and
9672         make them a bit taller.
9673
9674         * gtk/*menuitem.c: use new style properties.
9675         
9676         * docs/widget_geometry.txt: Add note about GtkMenuItem
9677
9678         * gtk/gtkstyle.c 
9679         (gtk_default_draw_vline, gtk_default_draw_hline):
9680         fix +/-1 errors. 
9681
9682         (gtk_default_draw_shadow): draw a black border around menus.
9683
9684         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
9685         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
9686         x2 and y1, y2 respectively, not x, width and y, height).
9687
9688 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
9689
9690         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
9691         all the atoms in the target list at once.
9692
9693         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
9694         Local drag short-circuit.
9695
9696         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
9697         local case, poke the actions in directly instead of
9698         going through xdnd_set_actions.
9699
9700         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
9701         the local case.
9702
9703         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
9704         XSelectInput()/add a filter if the drag is local.
9705
9706         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
9707         Simplify handling of "XdndSelection".
9708
9709         * gdk/x11/gdkevents-x11.c
9710         (gdk_event_send_client_message_to_all_recurse): Somehow,  
9711         a WM_STATE => _NET_WM_STATE change hand been made here.
9712
9713         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
9714         xatom_names, not atom_names.
9715
9716         * tests/testdnd.c (target_drag_motion): Make the trashcan
9717         open again. (Got lost in deprecation cleanup.)
9718
9719 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
9720
9721         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
9722         earlier, so we don't get a big pile of uncompressed
9723         motion events before the grab takes effect.
9724
9725         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
9726         gdk_window_process_all_updates() so that the area
9727         we are dragging over gets a change to redraw.
9728
9729         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
9730         gdk_window_get_position(), not gdk_window_get_origin().
9731
9732         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
9733         gdkdisplay-x11.h: use XShapeQueryExtension to 
9734         avoid duplicate XQueryExtension when we actually
9735         use it. Remove unnecessary caching in GdkDisplayX11.
9736
9737 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
9738
9739         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
9740         Function to get a range of information about all the
9741         children of a window in a single pass.
9742
9743         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
9744         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
9745         _gdk_x11_get_window_child_info() to greatly reduce
9746         the number of roundtrips.
9747
9748 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
9749
9750         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
9751         a function to XSendEvent() and call a calback on
9752         failure/success.
9753
9754         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
9755         messages to the same process, use _gdk_send_xevent_async().
9756
9757 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
9758
9759         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
9760         toplevel-specific pieces of GdkWindowImplX11 into
9761         a separate GdkToplevelX11 structure.
9762
9763 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
9764
9765         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
9766         some leftover fields.
9767
9768 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
9769
9770         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9771         Use asynchronously _gdk_x11_set_input_focus_safe
9772         to avoid having to trap errors and XSync().
9773
9774         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
9775         _gdk_x11_set_input_focus_safe() here as well.
9776
9777         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
9778         Rework handling of property notifies on _NET_WM_STATE
9779         so that we ignore _NET_WM_DESKTOP notifies unless we
9780         really care.
9781
9782         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
9783         XShmQueryExtension() rather than XQueryExtension() to
9784         avoid extra rountrip.
9785
9786         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
9787         Remove unused call to XGetWindowAttributes()
9788         
9789         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
9790         unused call to XGetKeyboardControl().
9791
9792         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
9793         Add (#99571)
9794
9795         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
9796         No-op implementations of gdk_display_flush().
9797
9798         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
9799         gdk_display_flush() rather than gdk_flush() to avoid
9800         XSync().
9801         
9802         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
9803         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
9804         so that we don't have to get the property back from the server.
9805
9806         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
9807         the serial of when we map a toplevel to allow optimizing
9808         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
9809
9810         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
9811         XTranslateCoordinates() for override-redirect windows.
9812
9813 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
9814
9815         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
9816         about setting window group after the window is mapped from docs
9817         - nothing the ICCCM forbids that.
9818
9819         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
9820         Fix g_return_val_if_fail() in void return function.
9821
9822         * configure.in: Fix misplaced comma that was resulting
9823         in XShm always being disabled.
9824
9825 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9826
9827         * tests/stresstest-toolbar: remove this accidentally committed
9828         file.
9829         
9830         * tests/stresstest-toolbar.c: really add this new test
9831
9832 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9833
9834         * tests/stresstest-toolbar.c: new test for removing items
9835         
9836         * tests/testtoolbar.c: add a popup menu
9837
9838         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
9839           assert widget->parent == container when the container is a
9840           toolbar.
9841
9842         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
9843         simpler. Also make correct.
9844
9845         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
9846         popup_context_menu a boolean handled signal.
9847
9848 2003-07-04  Tor Lillqvist  <tml@iki.fi>
9849
9850         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
9851         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
9852         the width and height of the bounding rectangle only after the
9853         minumum x and y have been found, and need a separate loop for
9854         it. Thanks to Bruce Hochstetler for providing a sample program
9855         exhibiting the bug.
9856
9857 2003-07-03  Tor Lillqvist  <tml@iki.fi>
9858
9859         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
9860         (#116537, Peter Zelezny)
9861
9862 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9863
9864         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
9865         fix warning. Assign something to old_value to quiet gcc
9866
9867         * gtk/gtkcalendar.c 
9868         (start_spinning): gtk_timeout_add->g_timeout_add
9869
9870         * gtk/gtkicontheme.c 
9871         (theme_lookup_icon): Make it compile (remove double semicolon)
9872
9873         * gtk/gtktoolbutton.c
9874         (gtk_tool_button_class_init): Long comment about properties.
9875         (gtk_tool_button_class_init): Improve text for "use_underline"
9876         property
9877         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
9878         on whether the passed-in label has use_mnemonic set
9879         (gtk_tool_button_create_menu_proxy): Split image cloning out in
9880         new function. Make that function also handle image with pixbuf
9881         storage.
9882         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
9883         instead of gtk_container_remove().
9884         (gtk_tool_button_construct_contents): Fix eliding bug
9885
9886         * gtk/gtktoolbar.c
9887         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
9888         by Morten Welinder
9889         (gtk_toolbar_button_press): Make popup_context_menu signal provide
9890         coordinates and button number
9891
9892         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
9893
9894         * tests/apple-red.png: new file
9895
9896 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
9897          
9898         * gtk/gtkicontheme.[ch]: Implement a loader for
9899         named themed icon based on from gnome-desktop library
9900         by Alex Larsson.
9901
9902         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
9903         from gnome-desktop.
9904
9905         * gtk/gtkiconfactory.[ch]: Add
9906         gtk_icon_source_set/get_icon_name() to allow stock icons
9907         to be based off of named theme icons.
9908
9909         * gtk/gtkiconfactory.c: Rework sources so that the source
9910         is *either* a pixbuf, or a filename, or an icon name,
9911         instead of the pixbuf/filename mix it was before. Put a
9912         workaround for get_pixbuf() so that it can return the
9913         filename pixbuf, e.g, for render_icon().
9914
9915         * gtk/gtkiconfactory.c: Make the default setup use
9916         themed icons, and add builtin icons to the default
9917         icon theme for all the standard pixbufs, so we
9918         don't rely on actually having an icon theme on disk.
9919
9920         * gtk/gtkrc.c: Add support for @"icon-name" to specify
9921         a themed icon for a stock icon source.
9922
9923         * tests/Makefile.am test/testicontheme.c: Add a test
9924         program from gnome-desktop.
9925
9926         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
9927         Net/IconThemeName / gtk-icon-theme-name setting.
9928
9929         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
9930         update the icon cache serial so we don't continually
9931         think we are out-of-date.
9932
9933         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
9934         to ::direction_set that should have been to ::direction-changed
9935
9936 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
9937
9938         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
9939         style to the widget.
9940
9941 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9942
9943         * gtk/gtk.h: Add new toolbar headers
9944
9945         * tests/testtoolbar.c: new file
9946
9947         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
9948
9949         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
9950
9951 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
9952
9953         * gtk/gtktoolbar.c:
9954         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
9955         inside a for loop (pointed out by Morten Welinder).
9956         (gtk_toolbar_focus_home_or_end): Minor formatting change
9957
9958         Comments from Owen:
9959
9960         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
9961         gtk_toolbar_elide_underscores instead.
9962
9963         * gtk/gtktoolbar.c: rename signal from focus_ends to
9964         focus_home_or_end.
9965         (_gtk_toolbar_elide_underscores): export this as an internal
9966         function.
9967         (gtk_toolbar_move_focus): add comment explaining difference to
9968         gtk_toolbar_focus();
9969         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
9970         TAB_BACKWARD focus the right widgets in RTL mode
9971
9972         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
9973         "label" and "icon" parameters
9974
9975         * gtk/gtktoolbutton.[ch]: remove icon_set property.
9976
9977 2003-07-01  Matthias Clasen  <maclas@gmx.de>
9978
9979         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
9980         (116364, Morten Welinder) 
9981
9982         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
9983         corresponding dialogs.
9984
9985         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
9986         gtkcolorbutton.h.  
9987         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
9988
9989         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
9990
9991         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
9992
9993         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
9994
9995         * gtk/gtkexpander.c: Small additions to the docs. 
9996
9997 2003-07-01  Tor Lillqvist  <tml@iki.fi>
9998
9999         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
10000         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
10001
10002 2003-07-01  Matthias Clasen  <maclas@gmx.de>
10003
10004         * configure.in: Check for Xcursor.
10005         
10006         * gdk/x11/gdkcursor-x11.c:
10007         * gdk/gdkdisplay.h: 
10008         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
10009         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
10010         gdk_display_supports_cursor_color(),
10011         gdk_display_get_default_cursor_size() and 
10012         gdk_display_get_maximal_cursor_size().  (#69436)
10013
10014 2003-06-30  Tor Lillqvist  <tml@iki.fi>
10015
10016         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
10017         callback proc for EnumWindows().
10018         (gdk_drag_find_window_for_screen): Actually take the drag_window
10019         argument into account: Instead of using WindowFromPoint(), use
10020         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
10021         M Brown, Herman Bloggs)
10022
10023         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
10024         gdk_window_ref()/unref() calls with g_object_ref()/unref().
10025         Consistently use %p format in debugging output of pointers and
10026         HANDLEs.
10027
10028 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
10029
10030         * gtk/gtkexpander.h: kill some stray characters
10031         breaking the build.
10032
10033 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
10034
10035         Add GtkExpander. See discussion in bug #60553.
10036
10037         * gtk/gtkexpander.[ch]: add.
10038         
10039         * gtk/Makefile.am: build gtk-expander.[ch].
10040         
10041         * docs/widget_geometry.txt: add info on the layout
10042         of GtkExpander.
10043
10044 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10045
10046         * gtkradiotoolbutton.c:         new file
10047         * gtkradiotoolbutton.h:            "
10048         * gtktoggletoolbutton.c:           "
10049         * gtktoggletoolbutton.h:           "
10050         * gtktoolbutton.c:                 "
10051         * gtktoolbutton.h:                 "
10052         * gtktoolitem.c:                   "
10053         * gtktoolitem.h:                   "
10054         * gtktoolbar.c: many changes
10055         * gtktoolbar.h: many changes
10056         * gtkseparatortoolitem.c:       new file
10057         * gtkseparatortoolitem.h           "
10058
10059         New toolbar.
10060         
10061         - Items on a toolbar are now separate widgets, instances of a
10062           subclass of GtkToolItem.
10063
10064         - Items there aren't room for on the toolbar are unmapped, and an
10065           overflow menu with a proxy menu item is added instead.
10066
10067         - The toolbar is keyboard navigatable. Press TAB to focus the
10068           first item, then use arrow keys and Ctrl TAB to move around the
10069           toolbar. TAB moves focus out of the toolbar.
10070
10071         - Bascially all of the old toolbar API is deprecated in favor of
10072           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
10073
10074         - The toolbar is backwards compatible with the old toolbar.
10075
10076 2003-06-29  Matthias Clasen  <maclas@gmx.de>
10077
10078         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
10079         from docs, some more formatting fixes. 
10080
10081 2003-06-28  Tor Lillqvist  <tml@iki.fi>
10082
10083         Fix for #111028, thanks to J. Ali Harlow, who writes:
10084         I found that the GdkPixmap->GdkImage reference really isn't
10085         important. It's only really there to have somewhere convenient to
10086         store the location of the pixel data in the pixmap and as an easy
10087         way of accessing the dimensions of that data. I have therefore put
10088         together a fix which removes this reference entirely which seems
10089         to solve the problem.
10090
10091         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
10092         Instead of a pointer to a GdkImage, keep a pointer to the pixels
10093         directly.
10094
10095         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
10096         (_gdk_win32_new_image): New function, replacing the above. Creates
10097         a GdkImage without any associated GdkPixmap.
10098         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
10099
10100         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
10101
10102         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
10103         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
10104         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
10105         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
10106         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
10107         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
10108         Corresponding changes.
10109
10110 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10111
10112         * gtk/gtktreeviewcolumn.c
10113         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
10114         and "is_expanded" if the new value is different fromt he old one.
10115
10116 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
10117
10118         * docs/faq/gtk-faq.sgml: Fix typos. Update
10119         thread example I missed yesterday.
10120
10121 2003-06-24  Matthias Clasen  <maclas@gmx.de>
10122
10123         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
10124         shadow_type. 
10125
10126         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
10127         (gtk_widget_class_list_style_properties): Use same parameter names as in  
10128         header (to silence gtk-doc).
10129
10130         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
10131
10132 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
10133
10134         * docs/faq/gtk-faq.sgml: Thread support updates
10135         from Owen. Various suggestions from Steve Chaplin.
10136
10137 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
10138
10139         * po/id.po: Updated Indonesian translation
10140
10141 2003-06-21  Tor Lillqvist  <tml@iki.fi>
10142
10143         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
10144         emulating X11's automatic grab on button down, pass owner_events
10145         as FALSE. According to the XLib spec, automatic grabs use True for
10146         owner_events when OwnerGrabButtonMask is selected, and I don't see
10147         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
10148         (find_window_for_pointer_event): Improve debugging output.
10149
10150 2003-06-17  Tor Lillqvist  <tml@iki.fi>
10151
10152         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
10153         subdirectory, where libtool 1.5 installs them.
10154
10155         * README.win32: Point to FSF's binary Win32 distribution of
10156         gettext-runtime.
10157
10158 2003-06-17  Matthias Clasen  <maclas@gmx.de>
10159
10160         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
10161         macros to check for XML catalog contents and path, borrowed from
10162         gtk-doc. 
10163         * configure.in: New option --enable-man to enable regeneration of
10164         man pages from Docbook, if the necessary tools are found.
10165
10166 2003-06-15  Matthias Clasen  <maclas@gmx.de>
10167
10168         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
10169         * gtk/gtknotebook.c (gtk_notebook_class_init): 
10170         * gtk/gtkalignment.c (gtk_alignment_class_init): 
10171         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
10172         as 2.4 additions.
10173
10174         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
10175         to the proper place, immediately before the g_signal_new() call.
10176
10177         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
10178         more obvious.  (#115122, Jeff Franks)
10179
10180 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
10181
10182         * gtk/gtkwidget.c: (event_window_is_still_viewable):
10183         Special case pixmaps. (#114880)
10184         
10185 2003-06-12  Matthias Clasen  <maclas@gmx.de>
10186
10187         * gtk/gtkwidget.c: Document child-notify and drag-data-received
10188         signals. Owen, we need to figure out where the best place for
10189         these comments in the source is. I currently put them in front of
10190         the signals enum.
10191
10192 2003-06-11  Matthias Clasen  <maclas@gmx.de>
10193
10194         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
10195
10196 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
10197
10198         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
10199         silly typo fix. s/seperator/separator/. This gets rid of the
10200         assert spam when using TreeView.
10201
10202 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10203
10204         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
10205         function for XIM instantiate callback.
10206         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
10207         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
10208         actually made.
10209         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
10210         for XIM's destroy callback.
10211         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
10212         is set or not - if it's not set, call xim_info_try_im() to try to
10213         initiaize it.
10214         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
10215         filter_key_release flag of the context.
10216         * modules/input/gtkimcontextxim.c (get_ic_real): removed
10217         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
10218         code from the removed get_ic_real().
10219
10220         For XIM instantiation, destruction and re-instantiation. With
10221         this, Gtk+ apps will be able to connect or reconnect to the XIM,
10222         when it starts after the apps, or when the XIM gets lost and recover.
10223         (#113099, #107782).
10224
10225 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
10226
10227         Merged from stable.
10228
10229         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
10230         check if width is !null, not *width. Doh.
10231
10232 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
10233
10234         Merged from stable.
10235
10236         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
10237         Remove the weird dx logic, get all cell_area and background_area
10238         calculations right. Not sure what was up with it before. (Fixes
10239         #110989, testcase from Vasco Alexandre da Silva Costa).
10240
10241 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10242
10243         * tests/testgtk.c: Make it compile with C89 compilers
10244
10245 2003-06-10  Matthias Clasen  <maclas@gmx.de>
10246
10247         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
10248         property "overwrite".
10249         (gtk_text_view_[gs]et_property): Handle "overwrite".
10250         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
10251         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
10252
10253 2003-06-09  Matthias Clasen  <maclas@gmx.de>
10254
10255         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
10256         properties "resize" and "shrink".
10257         (gtk_paned_[gs]et_child_property): Implementations of 
10258         GtkContainer::[gs]et_child_property.  
10259         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
10260         paned child properties instead of remove/add hacks.  (#114667, 
10261         Soeren Sandmann) 
10262
10263 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
10264
10265         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
10266         out event->window test - it wasn't needed because
10267         of the call to get_widget_coordinates().
10268
10269         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
10270         call to gtk_widget_grab_focus() when not clicking on
10271         any tabs. (Real fix for #114534)
10272
10273 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
10274
10275         * tests/testdnd.c: Use application/x-rootwindow-drop for
10276         root window drops. (#108670, Alex Larsson)
10277
10278         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
10279         Accept either application/x-rootwin-drop (what GTK+ has always used)
10280         or application/x-rootwindow-drop (what the XDND standard specifies).
10281
10282 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
10283
10284         * gtk/gtkwidget.c (event_window_still_viewable): 
10285         Before delivering an event to a widget, check that
10286         (if relevant), the event's window is still viewable.
10287         (#105642, Dennis Björklund)
10288
10289         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
10290         NULL out private->parent, since after destruction
10291         it might not be valid any more.
10292
10293         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
10294         accesses before g_return_val_if_fail(). Treat 
10295         DESTROYED windows as unmapped.
10296
10297 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
10298
10299         * gtk/gtkentry.c: Recompute unconditionally in
10300         gtk_entry_style_set, and in a new gtk_label_screen_changed().
10301         Protect the guts of recompute_idle_func() with
10302         gtk_widget_has_screen(). (#114040, Morten Welinder) 
10303         Fix FALSE/0 confusion.
10304         
10305 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10306
10307         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
10308         Fixes (#114669)
10309
10310 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
10311
10312         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
10313         set_adjustment (viewport, NULL);
10314
10315 2003-06-07  Matthias Clasen  <maclas@gmx.de>
10316
10317         * gtk/gtkiconfactory.c (get_default_icons): 
10318         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
10319         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
10320         undelete and revert.  (#96633)
10321         
10322 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
10323
10324         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
10325         refactoring of code to reduce duplication; fixes include:
10326
10327         - gtk_viewport_realize(): Position the window correct from adjustment 
10328         values. (#110737, Michael Natterer)
10329
10330         - Remove some division-by-zero checks in places where there is no 
10331         longer division. (#110737)
10332
10333         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
10334         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
10335         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
10336
10337         - Switch over to encapsulated lazy-creation for hadjustment/
10338         vadjustment; even with the CONSTRUCT property, we need this after
10339         destroy.
10340
10341         - When updating the adjustment, immediate set their values to
10342         match the the current range of the viewport, and update the 
10343         viewport position to match the value of the new adjustments. 
10344         (Part of #1165)
10345
10346 2003-06-06  Tor Lillqvist  <tml@iki.fi>
10347
10348         * gdk/win32/gdkprivate-win32.h: Fix typo.
10349
10350         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
10351         graphics_exposures and subwindow_mode, too, even if they aren't
10352         currently used.
10353
10354 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
10355
10356         Merged from stable.
10357
10358         * gtk/gtktreeview.c (do_expand_collapse),
10359         (expand_collapse_timeout), (cancel_arrow_animation): made
10360         expand_collapse_timeout a wrapper with locks around     
10361         do_expand_collapse, made cancel_arrow_animation use
10362         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
10363         Peter Bloomfield).
10364
10365 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10366
10367         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
10368         * modules/input/gtkimcontextxim.c (preedit_start_callback,
10369         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
10370         to keep preedit-[start,changed,end] signals from being called during
10371         finalization (#111861).
10372
10373 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
10374
10375         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
10376         presses that are not on the tab (#114534).
10377
10378 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
10379
10380         * demos/Makefile.am: Conditionalize dependencies for
10381         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlow). 
10382         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
10383         test-inline-pixbufs.h if we don't have libpng.
10384
10385         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
10386         Add a dependency on gdk-pixbuf.loaders when not 
10387         cross-compiling, remove the dependency on gdk-pixbuf-csource
10388         when not cross compiling.
10389
10390 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
10391
10392         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
10393         gtk_window_get_geometry_info() returning NULL.
10394         (#107311, John Finlay)
10395
10396 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
10397
10398         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
10399         twice the border width from the width/height, not
10400         1x the border width. (#106336, Rodney Dawes)
10401
10402 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
10403  
10404         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10405         If at the end of the buffer, move to the end iter -
10406         parallels behavior of move_iter_to_previous_line.
10407         (#81960, Padraig O'Briain)
10408  
10409 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
10410
10411         #80023, Yao Zhang, TOKUNAGA Hiroyuki
10412
10413         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
10414         Account for the preedit cursor offset if the iter passed
10415         in is at the same place as the insertion cursor.
10416
10417         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
10418         Encapsulate getting the insertion cursor location.
10419
10420         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
10421         Pass the real y/height to the IM context. Take 
10422         text_view->x/yoffset into account.
10423
10424 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
10425
10426         * gtk/gtktextview.[ch]: Never scroll on focus in
10427         (#81893, Patch from Paolo Maggi)
10428
10429         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
10430         Scroll to the current cursor location before handling
10431         the action, in case the user just tabbed in
10432         and the cursor is offscreen.
10433
10434 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
10435          
10436          #107883, Gustavo Giráldez
10437
10438         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
10439         Split out the case where we know we changed, and 
10440         already dealt with our cached line being invalidated
10441         from external calls to gtk_text_layout_changed.
10442
10443         * gtk/gtktextlayout.c (gtk_text_layout_changed):
10444         Check if the invalidate yrange intersects our
10445         cached line, and clear it if necessary.
10446
10447 2003-06-05  Tor Lillqvist  <tml@iki.fi>
10448
10449         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
10450         filters.
10451
10452 2003-06-05  Matthias Clasen  <maclas@gmx.de>
10453
10454         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
10455         (gtk_text_view_grab_notify): 
10456         (gtk_text_view_state_changed): Implement these
10457         to unobscure cursor when grab shadowed or insensitised.
10458         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
10459         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
10460         gtk_text_view_motion_event().
10461         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
10462
10463         * gtk/gtktextview.c (select_all): New keybinding signal for
10464         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
10465
10466         * gtk/gtkcalendar.c (calendar_timer): 
10467         (stop_spinning): Replace deprecated gtk_timeout_* functions by
10468         their GLib counterparts.  (#114429)
10469
10470         * gtk/gtktreestore.c (gtk_tree_store_new): 
10471         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
10472         types.
10473
10474 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
10475
10476         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
10477         When drawing underlines, join up adjacent runs
10478         where possible, so we don't get changes in 
10479         shaper/font/etc. breaking underlines. (#103662,
10480         Kang Jeong-Hee)
10481
10482 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
10483
10484         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
10485         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
10486         improve the speed of inserting rows into an already sorted list,
10487         #109292
10488
10489 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
10490
10491         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
10492         track of when we have a clip mask set for the GC,
10493         and when we unset it, or switch to a clip region,
10494         immediately call XSetClipMask (..., None) to avoid
10495         Xlib caching stale data. (#111806)
10496
10497         * gtk/gtktextdisplay.c: Don't set a clip mask
10498         when drawing alpha pixmaps; it isn't necessary any more.
10499         (#111806)
10500
10501 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
10502
10503         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
10504         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
10505         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
10506         (#92548, Tim Evans)
10507
10508         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
10509         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
10510         Use state_type = STATE_INSENSITIVE for insensitive menu items.
10511
10512 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
10513
10514         Merged from stable.
10515
10516         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
10517         assert for get_info. (reported by Michael Natterer),
10518         (gtk_tree_view_expand_all_emission_helper),
10519         (gtk_tree_view_expand_all_helper): emit row_expanded for all
10520         expanded rows during an _expand_all operation. (Fixes #111280,
10521         reported by Benjamin Bayart).
10522
10523 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
10524
10525         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
10526         respond to pings on a root window; prevents infinite
10527         loops if we are selecting for SubstructureNotify on the
10528         root window. (#111945, Sergey V. Udaltsov)
10529
10530 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
10531
10532         #71597, reported by Morten Welinder
10533
10534         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
10535         (Patch from Christian Petig)
10536
10537         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
10538         Major rewrite of 555 and 565 conversion routines:
10539
10540         - Move all the bit shifting into a small block of macros,
10541           eliminating much duplication of complicated arithmetic.
10542         - Get rid of 2-pixels at a time code, which was buggy,
10543           hard to maintain, caused unaligned accesses, and
10544           probably didn't actually perform any better.
10545         - Simplify cases where different data types were
10546           used for the little and big endian cases, use
10547           GUINT16_SWAP_LE_BE() where appropriate.
10548                 
10549 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
10550
10551         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
10552         bad optimization for src_rowstride == dest_stride.
10553         (Didn't consider the case where we were copying only
10554         partial widths of a wider source buffer)
10555         (#113034, reported by Hans Petter Jansson)
10556
10557 2003-06-03  Michael Natterer  <mitch@gimp.org>
10558
10559         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
10560         reenabled button_release events for xinput devices. (#113948)
10561
10562 2003-06-03  Christian Rose  <menthos@menthos.com>
10563
10564         * configure.in: Added "li" to ALL_LINGUAS.
10565
10566 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
10567
10568         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
10569         map the event window if the notebook isn't mapped. (#113980,
10570         Richard Reich)
10571
10572 2003-06-02  Sven Neumann  <sven@gimp.org>
10573
10574         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
10575
10576         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
10577
10578 2003-06-01  Matthias Clasen  <maclas@gmx.de>
10579
10580         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
10581         Since: 2.4 to the docs.
10582
10583         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
10584         an example to the docs.  (#98427)
10585
10586 2003-05-30  Murray Cumming  <murrayc@usa.net>
10587
10588         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
10589         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
10590         uses the new private data system - see g_type_class_add_private() in
10591         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
10592
10593 2003-05-30  Matthias Clasen  <maclas@gmx.de>
10594         
10595         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
10596         signature of gtk_notebook_draw_arrow() for Solaris builds to go
10597         through.  (#114043, Anand Subramanian)
10598
10599 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10600
10601         * modules/input/imipa.c: 
10602         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
10603
10604 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10605
10606         * gtk/gtkimmodule.c (_gtk_im_module_list):
10607         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
10608
10609 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10610
10611         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
10612         label of default input method localizable.
10613         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
10614         use translations of input method context names
10615         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
10616           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
10617           modules/input/imti-er.c, modules/input/imti-et.c
10618           modules/input/imviqr.c, modules/input/imxim.c
10619         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
10620         (#113850).
10621
10622 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
10623
10624         Merged from stable.
10625
10626         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
10627         grab separate, the user might clear the tree in the focus-in
10628         callback. (Fixes #113086, testcase from Felipe Heidrich).
10629
10630 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
10631
10632         Merged from stable.
10633
10634         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
10635         of row reference when we unset the model. Also reset
10636         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
10637
10638 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
10639
10640         Merged from stable.
10641
10642         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
10643         the current editing, if it exists. (Fixes #108956, reported by
10644         Michael Natterer).
10645
10646 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
10647
10648         Merged from stable.
10649
10650         * gtk/gtktreeview.c (check_selection_helper): new function,
10651         (gtk_tree_view_row_deleted): traverse the tree from the
10652         deleted node to see whether the selection changed, instead of
10653         just checking this node. (Fixes #107400, reported by 'Duncan').
10654
10655 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
10656
10657         Merged from stable.
10658
10659         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
10660         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
10661         instead of _maybe_begin_dragging_row, so the icon can be
10662         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
10663
10664 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
10665
10666         Merged from stable.
10667
10668         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
10669         cell_area x/width for the expander if needed. (Fixes #101748,
10670         reported by Dave Cook and Mariano Suarez-Alvarez).
10671
10672 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
10673
10674         Merged from stable.
10675
10676         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
10677         if tree/node are still the same after _internal_select_node.
10678         (Fixes #92256, reported by edscott).
10679
10680 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
10681
10682         Fixes #75745, reported by Richard Hult. Merged from stable.
10683
10684         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
10685         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
10686         cursor or not.
10687
10688         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
10689         if we are rendering a cursor row, and the cell the be
10690         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
10691         flag (else we unset it).
10692
10693 2003-05-27  Matthias Clasen  <maclas@gmx.de>
10694
10695         * gtk/gtkwindow-decorate.c: 
10696         * gtk/gtktreeprivate.h: 
10697         * gtk/gtkdnd.c: 
10698         * gdk/win32/gdkwindow-win32.h: 
10699         * gdk/linux-fb/gdkprivate-fb.h: 
10700         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
10701         unspecified signedness.  (#112919, Morten Welinder)
10702
10703         * gtk/queryimmodules.c (escape_string): 
10704         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
10705         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
10706         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
10707         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
10708         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
10709         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
10710         Morten Welinder) 
10711
10712 2003-05-27  Tor Lillqvist  <tml@iki.fi>
10713
10714         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
10715         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
10716
10717         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
10718         win32/libgdk-win32.la.
10719
10720         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
10721
10722 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
10723
10724         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
10725         scrollbar slider length 21 instead of 7.
10726
10727 2003-05-23  Matthias Clasen  <maclas@gmx.de>
10728
10729         * gtk/gtknotebook.c: Add support for up to four scroll
10730         arrows. Control their display by new style properties
10731         "has_forward_stepper", "has_backward_stepper",
10732         "has_secondary_forward_stepper" and
10733         has_secondary_backward_stepper". (#110540)
10734
10735         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
10736         click_child three bits wide, add
10737         has_{before,after}_{previous,next} fields.
10738
10739         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
10740         focus out of hex_entry.  (#112665)
10741         (hex_focus_out): New signal handler for focus out of hex entry.
10742
10743 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
10744
10745         * gtk/gtkwidget.c (gtk_widget_realize): 
10746         g_return_if_fail() if
10747         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
10748         (#107872, Christian Reis)
10749
10750 2003-05-22  Matthias Clasen  <maclas@gmx.de>
10751
10752         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
10753         (gtk_file_selection_rename_file): Some keynav improvements for the
10754         "Rename File" and "Create Directory" subdialogs: Enter in entry
10755         activates default, default is "Create"/"Rename", Escape cancels
10756         dialog.  (#113110)
10757         (gtk_file_selection_set_filename): Add a hint about opening 
10758         directories.  (#113175)
10759
10760 2003-05-22  Matthias Clasen  <maclas@gmx.de>
10761
10762         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
10763         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
10764         anyway.  (#113476)
10765
10766 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
10767
10768         * gtk/gtkprogress.c (gtk_progress_set_format_string,
10769         gtk_progress_set_show_text): Always queue a resize ... 
10770         we rely on the size-allocate to do the update, plus a 
10771         different format can actually change our size requisition.
10772         (#111052, Vasco Alexandre da Silva Costa)
10773
10774         * gtk/gtkprogress.c (gtk_progress_changed): Track
10775         ::changed as well as ::value_changed, and queue a
10776         resize on ::changed when necessary.
10777
10778         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
10779         Call gtk_progress_changed() here to update or 
10780         queue a resize as necessary.
10781
10782 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10783
10784         * gtk/gtkimcontextsimple.c: added composing rules of
10785         Greek accented letters, patch by Vasilis Vasaitis (#107507)
10786
10787 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10788
10789         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
10790         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
10791         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
10792
10793 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10794
10795         * gtk/gtkimcontextsimple.c: 
10796         code that can check the compose table for ascending order,
10797         by Vasilis Vasaitis (#104862).
10798
10799 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
10800
10801         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
10802         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
10803         to handle the case where a modifier not in the mask
10804         (like Num_Lock) changes the key value, so replace
10805         the masked state with a state/mask pair. (#106913,
10806         Olivier Ripoll)
10807
10808         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
10809         in state/mask pair to _gtk_key_hash_lookup()
10810
10811 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
10812
10813         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
10814         fix a memory leak, free input context list (#113259).
10815
10816 2003-05-21  Matthias Clasen  <maclas@gmx.de>
10817
10818         * configure.in (all_loaders): Add pcx.
10819
10820         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
10821
10822 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
10823
10824         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
10825         accept a missing gtk.immodules file, some people
10826         want to run without one. (#112406, patch from
10827         Arnaud Charlet)
10828
10829 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
10830
10831         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
10832         height/width confusion (#113370, Xan Lopez)
10833
10834 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
10835
10836         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
10837         zero all unused parts of client messages (Mainly Motif DND
10838         and EWMH). Also, fix a couple places where we were putting
10839         contents into Motif DND messages that didn't belong.
10840         (#113361, EWMH problem reported by Lubos Lunak)
10841
10842         * gtk/gtkselection.c (_gtk_selection_request): Handle the
10843         case where the property type for the multiple atoms is
10844         ATOM_PAIR by doing the conversions ourselve. This is
10845         needed for Xt inter-operation.
10846
10847 2003-05-19 Arafat Medini <lumina@silverpen.de>
10848
10849         * configure.in: Added ar to ALL_LINGUAS
10850
10851 2003-05-19  Matthias Clasen  <maclas@gmx.de>
10852
10853         * gtk/gtksettings.c (gtk_rc_property_parse_border,
10854         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
10855         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
10856         Add docs.
10857
10858         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
10859         gtk_widget_class_install_style_property_parser): Add docs. 
10860
10861 2003-05-17  Matthias Clasen  <maclas@gmx.de>
10862
10863         * tests/prop-editor.c: Add navigation for object properties, so
10864         that you can easily edit the properties of the parent of a widget.
10865         (#113152)
10866
10867 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
10868
10869         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
10870         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
10871         inconsistency and leave the old name as an aliass (#104873)
10872
10873 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
10874
10875         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
10876         from Charles Schmidt to add missing notify (#108305)
10877
10878 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
10879  
10880         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
10881         (#105500, Morten Welinder.)
10882  
10883 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
10884
10885         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
10886         instead of gumake for XNFilterEvents event mask(#110493).
10887
10888 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
10889
10890         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
10891         a GObject. (#112762)
10892
10893 2003-05-08  Sven Neumann  <sven@gimp.org>
10894
10895         * configure.in: set the HAVE_X11R6 automake conditional to false
10896         if not compiling for X11.
10897
10898 2003-05-08  Matthias Clasen  <maclas@gmx.de>
10899
10900         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
10901         (gtk_calendar_get_display_options): New functions.
10902         (gtk_calendar_display_options): Depreate.  (#64567)
10903         (gtk_calendar_class_init): Add boolean properties for the display
10904         options.  (#50949)
10905
10906 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
10907
10908         Patch from James Henstridge to update to automake-1.7
10909         (#109542)
10910  
10911         * autogen.sh: update to call newer tools.
10912  
10913         * configure.in: various updates, to use M4 macros to put
10914         variables that change each release at the top.
10915         Use AC_HELP_STRING to format help strings.
10916         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
10917  
10918         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
10919         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
10920         during distcheck.
10921  
10922         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
10923         makefile fragment.
10924  
10925         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
10926         Use BUILT_SOURCES where appropriate.
10927         Build generated files in builddir rather than srcdir.
10928         Fix uninstall and distclean targets to satisfy distcheck.
10929
10930         ===
10931
10932         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
10933         built first, since we are now using BUILT_SOURCES.
10934
10935         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
10936
10937         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
10938         with geninclude.pl.
10939
10940         * configure.in: Update versions to 2.3.0.
10941  
10942 2003-05-06  Tor Lillqvist  <tml@iki.fi>
10943
10944         Fix for #110165 (thanks to Arnaud Charlet):
10945         
10946         * gdk/win32/gdkevents-win32.c (build_keypress_event,
10947         build_keyrelease_event): For unshifted control char, use
10948         lowercase ASCII keyval.
10949         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
10950         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
10951         lowercase keyval. Use build_key_event_state() here, too, instead
10952         of minor code duplication.
10953
10954 2003-05-06  Matthias Clasen  <maclas@gmx.de>
10955
10956         * tests/testmultidisplay.c: Don't include strings.h, it's not
10957         needed anymore.  (#112388)
10958
10959         * examples/menu/itemfactory.c: 
10960         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
10961         itemfactory example.
10962
10963 2003-05-05  Matthias Clasen  <maclas@gmx.de>
10964
10965         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
10966         icon type to the stock icon type.  (#111735, Dave Bordoley)
10967
10968 2003-05-05  Christian Rose  <menthos@menthos.com>
10969
10970         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
10971         Removed sp, it's replaced by sr@Latn.
10972
10973 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
10974
10975         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
10976         Gonzalo Odiard
10977
10978 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
10979
10980         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
10981         data iff the destroy func isn't NULL.
10982
10983 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
10984
10985         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
10986
10987 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
10988
10989         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
10990
10991 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
10992
10993         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
10994         of UTF-8. (#106419, Roozbeh Pournader)
10995
10996 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
10997
10998         * configure.in: Only check for XFT2 if we found pango-xft
10999         (#105692, Jon Nall)
11000
11001 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
11002
11003         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
11004         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
11005
11006 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
11007
11008         * docs/faq/gtk-faq.sgml: add note about version converage.
11009
11010 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
11011
11012         * gtk/gtksocket.c (activate_key): Fix prototype for
11013         activate_key. (#108927, Jason D. Hildebrand)
11014
11015 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
11016
11017         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
11018         Remove geninclude.pl from CVS and don't dist it either,
11019         it is generated. (#108970, Rich Kinder)
11020
11021 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gtk/gtkobject.h: Remove a couple of obsolete comments,
11024         fix another comment. (#109737, Britton Kerin)
11025
11026 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
11029         the source list, not just it's contents (Patch
11030         from Charles Kerr, #108243)
11031
11032 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
11033
11034         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
11035         from Alex Larsson fixing problem with restacking during
11036         DND. (#108671)
11037
11038 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
11039
11040         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
11041         Calling XFlush() after ungrabbing, to avoid problems if
11042         the app subsequently blocks on a long-running operation.
11043         (#106520, reported by Rajkumar Siva)
11044
11045 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
11046
11047         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
11048         SKIP_TASKBAR/SKIP_PAGER to set of properties we
11049         might set on map. (#110019, problem reported
11050         by Loban Rahman)
11051
11052 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
11053
11054         * gdk/gdkevents.c (gdk_event_copy): Fix for the
11055         case when gdk_event_copy() is called on a non-allocated
11056         event. (#109716, reported by Rich Burridge)
11057
11058 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
11059
11060         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
11061         Fix pointer arithmetic on 'void *'. (#108322)
11062
11063 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
11064
11065         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
11066         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
11067         use of XAddConnectionWatch. Remove --enable-xim config option.
11068         Should fix building on X11R6 (#110523, Albert Chin)
11069
11070 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
11071
11072         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
11073         Patch from Morten Welinder to catch Sun servers with a 
11074         broken implementation of the RENDER extension. (#108309)
11075
11076 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
11077
11078         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
11079         gdk_free_compound_text(), not g_free(). (#107643,
11080         Michael Zucchi)
11081
11082 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
11083
11084         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
11085         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
11086         wrong use of base_finalize. (#105126, Sven Neumann)
11087
11088 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
11089
11090         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
11091         '/' vs. '*' problem in aspect ration computations. (#108237)
11092
11093 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
11094
11095         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
11096         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
11097         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
11098         event, so select for both. (#108406, Egmont Koblinger)
11099
11100 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
11101
11102         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
11103         caused by not clearing the scroll_to_path.
11104
11105 2003-04-16  Matthias Clasen  <maclas@gmx.de>
11106
11107         * gtk/gtkstyle.c: Doc additions and fixes.
11108
11109         * gtk/gtktreeviewcolumn.c
11110         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
11111
11112 2003-04-14  Michael Natterer  <mitch@gimp.org>
11113
11114         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
11115         that the iter is not reordered to its own position. Prevents model
11116         corruption for the case that the store contains only a single item
11117         (fixes bug #108387).
11118
11119         Unrelated:
11120
11121         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
11122         new list element later so we don't leak it if we decide to return
11123         early.
11124
11125         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
11126         set selection->tree_view->priv->anchor to NULL after freeing it.
11127
11128 2003-04-13  Matthias Clasen  <maclas@gmx.de>
11129
11130         * gtk/gtktreeviewcolumn.c
11131         (gtk_tree_view_column_cell_get_position): Document. 
11132
11133         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
11134         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
11135         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
11136         these as 2.4 additions.
11137
11138 2003-04-09  Matthias Clasen  <maclas@gmx.de>
11139
11140         * INSTALL.in: Fix the real thing.
11141
11142         * INSTALL: Typo fix.
11143
11144 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
11145
11146         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
11147         after ungrabbing the server.
11148  
11149         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
11150         calls to XFlush().
11151
11152         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
11153         Use gdk_x11_display_grab/ungrab.
11154
11155         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
11156         use_xshm to TRUE so SHM gets used when present.
11157  
11158 2003-04-07  Matthias Clasen  <maclas@gmx.de>
11159
11160         * gtk/gtktextlayout.c (set_para_values): 
11161         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
11162         David Brigada)
11163
11164         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
11165         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
11166         misspellings of possessive "its".  (#110027, Doug Quale)
11167
11168 2003-04-03  Matthias Clasen  <maclas@gmx.de>
11169
11170         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
11171         current directory if it looks like the srcdir.  (#109357)
11172
11173 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
11174
11175         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
11176         focus_on_click
11177
11178         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
11179         navigation not wrap around.
11180
11181 2003-04-02  Matthias Clasen  <maclas@gmx.de>
11182
11183         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
11184         Return 0 if lower == upper.  (#109155)
11185         (gtk_progress_get_current_percentage): Use
11186         gtk_progress_get_percentage_from_value().
11187
11188 2003-04-01  Matthias Clasen  <maclas@gmx.de>
11189
11190         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
11191         (#109510, Noah Levitt)
11192
11193 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
11194
11195         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
11196         members so Purify won't complain.
11197
11198         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
11199
11200 2003-03-31  Matthias Clasen  <maclas@gmx.de>
11201
11202         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
11203         gtk_window_[gs]et_role().  (#93904)
11204
11205 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
11206
11207         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
11208         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
11209
11210 2003-03-29  Matthias Clasen  <maclas@gmx.de>
11211
11212         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
11213         of labels back to normal before reparenting back.  (#102387)
11214
11215         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
11216         a default window title to match the GtkFontSelectionDialog behavior.
11217  
11218         (gtk_color_selection_dialog_new): Don't call
11219         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
11220
11221 2003-03-29  Matthias Clasen  <maclas@gmx.de>
11222
11223         Fix for bug #78499:
11224         
11225         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
11226         select_lines. 
11227
11228         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
11229         select_lines on double/triple click.
11230
11231         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
11232         select-by-words and select-by-lines behaviour.
11233
11234         Fixes for bug #56248:
11235         
11236         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
11237         timer and queue a redraw. 
11238         (gtk_notebook_grab_notify): 
11239         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
11240         if necessary.   
11241         (gtk_notebook_button_release): Use stop_scrolling().
11242         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
11243
11244         * gtk/gtkrange.c (stop_scrolling): New function to remove the
11245         grab, remove the timer and queue a redraw.
11246         (gtk_range_grab_notify): 
11247         (gtk_range_state_changed): New functions to call stop_scrolling() 
11248         if necessary.   
11249         (gtk_range_button_release): Use stop_scrolling().
11250
11251         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
11252         (gtk_spin_button_state_changed): Redraw after stop_spinning.
11253         (gtk_spin_button_stop_spinning): Reset click_child to correct the
11254         drawing of the arrows.
11255         (gtk_spin_button_button_release): Use a local copy of click_child,
11256         since stop_spinning() resets it.
11257
11258         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
11259         C-A-PgDown as alternatives to the A-less variants. (This slipped
11260         in accidentally some time ago).  (#97860)
11261
11262 2003-03-26  Sven Neumann  <sven@gimp.org>
11263
11264         * gtk/gtktreeview.c: rewrote the function that does node and arrow
11265         prelighting, queue all redraws from here (Fixes bug #108792).
11266
11267 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
11268
11269         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
11270         Fixes bug #108778.
11271
11272 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
11273
11274         * configure.in: Added "ml" in ALL_LINGUAS
11275
11276 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
11277
11278         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
11279         G_DISABLE_DEPRECATED.
11280
11281 2003-03-14  Tor Lillqvist  <tml@iki.fi>
11282
11283         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
11284         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
11285         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
11286         multiple monitors can have negative coordinates on some of the
11287         monitors. (partial fix for #99496, Arnaud Charlet)
11288
11289 2003-03-15  Matthias Clasen  <maclas@gmx.de>
11290
11291         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
11292
11293 2003-03-13  Sven Neumann  <sven@gimp.org>
11294
11295         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
11296         removed redundant calls to g_object_notify().
11297         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
11298         bug #108236.
11299
11300         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
11301         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
11302         functions return an integer value).
11303
11304 2003-03-13  Tor Lillqvist  <tml@iki.fi>
11305
11306         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
11307         WM_MOUSEMOVE, the test whether we have actually moved (and thus
11308         shouldn't generate an GDK event) moved after the call to
11309         propagate() and translate_mouse_coords(). Otherwise we were
11310         testing wrong values. (#108115, Allin Cottrell)
11311         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
11312         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
11313
11314         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
11315         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
11316         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
11317         cursor right away with SetCursor(), as we won't get any
11318         WM_SETCURSOR messages while the mouse is captured. 
11319         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
11320         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
11321
11322         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
11323         WM_SYSCHAR, return FALSE from the window procedure to prevent the
11324         DefWindowProc from being called. Otherwise Windows would beep,
11325         thinking you are tring to access a (nonexistent) menu when you
11326         press Alt-something. Don't do this for Alt-Space,
11327         though. (#107454, Martyn Russell)
11328
11329         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
11330
11331 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
11332
11333         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
11334         [left/right] expands/collapses the tree, #108092
11335
11336 2003-03-09  Tor Lillqvist  <tml@iki.fi>
11337
11338         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
11339         compensate for LineTo() not drawing the end pixel. It causes more
11340         harm than benefits, see bug #81895.
11341
11342 2003-03-08  Matthias Clasen  <maclas@gmx.de>
11343
11344         Bug #107664 continued:
11345
11346         * gdk/x11/gdkinputprivate.h: 
11347         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
11348         (_gdk_input_other_event): Return gboolean.
11349         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
11350         (_gdk_input_other_event): Return gboolean.
11351         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
11352
11353         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
11354         gboolean, remove pointless call to _gdk_input_window_none_event.
11355
11356         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
11357         (_gdk_input_window_none_event): Remove.
11358
11359         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
11360         (_gtk_text_iter_get_any_segment): 
11361         (_gtk_text_iter_get_segment_byte): 
11362         (_gtk_text_iter_get_segment_char): 
11363         (_gtk_text_iter_get_text_line): 
11364         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
11365         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
11366         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
11367         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
11368         (gdk_window_get_origin): 
11369         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
11370
11371 2003-03-06  Matthias Clasen  <maclas@gmx.de>
11372
11373         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
11374         (#107664, Morten Welinder)
11375
11376         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
11377         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
11378         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
11379         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
11380
11381         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
11382         * gtk/gtkeditable.c (gtk_editable_get_chars): 
11383         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
11384         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
11385         (#107648, Morten Welinder)Fix NULL/FALSE confusion
11386         (#107648, Morten Welinder)
11387
11388 2003-03-04  Matthias Clasen  <maclas@gmx.de>
11389
11390         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
11391
11392 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
11393
11394         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
11395         handle rtl code.  Thanks to Matthias Clasen for an initial patch
11396         to handle the RTL code.
11397
11398         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
11399
11400         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
11401
11402         * gtk/gtktreeview.c: (invalidate_column),
11403         (invalidate_last_column),
11404         (gtk_tree_view_get_real_requested_width_from_column),
11405         (gtk_tree_view_size_allocate_columns),
11406         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
11407         (gtk_tree_view_button_release_drag_column),
11408         (gtk_tree_view_update_current_reorder),
11409         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
11410         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
11411         (gtk_tree_view_get_background_xrange),
11412         (gtk_tree_view_get_arrow_xrange),
11413         (gtk_tree_view_is_expander_column),
11414         (gtk_tree_view_set_column_drag_info),
11415         (gtk_tree_view_move_cursor_left_right):
11416         Add RTL support.
11417
11418         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
11419         expand flag.
11420
11421         * gtk/gtktreeviewcolumn.c:
11422         (gtk_tree_view_column_class_init),
11423         (gtk_tree_view_column_set_property),
11424         (gtk_tree_view_column_get_property),
11425         (gtk_tree_view_column_set_expand),
11426         (gtk_tree_view_column_get_expand),
11427         (gtk_tree_view_column_cell_process_action):
11428         Add support for expand flag.  Thanks to Kristian Rietveld for an
11429         initial patch for this.
11430
11431 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
11432
11433
11434 2003-03-02  Tor Lillqvist  <tml@iki.fi>
11435
11436         * gdk/gdk.def
11437         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
11438         Gustin.
11439
11440 2003-03-01  Matthias Clasen  <maclas@gmx.de>
11441
11442         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
11443         (gtk_scrolled_window_set_hadjustment): Replace uses of
11444         gtk_object_new by g_object_new.
11445
11446 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
11447
11448         * demos/gtk-demo/main.c
11449         * demos/gtk-demo/tree_store.c
11450         * gdk/x11/gdkscreen-x11.c
11451         * gtk/gtkcellrenderertoggle.c
11452         * gtk/gtkcolorsel.c
11453         * gtk/gtkdnd.c
11454         * gtk/gtkeditable.c
11455         * gtk/gtkentry.c
11456         * gtk/gtkmenu.c
11457         * gtk/gtkmenubar.c
11458         * gtk/gtkmenuitem.c
11459         * gtk/gtkmenushell.c
11460         * gtk/gtkrc.c
11461         * gtk/gtksettings.c
11462         * gtk/gtkstyle.c
11463         * gtk/gtktextbuffer.c
11464         * gtk/gtktextview.c
11465         * gtk/gtktreeviewcolumn.c
11466         * tests/testgtk.c
11467         * tests/testtext.c
11468         * tests/testtreeedit.c
11469         * tests/testtreefocus.c
11470         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
11471
11472 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
11473
11474         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
11475         code.
11476
11477 2003-02-24  Sven Neumann  <sven@gimp.org>
11478
11479         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
11480
11481 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
11482
11483         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
11484
11485 2003-02-20  Matthias Clasen  <maclas@gmx.de>
11486
11487         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
11488         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
11489
11490         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
11491         (gtk_text_view_update_adjustments): Make sure cursor stays visible
11492         during horizontal scrolling.  (#75270)
11493
11494 2003-02-19  Matthias Clasen  <maclas@gmx.de>
11495
11496         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
11497         counterparts. (#106532)
11498
11499         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
11500         keys_changed virtual function with the keys_changed signal.
11501         (#106512, Jeff Franks)
11502
11503 2003-02-15  Larry Ewing  <lewing@ximian.com>
11504
11505         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
11506
11507 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
11508
11509         * po/id.po: Added Indonesian translation
11510         * configure.in: Added "id" to ALL_LINGUAS
11511
11512 2003-02-14  Matthias Clasen  <maclas@gmx.de>
11513
11514         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
11515
11516 2003-02-12  Christian Rose  <menthos@menthos.com>
11517
11518         * configure.in: Added "yi" to ALL_LINGUAS.
11519
11520 2003-02-12  Matthias Clasen  <maclas@gmx.de>
11521
11522         Fix for #82734 and #78216:
11523         
11524         * gtk/gtktextview.c (delete_cb): 
11525         (select_all_cb): New callbacks for context menu items.
11526         (popup_targets_received): Add "Delete" and "Select All" to context
11527         menu, mnemonics and title caps for all items.
11528
11529         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
11530         context menu item.
11531         (popup_targets_received): Add "Delete" to context menu, mnemonics
11532         and title caps for all items.
11533
11534 2003-02-09  Tor Lillqvist  <tml@iki.fi>
11535
11536         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
11537         GetDriveType() to recognize removable drives (in order to avoid
11538         hanging if trying to access an empty floppy drive), instead of
11539         hardcoding A: and B: (#105654).
11540
11541 2003-02-09  Matthias Clasen  <maclas@gmx.de>
11542
11543         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
11544         names.  (#57680)
11545
11546 2003-02-09  Christian Rose  <menthos@menthos.com>
11547
11548         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
11549
11550 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
11551
11552         * gtk/gtkobject.c: remove quark_user_data usage in
11553         gtk_object_{g|s}et_user_data(). fixes get_user_data()
11554         returning NULL for user_data set through property interface.
11555
11556         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
11557         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
11558         need to be a programming error (in case of loaded data), (b) it breaks
11559         with 2.0 behaviour where extra magic could be used to create empty
11560         images. don't attempt to retrieve pixbufs from NULL extra_data.
11561
11562 2003-02-06  Matthias Clasen  <maclas@gmx.de>
11563
11564         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
11565         a GdkVisual *, not a GdkVisual **.  (#105243)
11566
11567         * gtk/gtkclist.c: 
11568         * gtk/gtkctree.c: 
11569         * gtk/gtkcontainer.c: 
11570         * gtk/gtkdnd.c: 
11571         * gtk/gtkentry.c: 
11572         * gtk/gtklist.c:
11573         * gtk/gtkmenu.c:
11574         * gtk/gtkmenuitem.c:
11575         * gtk/gtknotebook.c:
11576         * gtk/gtkselection.c:
11577         * gtk/gtkspinbutton.c:
11578         * gtk/gtktext.c:
11579         * gtk/gtktextview.c:
11580         * gtk/gtktooltips.c:
11581         * gtk/gtktreeview.c:
11582         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
11583         their non-deprecated GLib counterparts.
11584         
11585         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
11586         
11587 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
11588
11589         * docs/tutorial/gtk-tut.sgml: cleanups from
11590         Sebastian Rittau (#104832)
11591
11592 2003-02-01  Tor Lillqvist  <tml@iki.fi>
11593
11594         Merge from stable:
11595
11596         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
11597         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
11598         (#104108, Naofumi Yasufuku)
11599
11600         * gdk/gdk.def: Export the above. Export
11601         gdk_screen_get_system_visual, noticed by Ed Woods.
11602
11603 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
11604
11605         * demos/pixbuf-demo.c
11606         * demos/testpixbuf.c
11607         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
11608
11609 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
11610                                                                                 
11611         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
11612         on the tab_label before unparenting it, in case the unparent
11613         drops the refcount to 0.
11614
11615 2003-02-01  Matthias Clasen  <maclas@gmx.de>
11616
11617         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
11618         headers. Sorry about gtk_selection_clear, Yosh.
11619
11620 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
11621
11622         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
11623         too, for gtkwidget.c. Remember people, when introducing new
11624         deprecations, make sure internal code isn't using it, or if so,
11625         reorganize appropriately like I've done in other places.
11626
11627         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
11628
11629 2003-01-31  Matthias Clasen  <maclas@gmx.de>
11630
11631         * gtk/gtkselection.h: 
11632         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
11633
11634         * gdk/gdkpixbuf.h: 
11635         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
11636         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
11637
11638         * gtk/gtkcolorsel.h:
11639         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
11640         Deprecate.  (#98167)
11641
11642         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
11643
11644         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
11645         and gtk_input_* functions.  (#71596)
11646         
11647         * gtk/gtkentry.c (gtk_entry_move_cursor): 
11648         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
11649         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
11650
11651         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
11652
11653         * gtk/gtkitemfactory.h: 
11654         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
11655         (#69244)
11656
11657 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
11658
11659         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
11660         only count the special cell if it is also visible,
11661         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
11662         account from visible cells,
11663         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
11664         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
11665         tracking bug was #104563).
11666         
11667 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
11668
11669         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
11670         subtract expander space and focus line space from the extra space
11671         we are about the allocate. (Fixes #104635).
11672
11673 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
11674
11675         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
11676         (Fixes #96242, patch from Soeren Sandmann).
11677
11678 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
11679
11680         * gtk/gtknotebook.c: Patch from Soeren Sandmann
11681         to update the states of the tab label child
11682         widgets to match the state of the tabs. 
11683         (#93389, Reported by Tommi Komulainen)
11684
11685 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
11686
11687         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
11688         EXTRA_DIST, and from dist rules. (#102231)
11689
11690 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
11691
11692         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
11693         function that sets the icon's and label's packing options and
11694         visibility based on toolbar->style.
11695
11696         (gtk_toolbar_internal_insert_element):
11697         (gtk_real_toolbar_style_changed): Make use of
11698         set_child_packing_and_visibility() to clean up the code and get
11699         the packing right for icon-only/text-only toolbars. (#104679)
11700
11701         (get_first_child): Remove, and use gtk_bin_get_child() instead.
11702
11703 2003-01-30  Matthias Clasen  <maclas@gmx.de>
11704
11705         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
11706         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
11707
11708         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
11709         
11710 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
11711
11712         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
11713         attempt-to-allocate then free code. To handle multiple
11714         people allocating colors at the same time, we need
11715         to just go ahead and try. (#102213, Shivram U)
11716         
11717 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
11718
11719         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
11720         rectangle using the background color rather than relying on
11721         gdk_window_clear_area(), so that the palette works properly with
11722         pixmap themes. (#101732)
11723
11724         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
11725         to fill the drawing area in the background color.
11726
11727 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
11728
11729         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
11730         initialization error for selecting input style (#103549).
11731
11732 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
11733
11734         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
11735         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
11736         (#101225)
11737
11738 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
11739
11740         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
11741         Make up from the menu bar go to the end of the submenu.
11742         (#96114, Ian Peters.)
11743
11744         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
11745         Only do the select-but-not-activate stuff if the
11746         menu is already active. Otherwise, just activate.
11747         (#101690, Arvind Samptur)
11748
11749 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
11750
11751         * autogen.sh (have_automake): Fix version in complaint
11752         message about automake. (#104366, Rich Burridge)
11753
11754 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
11755
11756         * configure.in: Remove SOEXT stuff; it doesn't work portably.
11757
11758 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
11759
11760         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
11761         we appended/prepended, send the rows_reordered signal to the 
11762         correct level ... (Reported by Matthew Tuck).
11763
11764 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
11765
11766         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
11767         out if the level only has one item, recurse over the child if there
11768         is one. (Fixes #100458, reported by Gaël Le Mignot).
11769
11770 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
11771
11772         * gtk/gtktreeview.c (gtk_tree_view_set_model),
11773         (gtk_tree_view_search_equal_func): make TreeView search handle
11774         all types which are transformable by GValue. (Fixes #99803, reported
11775         by Muktha Narayan).
11776
11777 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
11778
11779         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
11780         *really* handle unsetting the ID. Slightly modified patch from
11781         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
11782
11783 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
11784
11785         Fixes the total GtkTreeSortable mess, and #83195, reported by
11786         Jarek Dukat
11787
11788         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
11789         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
11790         (gtk_tree_store_set_default_sort_func): use the constant
11791         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
11792         work as advertised by the documentation.
11793
11794         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
11795         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
11796         (gtk_list_store_set_default_sort_func): likewise.
11797
11798         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
11799         (gtk_tree_model_set_sort_func),
11800         (gtk_tree_model_sort_set_default_sort_func): make functions work
11801         as advertised by the documentation.
11802
11803 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
11804
11805         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
11806         before we decide if we edit. (fixes #100973, reported by Dave Cook).
11807
11808 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
11809
11810         Bug report and test case from Paolo Maggi via IRC.
11811
11812         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
11813         (gtk_list_store_move): update tail if needed.
11814
11815 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
11816
11817         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
11818         might be NULL. Use gtk_widget_get_display (widget) 
11819         (#102860, Thomas Leonard)
11820
11821 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
11822
11823         * configure.in: Fix --without-modules/--disable-modules
11824         confusion that was causing --disable-modules not to work.
11825         (#102865, Akira Tagoh)
11826
11827         * configure.in: Fix problem with plain --with-xinput
11828         (#104266, Akira Tagoh)
11829
11830 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
11831
11832         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
11833         patch.
11834
11835 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
11836
11837         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
11838
11839 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
11840
11841         * docs/faq/gtk-faq.sgml: Learn to spell Library
11842
11843 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
11844         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
11845
11846            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
11847            Composite widget" to modern standards. (I.e. use gobject instead of
11848            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
11849
11850         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
11851         code in Appendix C to reflect above changes.
11852
11853         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
11854         auto resize on page size change
11855
11856 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
11857
11858         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
11859         in addition to show_all in order to keep them symmetric. (#102201)
11860
11861 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
11862
11863         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
11864         the end of the function, so there is a statement following the "out"
11865         label in all cases (fixes #101961)
11866
11867 2003-01-22  Christian Rose  <menthos@menthos.com>
11868
11869         * configure.in: Added "mn" to ALL_LINGUAS.
11870
11871 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
11872  
11873         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
11874         Fix off-by-one error on the backward iteration loop,
11875         that was causing the wrong range to be redrawn.
11876         (at least part of #72734)
11877         
11878 2003-01-21  Matthias Clasen  <maclas@gmx.de>
11879
11880         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
11881         vadjustment value after changing its bounds.  (fixes #101963 and 
11882         #73562)
11883
11884         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
11885         unnecessary roundtrip failures.  (#93500)
11886
11887 2003-01-19  Tor Lillqvist  <tml@iki.fi>
11888
11889         Merge from stable:
11890         
11891         Fix for #103614 and some other problems with GtkFileSelection on
11892         Windows:
11893                 
11894         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
11895         g_ascii_tolower(). Windows file names are case-insensitive for all
11896         Unicode letters.
11897
11898         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
11899         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
11900         earlier, as it includes config.h unconditionally, and gtkprivate.h
11901         redefines GTK_LOCALEDIR.
11902         (struct _CompletionDirSent): Ifdef out the fields not used on
11903         Windows.
11904         (compare_utf8_filenames, compare_sys_filenames): Need different
11905         comparison implementation for UTF-8 file names and system locale
11906         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
11907         need to casefold all Unicode letters.
11908         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
11909         variables not used on Win32 to avoid warnings about unused
11910         variables.
11911         (open_ref_dir): Use g_path_skip_root() to skip past potential
11912         drive letter in front of the leading (back)slash.
11913         (open_new_dir): Ifdef out use of CompletionDirSent fields not
11914         there on Win32.
11915         (correct_parent): Bypass inode check also on Cygwin.
11916
11917         Fix bug noticed by Alex Shaduri: Tooltips and other
11918         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
11919         was a regression from earlier versions.
11920         
11921         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
11922         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
11923         (gdk_window_move, gdk_window_resize): Add debug logging.
11924
11925         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
11926         WM_SIZE message for a non-visible (withdrawn) window, don't clear
11927         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
11928         even if its size changes.
11929
11930 2003-01-16  Matthias Clasen  <maclas@gmx.de>
11931
11932         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
11933         (totally_invisible_line): Fix an incorrect optimization which
11934         caused invisible paragraphs to be occasionally misrendered.
11935
11936 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
11937
11938         * gtk/gtksettings.c: Set the double click speed from
11939         XSETTINGS when creating a new GtkSettings object
11940         as well as when getting a notify. (#103601, reported
11941         by Louis Garcia)
11942
11943 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
11944  
11945         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
11946         Show/hide the notebook event window as necessary,
11947         we weren't previously keeping the visibility updated
11948         properly.  (#103599)
11949  
11950 2003-01-15  Matthias Clasen  <maclas@gmx.de>
11951
11952         * examples/menu/itemfactory.c: 
11953         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
11954         example.  (#103211)
11955
11956 2002-12-29  Murray Cumming  <murrayc@usa.net>
11957
11958         Fixes #102168.
11959
11960         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
11961         Actually implement the GtkTreeDragSource::row_draggable virtual 
11962         function in GtkListStore and GtkTreeStore instead of just checking 
11963         whether it's implemented at all. This means that DnD isn't broken by
11964         gtkmm's virtual function wrappers. The alternative would be to
11965         hard-code the TRUE return value into gtkmm's wrappers, but that's 
11966         part of GTK+'s implementation, not it's API.
11967
11968 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
11969
11970         * gtk/gtktreeview.c: fix compiler warning.
11971
11972 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
11973
11974         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
11975         make sure exposed pixbufs are clipped to the exposed area before
11976         drawing, which is a slight speedup. (#102379, patch from Soeren
11977         Sandmann).
11978
11979 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
11980
11981         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
11982         only free scroll_to_path when the complete tree has been validated.
11983         This makes sure that we scrolled to the correct path.
11984
11985 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
11986
11987         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
11988         background of widget->window and bin->window. (Fixes #96650, reported
11989         by Dave Camp).
11990
11991 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
11992
11993         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
11994         updates before scrolling, avoiding a "selection streak". (Fixes
11995         #101235, patch from Soeren Sandmann).
11996
11997 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
11998
11999         * gtk/gtktreeview.c (validate_visible_area): actually put values
12000         in the requisition using gtk_widget_size_request. (Fixes #100172,
12001         reported by Kjartan Maraas).
12002
12003 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
12004
12005         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
12006         arrow animation timeout before we actually reorder the rbtree. If
12007         we don't do this we can get stuck arrows,
12008         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
12009         reported and testcase provided by Hans Petter Jansson).
12010
12011 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
12012
12013         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
12014         anchor_path should be start_path, not end_path. (Fixes #102618,
12015         patch from Carlos Garnacho Parro).
12016
12017 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
12018
12019         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
12020         only correct new_pos if we don't move to the head/tail.
12021
12022 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
12023
12024         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
12025         the parent_iter if depth >= 1, so we send the reordered signal to
12026         the correct level, remove debugging printfs which I forgot the remove
12027         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
12028         testcase provided by Matthew Tuck).
12029
12030 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
12031
12032         * gtk/gtktreeview.c (invalite_last_column): split out actual column
12033         invalidation into invalidate_column(),
12034         (gtk_tree_view_size_allocate_columns): invalidate column if the
12035         new width is larger than the old width.
12036         (fixes #102890, reported by Alex Duggan).
12037
12038 2003-01-14  Matthias Clasen  <maclas@gmx.de>
12039
12040         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
12041         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
12042         GTK_MOVEMENT_WORDS.
12043
12044         * gtk/gtktextiter.c,
12045         gtk/gtktextiter.h: Add some variant movement functions which
12046         skip invisible chars, and do some cleanups.
12047
12048 2003-01-12  Tor Lillqvist  <tml@iki.fi>
12049
12050         Merge from stable:
12051                 
12052         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
12053         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
12054         lookup.
12055
12056         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
12057         gdk.def.
12058
12059         * gdk/gdk.def
12060         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
12061
12062         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
12063         gtk-demo}.exe and share/gtk-2.0.
12064
12065         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
12066         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
12067         window style.
12068         (gdk_window_set_type_hint): Add all cases to the switch (not all
12069         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
12070         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
12071         won't know that the skip_taskbar hint is on for the window, is
12072         this bad?
12073
12074 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
12075
12076         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
12077         <string.h> for strlen.
12078
12079         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
12080         <string.h> for strrchr.
12081
12082         * tests/testgtk.c (create_saved_position): "x" and "y" properties
12083         for widgets no longer exist, use gtk_window_move instead.
12084
12085         * test/testtextbuffer.c (check_get_set_text): cast strlen to
12086         int for g_error.
12087
12088 2003-01-08  Matthias Clasen  <maclas@gmx.de>
12089
12090         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
12091         the selection in the presence of invisible segments.
12092
12093 2003-01-07  Matthias Clasen  <maclas@gmx.de>
12094
12095         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
12096         to "select all" and "unselect all".  (#102065)
12097
12098         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
12099         the just_selected_element is unused.
12100
12101         * gtk/gtktextview.c (extend_selection): New helper function to
12102         find the range that should be added to the selection. 
12103         (selection_motion_event_handler): 
12104         (gtk_text_view_start_selection_drag): 
12105         (gtk_text_view_end_selection_drag): 
12106         (selection_motion_event_handler): 
12107         (selection_scan_timeout): Support select-by-words/lines.
12108         (gtk_text_view_button_press_event): Start a selection drag on
12109         double/triple clicks.  (#78499)
12110
12111 2003-01-06  Matthias Clasen  <maclas@gmx.de>
12112
12113         Implement a utility function proposed in #102534:
12114         
12115         * gtk/gtktextbtree.h: 
12116         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
12117         (_gtk_text_btree_place_cursor): Now a simple wrapper around
12118         _gtk_text_btree_select_range().   
12119
12120         * gtk/gtktextbuffer.h: 
12121         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
12122         (gtk_text_buffer_place_cursor): Now a simple wrapper around
12123         gtk_text_buffer_select_range(). 
12124
12125 2003-01-05  Havoc Pennington  <hp@pobox.com>
12126
12127         * configure.in: fix a stray bracket that was breaking the build
12128
12129 2003-01-05  Tor Lillqvist  <tml@iki.fi>
12130
12131         * gtk-zip.sh.in: Use correct DLL and import library names, with
12132         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
12133         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
12134
12135         * configure.in: Improve check for dimm.h.
12136
12137         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
12138         gdk-pixbuf/Makefile.am.
12139
12140         * gdk-pixbuf/makefile.mingw.in
12141         * gdk-pixbuf/pixops/makefile.mingw.in
12142         * gdk/makefile.mingw.in
12143         * gdk/win32/makefile.mingw.in
12144         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
12145
12146         * gdk-pixbuf/Makefile.am
12147         * gdk-pixbuf/pixops/Makefile.am
12148         * gdk/Makefile.am
12149         * gdk/win32/Makefile.am
12150         * gtk/Makefile.am
12151         * configure.in: Remove makefile.mingw{,.in} from here, too.
12152         
12153         * README.win32: Updates. Don't mention the now removed
12154         makefile.mingw files.
12155
12156         * gdk/gdk.def
12157         * gtk/gtk.def: Add a couple of missing entries.
12158
12159         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
12160
12161         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
12162         earlier.
12163
12164         * gdk/win32/rc/Makefile.am: Add hack to help
12165         build/win32/lt-compile-resource decide which kind of libtool
12166         object file to produce.
12167
12168 2003-01-05  Matthias Clasen  <maclas@gmx.de>
12169
12170         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
12171         C-Down step through the sequence of paragraph ends (old behaviour
12172         included paragraph starts).  (#80340, patch by Narayana Pattipati)
12173
12174         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
12175         Check for a tag toggle at the start iterator before calling
12176         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
12177         Elstner)
12178
12179 2003-01-04  Matthias Clasen  <maclas@gmx.de>
12180
12181         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
12182         and /*< private >*/ as appropriate.  (#97211)
12183
12184 2003-01-04  Tor Lillqvist  <tml@iki.fi>
12185
12186         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
12187         distribute gtk-zip.sh.in.
12188
12189         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
12190
12191 2003-01-03  Havoc Pennington  <hp@pobox.com>
12192
12193         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
12194
12195         * docs/text_widget_internals.txt: add a file documenting some of
12196         the text widget internals
12197
12198 2003-01-02  Matthias Clasen  <maclas@gmx.de>
12199
12200         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
12201         return NULL.  (#102069)
12202
12203 2003-01-01  Matthias Clasen  <maclas@gmx.de>
12204
12205         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
12206         a main() in the library is obviously bad. 
12207
12208 2002-12-27  Matthias Clasen  <maclas@gmx.de>
12209
12210         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
12211         cursor at drop point.  (#72384)
12212         (gtk_text_view_size_allocate): Update the horizontal adjustment
12213         value.  (#75694)
12214
12215 2002-12-25  Matthias Clasen  <maclas@gmx.de>
12216
12217         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
12218         selection wrt. to empty lines.  (#90435, #90582, #91619)
12219
12220         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
12221         Keep the cursor on screen.  (#96929)
12222
12223 2002-12-24  Matthias Clasen  <maclas@gmx.de>
12224
12225         * gtk/gtktextbuffer.c (paste_from_buffer): 
12226         (clipboard_text_received): Let the user action span the insertion
12227         and the deletion of the old selection.  (#82844)
12228
12229 2002-12-23  Matthias Clasen  <maclas@gmx.de>
12230
12231         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
12232         Don't call gtk_text_iter_backward_sentence_start() if
12233         count is zero.  (#99115)
12234
12235         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
12236         move_cursor() even if the cursor hasn't moved, since it has the
12237         side effect of canceling the selection.  (#81395, #98537, #98333)
12238
12239 2002-12-22  Matthias Clasen  <maclas@gmx.de>
12240
12241         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
12242         with empty ranges.  (fixes #101564 and #80637)
12243
12244 2002-12-21  Tor Lillqvist  <tml@iki.fi>
12245
12246         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
12247         sets the window style and extended window style, and adjusts the
12248         width and height to take the window decorations into account
12249         earlier. The adjusted width and height used to be ignored. Remove
12250         the local x, y, width and height variables, no need to further
12251         confuse the code by having local copies. (Partial fix, I hope, for
12252         #101588)
12253
12254         (gdk_window_move): When moving top-level windows, take title bar
12255         and border width into account, offsetting the coordinates before
12256         calling SetWindowPos().
12257
12258         (gdk_window_set_decorations, gdk_window_set_functions):
12259         Reimplement, taking into account the peculiar semantics of
12260         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
12261
12262         (gdk_window_get_decorations): Implement. (#98981)
12263         
12264         (gdk_window_set_type_hint): When setting
12265         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
12266         (#79036)
12267
12268         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
12269
12270 2002-12-21  Matthias Clasen  <maclas@gmx.de>
12271
12272         * gtk/gtktextview.c (gtk_text_view_set_background): New static
12273         function to set the background of all windows.
12274         (gtk_text_view_style_set): Use gtk_text_view_set_background().
12275         (gtk_text_view_state_changed): New function; change background
12276         according to state.  (#88126)
12277
12278 2002-12-21  Havoc Pennington  <hp@pobox.com>
12279
12280         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
12281