Mon May 10 23:04:25 2004 Soeren Sandmann * gtk/gtkwidget.h: Add prototype for _gtk_widget_grab_notify() 2004-05-10 Matthias Clasen * gdk/gdkdisplay.c (singlehead_...): * gdk/x11/gdkkeys-x11.c (get_effective_keymap): * gdk/x11/gdkgeometry-x11.c (expose_serial_predicate): * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Make static. * gtk/gtktreeview.c (gtk_tree_view_set_fixed_height_mode): Add a note about COLUMN_FIXED restriction. * gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press): Set the entry in the default handler of the ::match-selected signal. (#137226) * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): If we don't do the move-selected-item below pointer thingie, do the place-below-or-above one. * tests/testentrycompletion.c: Make the second example use the ::match-selected signal to make it actually work. * gtk/gtkentrycompletion.c (gtk_entry_completion_init): * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use hover selection mode. (#127648, Dave Bordoley) * gtk/gtktreeview.h: * gtk/gtktreeview.c: Add a new property "hover_selection", which when TRUE makes the selection follow the mouse. Also add setter and getter for the fixed_height property. 2004-05-10 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_popup) (gtk_combo_box_menu_button_press): Make sure the menu pops up as wide as the combobox. (#59660, Havoc Pennington) 2004-05-10 Matthias Clasen * gtk/gtkcombobox.h: * gtk/gtkcombobox.c: Support tearoffable combo boxes (in menu mode). Add a new property, add-tearoffs, for this. (#135956) * gtk/gtkfontsel.c (list_row_activated): Make Return activate the default button. (#118921) Mon May 10 15:03:50 2004 Soeren Sandmann * gtk/gtkwidget.c (_gtk_widget_grab_notify): New internal function that emits the grab notify signal. * gtk/gtkmain.c (gtk_grab_notify_foreach): Use it here. Mon May 10 00:48:08 2004 Matthias Clasen * gtk/gtkmenu.c: Make destruction of a torn off menu work like un-tearing off. Sun May 9 21:05:38 2004 Matthias Clasen Merge from 2.4: * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): Allow to suppress the stock accelerator by using "". (#142196, David A Knight) Sun May 9 02:01:13 2004 Matthias Clasen Merge from 2.4: * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): In list mode, accept the same mouse/wheel bindings on the cellview as on the button. (#136967) Sun May 9 01:25:37 2004 Matthias Clasen * gtk/gtkiconfactory.c (add_to_cache): Actually count the cached icons. (#135888, Crispin Flowerday) Sun May 9 00:03:03 2004 Matthias Clasen * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Make sure that we actually return menus for nodes of type menu, not the menuitems they're attached to. Sat May 8 22:50:55 2004 Matthias Clasen * gtk/gtkactiongroup.c (gtk_action_group_set_translation_domain): Add a note regarding UTF-8 requirements, proposed by Mariano Suárez-Alvarez. Sat May 8 22:43:11 2004 Matthias Clasen * gtk/gtktearoffmenuitem.h: * gtk/gtktearoffmenuitem.c: Put the torn_off flag back into the GtkTearoffMenuItem struct, since it is used by the Gimp, and keep it synchronized with the tearoff_state property of the parent menu. 2004-05-08 Hans Breuer * gtk/gtkfilesystemwin32.c (extract_icon) : finally also create the correct mask for 'pseudo mime' icons * gdk/win32/gdkwindow-win32.c(show_window_internal) : also take focus_on_map into account * gtk/gtkselection.c : g_message() only with DEBUG_SELECTION * gtk/gtkactiongroup.c gtk/gtkcombobox.c : ... must return a value * gdk/gdk.def gtk/gtk.def demos/gtk-demo/makefile.msc.in : updated 2004-05-07 Matthias Clasen * gtk/gtkbutton.c (gtk_button_size_allocate): Don't let the child draw over the focus rectangle. * gtk/gtkhsv.c: Draw focus indication in the color wheel using standard focus style. (#63071, Bill Haneman, idea for new style by Owen Taylor) * gtk/gtkstyle.c (gtk_default_draw_focus): Support drawing on focus on the colorwheel via details. 2004-05-06 Matthias Clasen Merge from 2.4: * gtk/gtkcombobox.c (gtk_combo_box_menu_state_changed): Remove this no longer needed signal handler. (#141817, Paul Pogonyshev) Fri May 7 00:41:46 2004 Matthias Clasen * gtk/gtktearoffmenuitem.h: * gtk/gtktearoffmenuitem.c: Make the tearoff functionality model/view, the tearoffmenuitem being the view and the tearoff_state property of the menu being the model. (#101185, Owen Taylor) * gtk/gtkmenu.c: Add a tearoff_state property. Thu May 6 23:52:13 2004 Matthias Clasen Merge from 2.4: * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Also popup the submenu for items in torn off menus. (#122051) 2004-05-06 Sven Neumann * gtk/gtkexpander.c (gtk_expander_size_allocate): in RTL mode, position the title lable next to the arrow just as we do for LTR rendering. Fixes bug #141825. 2004-05-06 Matthias Clasen * docs/RELEASE-HOWTO: Document the new policy of bumping version numbers after release. * configure.in: Bump version number to 2.5.0. 2004-05-06 Padraig O'Briain * gtk/gtkmenu.h: * gtk/gtkmenu.c: Add new function gtk_menu_get_for_attach_widget. (bug #113112). Thu May 6 00:24:11 2004 Matthias Clasen * gtk/gtkactiongroup.h: * gtk/gtkactiongroup.c (gtk_action_group_translate_string): New function to translate a string with translate_func. (#135740) Thu May 6 00:02:21 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_get_wrap_width): (gtk_combo_box_get_row_span_column): (gtk_combo_box_get_column_span_column): Add missing getters for readwrite properies. (#135649) Wed May 5 23:42:42 2004 Matthias Clasen * gtk/gtkcombobox.h: * gtk/gtkcombobox.c (gtk_combo_box_get_active_text): Add gtk_combo_box_get_active_text() convenience function. (#136372, Christian Neumeir, patch by Olivier Andrieu) 2004-05-05 Elijah Newren Changes to support do-not-focus-on-map hint in conjunction with _NET_WM_USER_TIME (#115650): * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean field focus_on_map * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to set it. * gtk/gtkwindow.[hc]: Add a boolean property "focus_on_map" and gtk_window_get_focus_on_map() and gtk_window_set_focus_on_map(). * gdk/win32/gdkwindow-win32.c (gdk_window_new): * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): * gdk/x11/gdkwindow-x11.c (gdk_window_new): Initialize the focus_on_map field to TRUE. * gdk/win32/gdkwindow-win32.c (gdk_window_set_focus_on_map): * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_focus_on_map): * gdk/x11/gdkwindow-x11.c (gdk_window_set_focus_on_map): * gdk/x11/gdkwindow-x11.c (setup_toplevel_window): Implementations for the various backends. The Win32 and linux-fb implementations set the focus_on_map field, but don't use it yet to actually implement noinput windows. The X implementation sets _NET_WM_USER_TIME to 0 if focus_on_map is FALSE (see the EWMH). * gdk/x11/gdkwindow-x11.h: * gdk/x11/gdkevents-x11.c (set_user_time): * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): s/_gdk_x11_window_set_user_time/gdk_x11_window_set_user_time/, since we want that function to be part of the public API. Wed May 5 22:20:21 2004 Matthias Clasen Merge from 2.4: * gtk/gtkiconfactory.c (icon_source_clear): Don't call g_free() on a pixbuf. (#141961, Crispin Flowerday) 2004-05-05 Matthias Clasen Merge from 2.4: * gtk/gtkuimanager.c (print_node): Make the output parseable. (#141929, Sven Neumann) 2004-05-05 Tor Lillqvist * gdk/win32/gdkdnd-win32.c (gdk_drag_find_window_for_screen): Add multi-monitor offset. (#141842, John Ehresman) 2004-05-04 Federico Mena Quintero Fixes #139562, based on a patch by Christian Neumair. * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add a filter_combo_hbox field to contain the filter combo. (show_filters): Show/hide the filter_combo_hbox. (create_filename_entry_and_filter_combo): Removed. (file_pane_create): Create the filter_combo_hbox here. 2004-05-04 Matthias Clasen * modules/input/gtkimcontextxim.c: Fix the recent string_conversion_callback change to work on Solaris. (#141190, Padraig O'Briain) * gtk/gtkselection.c: Disable debug logging again. 2004-05-03 Matthias Clasen * gtk/gtkselection.c: Make the chunk size for incremental transfers depend on the maximal request size, capped at 256k. This should allow most selections to be transferred nonincrementally, avoiding many roundtrips and protocol overhead. 2004-05-03 Federico Mena Quintero * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Call g_signal_new() correctly and initialize the signal fields. Fixes #141749; patch based on Michael Natterer's. u2004-05-03 Matthias Clasen * gtk/gtkselection.c (_gtk_selection_request): Fix a debug message to show correct information. (_gtk_selection_incr_event): Make INCRemental transfer of MULTIPLE targets work. This was broken since 1997! 2004-05-02 Hans Breuer * gdk/win32/gdkdrawable-win32.c (draw_segments) : don't modify the passed in GdkSegment(s) in place, we may get them again to draw at the same place. Fixes bug #129095, bug #137177, ... (draw_segments) draw the end pixel again to get the pixmap mask right, fixes bug #126710, #130202 * gdk/win32/gdkwindow-win32.c : use SetForegroundWindow, fixes bug #106013, John Ehresman * gtk/makefile.msc.in : don't try to link gtk.res but use gtk-win32.res (as supposed to be fixed below :) 2004-05-01 Hans Breuer * tests/Makefile.am : tests/makefile.msc is in CVS for a long time, finally added to EXTRA_DIST : fixes bug #141334, John Ehresman 2004-04-30 Matthias Clasen * === Released 2.4.1 === * configure.in: Version 2.4.1, interface age 1. * NEWS: Updates 2004-04-29 Federico Mena Quintero Fixes #140412. * gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): New function; moved the code over from remove_bookmark_button_clicked_cb(). (remove_selected_bookmarks): Now, getting a non-removable bookmark is not an error, as we may be called as a result of hitting the Delete key. (shortcuts_key_press_event_cb): New handler; delete the bookmark if the user presses Backspace, Delete, or KP_Delete. 2004-04-29 Matthias Clasen * gtk/gtkaction.c (closure_accel_activate): Use _gtk_action_emit_activate() instead of directly emitting the activate signal. (#141429, Jody Goldberg) * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): Warn people when the accelerator can not be parsed. (#141429, Jody Goldberg) 2004-04-29 Matthias Clasen * tests/testentrycompletion.c (main): Add a missing cat. (#141070, Chris Sherlock) * gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Remove unused variable. (#141022, Chris Sherlock) * gtk/gtkcombo.c (gtk_combo_popup_list): Add a missing cast. (#141013, Chris Sherlock) * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Remove unused variable. (#141011, Chris Sherlock) 2004-04-29 Tor Lillqvist * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Plug memory leak. (#140775, John Ehresman) Thu Apr 29 01:09:50 2004 Matthias Clasen * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Use depth - 1 to index the cached gcs, not depth. (#139494) 2004-04-28 Matthias Clasen * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Docs typo fix. Sun Apr 25 15:36:02 2004 Soeren Sandmann * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget): Fix cut'n'paste-o from previous commit. (#141046, Torsten Schoenfeld). 2004-04-24 Theppitak Karoonboonyanan Patch to add support for string conversion callbacks to GtkIMContextXIM (#101814) * modules/input/gtkimcontextxim.c: Set the string conversion callback if supported by the XIC. (struct _GtkIMContextXIM): Add string_conversion_callback member. (struct _GtkXIMInfo, setup_im): Check and keep flag inidicating whether string conversion callback is supported. (gtk_im_context_get_ic, +set_string_conversion_callback, +string_conversion_callback): Also initialize string conversion callback, if supported, along with the IC initialization. * modules/input/imxim.c: Make "xim" module default for Thai as well. 2004-04-23 Matthias Clasen * gtk/gtkclipboard.c (gtk_clipboard_wait_for_targets): Correctly initialize targets. (#139883, John Finlay) * gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement. * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): Don't recommend gtk_tree_row_reference_new_proxy(). (#138309, Tim-Philipp Müller) * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_cell_data): Remove an excessive g_return_if_fail(). * gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time() static. * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): _-prefix calls of gdk_x11_window_set_user_time(). 2004-04-22 Matthias Clasen * gtk/gtkuimanager.c (update_node): Make sure the separators used to demarkate placeholder ends don't show up on show_all(). (#140496, Murray Cumming) * gtk/gtkspinbutton.c (spin_button_at_limit): Make spinbuttons work with negative increments. (#137975, Tim Gerla) Wed Apr 21 21:38:03 2004 Soeren Sandmann * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget, gtk_tool_button_set_icon_widget): Remove the old widget from the tool button before overwriting it with the new widget. (#140508, Todd Goyen) 2004-04-22 Tor Lillqvist Fix the file chooser on Windows. I can't make it misbehave or crash any more now. But presumably there are still corner cases not handled. I haven't really checked behaviour of UNC paths, for instance. * gtk/gtkfilesystemwin32.c: Accept both backslash and slash in several places. Use G_IS_DIR_SEPARATOR macro (which could be added to GLib in 2.6). (gtk_file_system_win32_get_parent): Like the Unix version, assert filename is absolute, and avoid one unnecessary string allocation and freeing. (canonicalize_filename,gtk_file_system_win32_parse): Handle drive letters more correctly. (gtk_file_system_win32_render_icon): Assure correct syntax is used for root folder of a drive. (#137962, Morten Welinder) (filename_is_some_root): New function that accepts also root without any drive specified. (filename_is_drive_root): Rename from filename_is_root. * gtk/gtkfilechooserentry.c (completion_match_func): Casefold on Windows. 2004-04-21 Matthias Clasen * gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the completion window if there are no completions anymore. * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Don't call gtk_tree_view_scroll_to_cell() on an empty tree view. It doesn't like that. (#140642, Christian Persch) * demos/gtk-demo/expander.c (do_expander): A new demo. * demos/gtk-demo/Makefile.am (demos): Add expander.c. 2004-04-20 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_allocate_children): Make sure anchored children get size allocated, even if the layout is valid. (#122323, Andrew E. Makeev) (gtk_text_view_scroll_pages): (gtk_text_view_scroll_hpages): Don't scroll to cursor position if we already have pending scrolls. Bandaid fix for #78513. Mon Apr 19 17:59:17 2004 Owen Taylor * INSTALL.in: Update libpng and libjpeg URLs, remove note about building without since that's not the normal case. Sun Apr 11 09:45:11 2004 Owen Taylor * gtk/gtkicontheme.c (load_themes): Fix a couple of typos in handling of SVG/non-SVG unthemed icons. 2004-04-19 Morten Welinder * gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of children. (#140523) 2004-04-19 Matthias Clasen * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): Don't stop the iteration up to the tag_root too early. (#109945, Dongho Shin) Sun Apr 18 17:06:03 2004 Soeren Sandmann * gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make gdk_keymap_translate_keyboard_state() handle NULL keymaps. (#139715, Torsten Schoenfeld). Sun Apr 18 16:59:21 2004 Soeren Sandmann * configure.in: Don't erase GDK_EXTRA_CFLAGS. Fixes bug 139586, reported by Pedro RODRIGUEZ, about compilation problems when Xcursor is installed in a non-standard location. Sun Apr 18 16:15:15 2004 Soeren Sandmann Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah Newren. * gdk/x11/gdkwindow-x11.[ch]: Add new internal function _gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property. * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of precached atoms. * gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the property on user interaction. 2004-04-15 Federico Mena Quintero * gtk/gtkfilesel.c (open_new_dir): Tell the user to use G_FILENAME_ENCODING, not G_BROKEN_FILENAMES. Fixes #114065. * gtk/gtkfilechooserdefault.c (split_uris): Use a variant of the code from gtkfilesel.c to parse a "text/uri-list" blob. Fixes #140126. 2004-04-15 Matthias Clasen * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): * gtk/gtkbutton.c (gtk_button_class_init): Doc fixes. 2004-04-14 Matthias Clasen * gtk/gtkcombobox.c: * gtk/gtkwidget.c: Make all style properties readonly. 2004-04-14 Matthias Clasen * gtk/gtkcolorsel.c: Add a11y relations between the color wheel and the spin buttons. (#132745, Padraig O'Briain) * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document the meaning of size == -1. * gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept a size of -1. (#137436, Brian Cameron) * gtk/gtkcombobox.c: Make the arrow and separator regular children of an hbox inside the button, and propagate state changes from the button to the cell view. (part of the fix for #138650, should also fix #137535) * gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT state to gtk_cell_renderer_render() when prelighted. (part of the fix for #138650) * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): Use PRELIGHT state when appropriate. (part of the fix for #138650) * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit out warnings if called before the combo box is realized. (#139742, Philip Langdale) Wed Apr 14 03:45:39 2004 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose events to children. Wed Apr 14 03:32:58 2004 Jonathan Blandford * gtk/gtkpathbar.c (make_directory_button): remove spurious gtk_box_pack_start. Tue Apr 13 16:19:23 2004 Jonathan Blandford * gtk/gtkpathbar.c (make_directory_button): patch from Owen to make the buttons sized by a bold label. This makes the text 'swim' a little, but stops the buttons from resizing, #137210 2004-04-13 Matthias Clasen * gtk/gtkuimanager.c (get_child_node): Don't crash if a node has no name. (start_element_handler): Accept separators without unique names. (#133302, Anders Carlsson) * gtk/gtkactiongroup.c (gtk_action_group_add_action): Document possible accelerator gotcha when using this function. (#139641, Christian Persch) * gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak list nodes. (#138862, Morten Welinder) Tue Apr 13 12:24:49 2004 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused variable. (gtk_tree_view_button_press): If we activated the row we don't want to grab focus back, as moving focus to another widget is pretty common, #138458 2004-04-12 Federico Mena Quintero * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added documentation to all the signals. 2004-04-12 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref model if it is NULL. (#139770) * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix. * gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add a shadow inside the scrolled window, add it around the vbox. * gtk/gtkentryprivate.h: * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Return a boolean indicating whether the popup is positioned above or below. Scroll the completions to the beginning or the end, depending on the positioning. * gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav wrap around in the entry completion popup, and allow GDK_UP to enter the popup. (#137440) 2004-04-12 Matthias Clasen * gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is there before using it. Sun Apr 11 15:08:45 2004 Jonathan Blandford * gtk/gtktreeprivate.h: Moved search entries into priv data. * gtk/gtktreeview.c: Prep for type-ahead support. (gtk_tree_view_destroy): Destroy the search window explicitly. (gtk_tree_view_key_press): Minor change; prep for type-ahead (gtk_tree_view_ensure_interactive_directory): New function (gtk_tree_view_focus_out): Rework to handle new entry life-cycle. (gtk_tree_view_real_start_interactive_search): rework (gtk_tree_view_search_dialog_hide): ditto (gtk_tree_view_search_delete_event): ditto (gtk_tree_view_search_button_press_event): ditto (gtk_tree_view_search_key_press_event): ditto (gtk_tree_view_search_move): ditto (gtk_tree_view_search_init): ditto * gtk/gtktreeviewcolumn.c: (gtk_tree_view_column_cell_layout_clear): remove unused variable. * tests/testfilechooser.c: (main): change 2004-04-11 Hans Breuer * gdk/win32/gdkspawn-win32.c : workaround for bug #137496, the real fix would involve just another small API breakage, i.e. gdk_spawn_* using GPid not just gint. * gtk/makefile.msc.in : build gtk-win32.res, not gtk.res 2004-04-10 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state): If both Shift and CapsLock pressed, ignore the shift only for letters (that would have been affected by the CapsLock). (#139095) * gdk/win32/gdkglobals-win32.c: Disable tablet support by default, seems to be even buggier now than it used to be. (#138341) Initialize _gdk_input_ignore_wintab to TRUE. * gdk/win32/gdkmain-win32.c: Add --use-wintab switch and GDK_USE_WINTAB environment variable to turn on tablet support. 2004-04-09 Christian Persch * gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group), (gtk_ui_manager_remove_action_group): Terminate g_object_[dis]connect() calls with NULL instead of 0. Fixes #138997. 2004-04-09 Guntupalli Karunakar * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS. 2004-04-07 Federico Mena Quintero Fix #132500. * gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the passed-in 'str' is not NULL. * gtk/gtkfilesystemunix.c (expand_tilde): New helper function; expands "~/" or "~foo/" at the beginning of a filename. (gtk_file_system_unix_parse): Use expand_tilde() before doing anything else. * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_maybe_update_directory): Take in a force_reload argument. (gtk_file_chooser_entry_changed): If gtk_file_system_parse() returns an error, set the file_part_pos to -1. (load_directory_callback): Only populate the model if the file_part_pos is not -1. 2004-04-06 Pablo Saratxaga * configure.in: Added Icelandic (is) to ALL_LINGUAS 2004-04-05 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a title for SAVE and CREATE_FOLDER modes. Fixes #137272. * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look for G_DIR_SEPARATOR in the display_name, and err out if it is present; use the same error message as Nautilus. Fixes #136467. * gtk/gtkfilechooserdefault.c (file_pane_create): Make the new-folder button say "Create Fo_lder" rather than "Create _Folder", so that the mnemonic doesn't conflict with the "Save in _folder" label. Fixes #136975. 2004-04-05 Federico Mena Quintero * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the buttons. Also, free them correctly upon failure. Based on a patch by Morten Welinder, fixes #137956. 2004-04-05 Anders Carlsson * gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly. Fri Apr 2 17:57:33 2004 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height correctly for fixed height when inserting a node, #138082 2004-04-01 Federico Mena Quintero Fix #136077. * gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a "child_is_hidden" boolean argument to the "path-clicked" signal. * gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden field. (make_directory_button): Take a file_is_hidden argument; put it in the ButtonData. (_gtk_path_bar_set_path): See whether each path component path is a hidden file. (gtk_path_bar_class_init): Add the file_is_hidden argument to the "path-clicked" signal. (button_clicked_cb): See if the downwards button represents a hidden file for the file_is_hidden argument in the signal emission. * gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN. * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_path): If we fail to switch folders, don't try to select the path in the file system model. Also, return the result from _gtk_file_system_model_path_do(). (gtk_file_chooser_default_select_path): Turn on show_hidden in the file system model if we are asked to select a hidden file. (path_bar_clicked): Show hidden files based on whether the immediate downwards folder in the path bar is a hidden file itself. (struct _GtkFileChooserDefault): Added fields browse_files_popup_menu and browse_files_popup_menu_hidden_files_item. (create_file_list): Set an object data key of "GtkFileChooserDefault" on the tree view so that we can find the impl from the popup menu callbacks. Also, hook up to the "button-press-event" and "popup-menu" signals in the file list to bring up a popup menu. (list_popup_menu_cb): New callback. (list_button_press_event_cb): New callback. Fix #138763: * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Oops, connect_object to "finished-loading". 2004-03-31 Tor Lillqvist * configure.in: Move AC_CANONICAL_HOST earlier, before the check for native Win32. (#136559, J. Ali Harlow) * gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for angles. Thanks to Tim Newsham. 2004-03-29 Federico Mena Quintero Fix #137520. * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots for an ::is_finished_loading() method and a ::finished_loading() signal at the end of the struct. * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the "finished-loading" signal. (gtk_file_folder_is_finished_loading): New function. * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_is_finished_loading): Implement. * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New slot for a "finished-loading" signal. (gtk_file_system_model_class_init): Create the "finished-loading" signal. (struct _GtkFileSystemModel): New field idle_finished_loading_source. We emit the "finished-loading" signal in an idle if the root folder was done loading right in _gtk_file_system_model_new(), so that the caller has a chance to connect to the signal. (_gtk_file_system_model_new): Connect to the normal signals of the folder even if the initial _list_children() fails. Also, see if the folder is finished loading; connect to the "finished-loading" signal otherwise. (gtk_file_system_model_finalize): Remove the idle handler. * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor and connect to the model's "finished-loading" signal. (get_toplevel): New helper function. (error_message): Use get_toplevel(). (trap_activate_cb): Likewise. (location_popup_handler): Likewise. (set_busy_cursor): New function. (browse_files_model_finished_loading_cb): New callback. 2004-03-25 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (check_preview_change): Just use the file under the cursor; we don't need the logic from GtkFileSelection after all. Fixes #132255. 2004-03-25 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (location_entry_create): Fill the location entry with the display name of the file under the cursor for Open mode, or the typed filename in Save mode. 2004-03-24 J. Ali Harlow * gtk/gtkfilesystemwin32.c (filename_is_root): Bare drive designators (eg., "c:") are no longer considered as root filenames. Fixed #137942 2004-03-24 J. Ali Harlow * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_create_folder): Invert test for error in mkdir. Fixes #137945 2004-03-24 J. Ali Harlow Fixed #138004 using Federico's code from #132327. * gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a folder_hash field to keep a list of live folder objects. (gtk_file_system_win32_init): Create the folder_hash. (gtk_file_system_win32_finalize): Destroy the folder_hash. (gtk_file_system_win32_get_folder): Ref and return an existing folder if we have it around, otherwise return a new folder object. (struct _GtkFileFolderWin32): Add a field for the parent file system. (gtk_file_folder_win32_finalize): Remove the folder from the file system's hash table. (gtk_file_system_win32_create_folder): Emit "files-added" on the newly-created folder's parent. Fixes #138004. 2004-03-24 J. Ali Harlow * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_get_folder): Test that path is actually a directory and throw error if not. Fixed bug #137950 2004-03-22 J. Ali Harlow * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name): Ignore empty volume labels; assume that GetVolumeInformation would fail if GetVolumeInformationW does; catches a small memory leak; pass the buffer size to GetVolumeInformationW in wide characters instead of bytes. Fixes bug #137543 (list_volumes): Cope with the theoretical possibility of more than 26 logical drives. Fixes bug #137940 (bookmarks_serialize): Now actually removes bookmarks. Fixes bug #137943 2004-03-22 Guntupalli Karunakar * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS. 2004-03-21 Tor Lillqvist * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_base_path): Include the backslash. Otherwise gtk_file_system_win32_path_to_uri() returns NULL for a volume base path, as g_filename_to_uri() requires an absolute path, and just a drive letter and colon isn't. (#137543) 2004-03-20 Hans Breuer * gtk/gtkfilesystemwin32.c : applied the undisputable and required [due to recent gtkfilesystem internal api semantic changes] part of patches to fix bug #137543 (Tor Lillqvist, J. Ali Harlow) * gdk/gdkevents-win32.c (handle_configure_event) : (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize GdkWindowObject::x, y with screen coords to make gdk_window_get_position () return the right thing and thus fix drag and drop positioning (e.g. Gimp tabs, fixes bug #137192) 2004-03-19 Federico Mena Quintero * Revert the patch to #137520, as 2.4.1 is for conservative bug fixes only. The patch is attached to the bug report, for reference. 2004-03-19 Morten Welinder * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_current_folder): Test existance of the path after checking for locality, if needed. 2004-03-19 Federico Mena Quintero Fix #137520. * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots for an ::is_finished_loading() method and a ::finished_loading() signal at the end of the struct. * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the "finished-loading" signal. (gtk_file_folder_is_finished_loading): New function. * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_is_finished_loading): Implement. * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New slot for a "finished-loading" signal. (gtk_file_system_model_class_init): Create the "finished-loading" signal. (struct _GtkFileSystemModel): New field idle_finished_loading_source. We emit the "finished-loading" signal in an idle if the root folder was done loading right in _gtk_file_system_model_new(), so that the caller has a chance to connect to the signal. (_gtk_file_system_model_new): Connect to the normal signals of the folder even if the initial _list_children() fails. Also, see if the folder is finished loading; connect to the "finished-loading" signal otherwise. (gtk_file_system_model_finalize): Remove the idle handler. * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor and connect to the model's "finished-loading" signal. (get_toplevel): New helper function. (error_message): Use get_toplevel(). (trap_activate_cb): Likewise. (location_popup_handler): Likewise. (set_busy_cursor): New function. (browse_files_model_finished_loading_cb): New callback. Thu Mar 18 12:10:45 2004 Owen Taylor * gtk/gtktreeitem.c (gtk_tree_item_forall): Include eventbox for expander. (#137564, reported by Jacques Garrigue) 2004-03-18 Guntupalli Karunakar * mr.po: Added "mr" for Marathi to ALL_LINGUAS. 2004-03-17 Morten Welinder * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free volumes not actually put into the shortcut list. * tests/prop-editor.c (object_changed): Plug leak. * tests/testfilechooser.c (main): Plug some leaks and expose others. * tests/prop-editor.c (create_prop_editor): Don't leak the tooltip object. Fixed #136652. * gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we have no screen. Fixes #137260. (shortcuts_add_bookmark_from_path): Simplify using check_is_folder thereby fixing leak. Fixes #137259. * gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the slider buttons have been destroyed. (gtk_path_bar_remove): Make this work for slider buttons too. Fixes #137257 2004-03-15 Morten Welinder * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path): Sanitize and plug leak. (check_icon_theme): Only do something if the widget has a screen. Wed Mar 17 01:20:28 2004 Matthias Clasen * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Move the repositioning logic from _gtk_entry_completion() popup over here. Fixes #137355, reported by Niklas Knutsson.