diff options
author | Anders Carlsson <andersca@gnu.org> | 2002-03-11 10:17:50 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@src.gnome.org> | 2002-03-11 10:17:50 +0000 |
commit | 9e0012f1632efe9f9fb53a9610ed223ca5fe9ac5 (patch) | |
tree | b185a698d43dfbfa4aa6b3cb13d0b12e55d9351e | |
parent | 0dc1617ed9a4f80846f883e917a2011ce62a5a8c (diff) | |
download | nautilus-9e0012f1632efe9f9fb53a9610ed223ca5fe9ac5.tar.gz |
Move the "Rename" verb into fm-directory-view and implement rename
2002-03-11 Anders Carlsson <andersca@gnu.org>
* src/file-manager/fm-directory-view.c: (process_old_files),
(queue_pending_files), (fm_directory_view_can_rename_file),
(can_rename_file), (start_renaming_file),
(reveal_newly_added_folder), (rename_file_callback),
(real_merge_menus), (real_update_menus),
(fm_directory_view_class_init):
* src/file-manager/fm-directory-view.h:
* src/file-manager/fm-icon-view.c:
(fm_icon_view_can_rename_file), (fm_icon_view_start_renaming_file),
(fm_icon_view_merge_menus), (fm_icon_view_update_menus),
(fm_icon_view_class_init):
* src/file-manager/fm-list-model.c:
(fm_list_model_get_column_type), (fm_list_model_get_value):
* src/file-manager/fm-list-model.h:
* src/file-manager/fm-list-view.c: (cell_renderer_edited),
(create_and_set_up_tree_view), (fm_list_view_start_renaming_file),
(fm_list_view_class_init):
* src/file-manager/nautilus-directory-view-ui.xml:
* src/file-manager/nautilus-icon-view-ui.xml:
Move the "Rename" verb into fm-directory-view and implement rename
callbacks for both the list and icon view.
-rw-r--r-- | ChangeLog | 24 | ||||
-rw-r--r-- | src/file-manager/fm-directory-view.c | 61 | ||||
-rw-r--r-- | src/file-manager/fm-directory-view.h | 6 | ||||
-rw-r--r-- | src/file-manager/fm-icon-view.c | 41 | ||||
-rw-r--r-- | src/file-manager/fm-list-model.c | 7 | ||||
-rw-r--r-- | src/file-manager/fm-list-model.h | 1 | ||||
-rw-r--r-- | src/file-manager/fm-list-view.c | 79 | ||||
-rw-r--r-- | src/file-manager/nautilus-directory-view-ui.xml | 8 | ||||
-rw-r--r-- | src/file-manager/nautilus-icon-view-ui.xml | 15 |
9 files changed, 181 insertions, 61 deletions
@@ -1,3 +1,27 @@ +2002-03-11 Anders Carlsson <andersca@gnu.org> + + * src/file-manager/fm-directory-view.c: (process_old_files), + (queue_pending_files), (fm_directory_view_can_rename_file), + (can_rename_file), (start_renaming_file), + (reveal_newly_added_folder), (rename_file_callback), + (real_merge_menus), (real_update_menus), + (fm_directory_view_class_init): + * src/file-manager/fm-directory-view.h: + * src/file-manager/fm-icon-view.c: + (fm_icon_view_can_rename_file), (fm_icon_view_start_renaming_file), + (fm_icon_view_merge_menus), (fm_icon_view_update_menus), + (fm_icon_view_class_init): + * src/file-manager/fm-list-model.c: + (fm_list_model_get_column_type), (fm_list_model_get_value): + * src/file-manager/fm-list-model.h: + * src/file-manager/fm-list-view.c: (cell_renderer_edited), + (create_and_set_up_tree_view), (fm_list_view_start_renaming_file), + (fm_list_view_class_init): + * src/file-manager/nautilus-directory-view-ui.xml: + * src/file-manager/nautilus-icon-view-ui.xml: + Move the "Rename" verb into fm-directory-view and implement rename + callbacks for both the list and icon view. + 2002-03-10 Darin Adler <darin@bentspoon.com> * NEWS: Bump version. diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c index 2bacd5740..576c9c937 100644 --- a/src/file-manager/fm-directory-view.c +++ b/src/file-manager/fm-directory-view.c @@ -103,6 +103,7 @@ /* Paths to use when referring to bonobo menu items. Paths used by * subclasses are in fm-directory-view.h */ +#define FM_DIRECTORY_VIEW_COMMAND_RENAME "/commands/Rename" #define FM_DIRECTORY_VIEW_COMMAND_OPEN "/commands/Open" #define FM_DIRECTORY_VIEW_COMMAND_OPEN_ALTERNATE "/commands/OpenAlternate" #define FM_DIRECTORY_VIEW_COMMAND_OPEN_WITH "/commands/Open With" @@ -2075,7 +2076,7 @@ process_old_files (FMDirectoryView *view) NautilusFile *file; GList *selection; gboolean send_selection_change; - + files_added = split_off_first_n (&view->details->old_added_files, FILES_TO_PROCESS_AT_ONCE); files_changed = split_off_first_n (&view->details->old_changed_files, FILES_TO_PROCESS_AT_ONCE); @@ -2092,6 +2093,7 @@ process_old_files (FMDirectoryView *view) for (node = files_changed; node != NULL; node = node->next) { file = NAUTILUS_FILE (node->data); + g_signal_emit (view, signals[still_should_show_file (view, file) ? FILE_CHANGED : REMOVE_FILE], 0, @@ -2294,6 +2296,7 @@ queue_pending_files (FMDirectoryView *view, *pending_list = g_list_concat (*pending_list, nautilus_file_list_copy (files)); + if (view->details->loading) schedule_timeout_display_of_pending_files (view); else @@ -2554,6 +2557,23 @@ fm_directory_view_can_zoom_in (FMDirectoryView *view) } /** + * fm_directory_view_can_rename_file + * + * Determine whether a file can be renamed. + * @file: A NautilusFile + * + * Return value: TRUE if @file can be renamed, FALSE otherwise. + * + **/ +static gboolean +fm_directory_view_can_rename_file (FMDirectoryView *view, NautilusFile *file) +{ + return EEL_CALL_METHOD_WITH_RETURN_VALUE + (FM_DIRECTORY_VIEW_CLASS, view, + can_rename_file, (view, file)); +} + +/** * fm_directory_view_can_zoom_out: * * Determine whether the view can be zoomed any further away. @@ -3097,11 +3117,15 @@ trash_or_delete_files (FMDirectoryView *view, eel_g_list_free_deep (file_uris); } +static gboolean +can_rename_file (FMDirectoryView *view, NautilusFile *file) +{ + return nautilus_file_can_rename (file); +} + static void -start_renaming_item (FMDirectoryView *view, const char *uri) +start_renaming_file (FMDirectoryView *view, NautilusFile *file) { - NautilusFile *file; - file = nautilus_file_get (uri); if (file != NULL) { fm_directory_view_select_file (view, file); } @@ -3114,10 +3138,10 @@ reveal_newly_added_folder (FMDirectoryView *view, NautilusFile *new_file, const g_signal_handlers_disconnect_by_func (view, G_CALLBACK (reveal_newly_added_folder), (void *) target_uri); - /* no need to select because start_renaming_item selects + /* no need to select because start_renaming_file selects * fm_directory_view_select_file (view, new_file); */ - EEL_CALL_METHOD (FM_DIRECTORY_VIEW_CLASS, view, start_renaming_item, (view, target_uri)); + EEL_CALL_METHOD (FM_DIRECTORY_VIEW_CLASS, view, start_renaming_file, (view, new_file)); fm_directory_view_reveal_selection (view); } } @@ -4117,9 +4141,27 @@ real_selection_received (GtkWidget *widget, } static void +rename_file_callback (BonoboUIComponent *component, gpointer callback_data, const char *verb) +{ + FMDirectoryView *view; + NautilusFile *file; + GList *selection; + + view = FM_DIRECTORY_VIEW (callback_data); + selection = fm_directory_view_get_selection (view); + + file = NAUTILUS_FILE (selection->data); + + EEL_CALL_METHOD (FM_DIRECTORY_VIEW_CLASS, view, start_renaming_file, (view, file)); + + nautilus_file_list_free (selection); +} + +static void real_merge_menus (FMDirectoryView *view) { BonoboUIVerb verbs [] = { + BONOBO_UI_VERB ("Rename", rename_file_callback), BONOBO_UI_VERB ("Copy Files", copy_files_callback), BONOBO_UI_VERB ("Create Link", create_link_callback), BONOBO_UI_VERB ("Cut Files", cut_files_callback), @@ -4203,6 +4245,10 @@ real_update_menus (FMDirectoryView *view) bonobo_ui_component_freeze (view->details->ui, NULL); + nautilus_bonobo_set_sensitive (view->details->ui, + FM_DIRECTORY_VIEW_COMMAND_RENAME, + selection_count == 1 && + fm_directory_view_can_rename_file (view, selection->data)); nautilus_bonobo_set_sensitive (view->details->ui, FM_DIRECTORY_VIEW_COMMAND_NEW_FOLDER, @@ -5787,7 +5833,8 @@ fm_directory_view_class_init (FMDirectoryViewClass *klass) klass->is_read_only = real_is_read_only; klass->load_error = real_load_error; klass->sort_files = real_sort_files; - klass->start_renaming_item = start_renaming_item; + klass->can_rename_file = can_rename_file; + klass->start_renaming_file = start_renaming_file; klass->supports_creating_files = real_supports_creating_files; klass->supports_properties = real_supports_properties; klass->supports_zooming = real_supports_zooming; diff --git a/src/file-manager/fm-directory-view.h b/src/file-manager/fm-directory-view.h index 78e7926da..45d3bc5c2 100644 --- a/src/file-manager/fm-directory-view.h +++ b/src/file-manager/fm-directory-view.h @@ -261,8 +261,10 @@ struct FMDirectoryViewClass { */ gboolean (* accepts_dragged_files) (FMDirectoryView *view); - void (* start_renaming_item) (FMDirectoryView *view, - const char *uri); + gboolean (* can_rename_file) (FMDirectoryView *view, + NautilusFile *file); + void (* start_renaming_file) (FMDirectoryView *view, + NautilusFile *file); gboolean (* file_still_belongs) (FMDirectoryView *view, NautilusFile *file); diff --git a/src/file-manager/fm-icon-view.c b/src/file-manager/fm-icon-view.c index fc1eaa234..48f929879 100644 --- a/src/file-manager/fm-icon-view.c +++ b/src/file-manager/fm-icon-view.c @@ -78,7 +78,6 @@ #define READ_CHUNK_SIZE 16384 /* Paths to use when creating & referring to Bonobo menu items */ -#define MENU_PATH_RENAME "/menu/File/File Items Placeholder/Rename" #define MENU_PATH_STRETCH_ICON "/menu/Edit/Edit Items Placeholder/Stretch" #define MENU_PATH_UNSTRETCH_ICONS "/menu/Edit/Edit Items Placeholder/Unstretch" #define MENU_PATH_LAY_OUT "/menu/View/View Items Placeholder/Lay Out" @@ -90,7 +89,6 @@ #define POPUP_PATH_LAY_OUT "/popups/background/Before Zoom Items/View Items/Lay Out" #define COMMAND_PREFIX "/commands/" -#define COMMAND_RENAME "/commands/Rename" #define COMMAND_STRETCH_ICON "/commands/Stretch" #define COMMAND_UNSTRETCH_ICONS "/commands/Unstretch" #define COMMAND_TIGHTER_LAYOUT "/commands/Tighter Layout" @@ -380,19 +378,6 @@ clean_up_callback (BonoboUIComponent *component, gpointer callback_data, const c fm_icon_view_clean_up (FM_ICON_VIEW (callback_data)); } - - -static void -rename_icon_callback (BonoboUIComponent *component, gpointer callback_data, const char *verb) -{ - g_assert (FM_IS_ICON_VIEW (callback_data)); - - nautilus_icon_container_start_renaming_selected_item - (get_icon_container (FM_ICON_VIEW (callback_data))); - - fm_directory_view_update_menus (FM_DIRECTORY_VIEW (callback_data)); -} - static void set_tighter_layout (FMIconView *icon_view, gboolean new_value) { @@ -1261,11 +1246,23 @@ layout_changed_callback (NautilusIconContainer *container, update_layout_menus (icon_view); } +static gboolean +fm_icon_view_can_rename_file (FMDirectoryView *view, NautilusFile *file) +{ + if (!(fm_icon_view_get_zoom_level (FM_ICON_VIEW (view)) > NAUTILUS_ZOOM_LEVEL_SMALLEST)) { + return FALSE; + } + + return EEL_CALL_PARENT_WITH_RETURN_VALUE ( + FM_DIRECTORY_VIEW_CLASS, can_rename_file, (view, file)); +} + static void -fm_icon_view_start_renaming_item (FMDirectoryView *view, const char *uri) +fm_icon_view_start_renaming_file (FMDirectoryView *view, NautilusFile *file) { /* call parent class to make sure the right icon is selected */ - EEL_CALL_PARENT (FM_DIRECTORY_VIEW_CLASS, start_renaming_item, (view, uri)); + EEL_CALL_PARENT (FM_DIRECTORY_VIEW_CLASS, start_renaming_file, (view, file)); + /* start renaming */ nautilus_icon_container_start_renaming_selected_item (get_icon_container (FM_ICON_VIEW (view))); @@ -1290,7 +1287,6 @@ fm_icon_view_merge_menus (FMDirectoryView *view) FMIconView *icon_view; Bonobo_UIContainer ui_container; BonoboUIVerb verbs [] = { - BONOBO_UI_VERB ("Rename", rename_icon_callback), BONOBO_UI_VERB ("Stretch", show_stretch_handles_callback), BONOBO_UI_VERB ("Unstretch", unstretch_icons_callback), BONOBO_UI_VERB ("Clean Up", clean_up_callback), @@ -1383,12 +1379,6 @@ fm_icon_view_update_menus (FMDirectoryView *view) icon_container != NULL && nautilus_icon_container_is_stretched (icon_container)); - nautilus_bonobo_set_sensitive (icon_view->details->ui, - COMMAND_RENAME, - selection_count == 1 - && fm_icon_view_get_zoom_level (icon_view) > NAUTILUS_ZOOM_LEVEL_SMALLEST - && nautilus_file_can_rename (selection->data)); - bonobo_ui_component_thaw (icon_view->details->ui, NULL); nautilus_file_list_free (selection); @@ -2639,6 +2629,7 @@ fm_icon_view_class_init (FMIconViewClass *klass) fm_directory_view_class->add_file = fm_icon_view_add_file; fm_directory_view_class->begin_loading = fm_icon_view_begin_loading; fm_directory_view_class->bump_zoom_level = fm_icon_view_bump_zoom_level; + fm_directory_view_class->can_rename_file = fm_icon_view_can_rename_file; fm_directory_view_class->can_zoom_in = fm_icon_view_can_zoom_in; fm_directory_view_class->can_zoom_out = fm_icon_view_can_zoom_out; fm_directory_view_class->clear = fm_icon_view_clear; @@ -2662,7 +2653,7 @@ fm_icon_view_class_init (FMIconViewClass *klass) fm_directory_view_class->merge_menus = fm_icon_view_merge_menus; fm_directory_view_class->emblems_changed = fm_icon_view_emblems_changed; fm_directory_view_class->sort_directories_first_changed = fm_icon_view_sort_directories_first_changed; - fm_directory_view_class->start_renaming_item = fm_icon_view_start_renaming_item; + fm_directory_view_class->start_renaming_file = fm_icon_view_start_renaming_file; fm_directory_view_class->text_attribute_names_changed = fm_icon_view_text_attribute_names_changed; fm_directory_view_class->update_menus = fm_icon_view_update_menus; diff --git a/src/file-manager/fm-list-model.c b/src/file-manager/fm-list-model.c index 8f3816707..28d38ae89 100644 --- a/src/file-manager/fm-list-model.c +++ b/src/file-manager/fm-list-model.c @@ -86,6 +86,8 @@ fm_list_model_get_column_type (GtkTreeModel *tree_model, int index) return G_TYPE_STRING; case FM_LIST_MODEL_ICON_COLUMN: return GDK_TYPE_PIXBUF; + case FM_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN: + return G_TYPE_BOOLEAN; default: return G_TYPE_INVALID; } @@ -198,6 +200,11 @@ fm_list_model_get_value (GtkTreeModel *tree_model, GtkTreeIter *iter, int column str = nautilus_file_get_string_attribute_with_default (file, "date_modified"); g_value_set_string_take_ownership (value, str); break; + case FM_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN: + g_value_init (value, G_TYPE_BOOLEAN); + + g_value_set_boolean (value, nautilus_file_can_rename (file)); + break; default: g_assert_not_reached (); } diff --git a/src/file-manager/fm-list-model.h b/src/file-manager/fm-list-model.h index ddcc10b19..11104c2ae 100644 --- a/src/file-manager/fm-list-model.h +++ b/src/file-manager/fm-list-model.h @@ -41,6 +41,7 @@ enum { FM_LIST_MODEL_SIZE_COLUMN, FM_LIST_MODEL_TYPE_COLUMN, FM_LIST_MODEL_DATE_MODIFIED_COLUMN, + FM_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN, FM_LIST_MODEL_NUM_COLUMNS }; diff --git a/src/file-manager/fm-list-view.c b/src/file-manager/fm-list-view.c index f53025d85..d8408226c 100644 --- a/src/file-manager/fm-list-view.c +++ b/src/file-manager/fm-list-view.c @@ -27,6 +27,7 @@ #include <config.h> #include "fm-list-view.h" +#include "fm-error-reporting.h" #include "fm-list-model.h" #include <eel/eel-cell-renderer-pixbuf-list.h> #include <gtk/gtkcellrendererpixbuf.h> @@ -43,6 +44,8 @@ struct FMListViewDetails { GtkTreeView *tree_view; FMListModel *model; + + GtkTreeViewColumn *file_name_column; }; static GtkTargetEntry drag_types [] = { @@ -150,6 +153,33 @@ button_press_callback (GtkWidget *widget, GdkEventButton *event, gpointer callba } static void +cell_renderer_edited (GtkCellRendererText *cell, + const char *path_str, + const char *new_text, + FMListView *view) +{ + GtkTreePath *path; + NautilusFile *file; + GtkTreeIter iter; + + path = gtk_tree_path_new_from_string (path_str); + + gtk_tree_model_get_iter (GTK_TREE_MODEL (view->details->model), + &iter, path); + + gtk_tree_path_free (path); + + gtk_tree_model_get (GTK_TREE_MODEL (view->details->model), + &iter, + FM_LIST_MODEL_FILE_COLUMN, &file, + -1); + + fm_rename_file (file, new_text); + + nautilus_file_unref (file); +} + +static void create_and_set_up_tree_view (FMListView *view) { GtkCellRenderer *cell; @@ -166,7 +196,7 @@ create_and_set_up_tree_view (FMListView *view) G_CALLBACK (event_after_callback), view, 0); g_signal_connect_object (view->details->tree_view, "button_press_event", G_CALLBACK (button_press_callback), view, 0); - + view->details->model = g_object_new (FM_TYPE_LIST_MODEL, NULL); gtk_tree_view_set_model (view->details->tree_view, GTK_TREE_MODEL (view->details->model)); g_object_unref (view->details->model); @@ -179,23 +209,25 @@ create_and_set_up_tree_view (FMListView *view) /* Create the file name column */ cell = gtk_cell_renderer_pixbuf_new (); - gtk_cell_renderer_set_fixed_size (cell, -1, LIST_VIEW_MINIMUM_ROW_HEIGHT); - - column = gtk_tree_view_column_new (); - gtk_tree_view_column_set_sort_column_id (column, FM_LIST_MODEL_NAME_COLUMN); - gtk_tree_view_column_set_title (column, _("File name")); - gtk_tree_view_column_pack_start (column, cell, FALSE); - gtk_tree_view_column_set_attributes (column, cell, + view->details->file_name_column = gtk_tree_view_column_new (); + gtk_tree_view_column_set_sort_column_id (view->details->file_name_column, FM_LIST_MODEL_NAME_COLUMN); + gtk_tree_view_column_set_title (view->details->file_name_column, _("File name")); + + gtk_tree_view_column_pack_start (view->details->file_name_column, cell, FALSE); + gtk_tree_view_column_set_attributes (view->details->file_name_column, cell, "pixbuf", FM_LIST_MODEL_ICON_COLUMN, NULL); - + cell = gtk_cell_renderer_text_new (); - gtk_tree_view_column_pack_start (column, cell, TRUE); - gtk_tree_view_column_set_attributes (column, cell, + g_signal_connect (cell, "edited", G_CALLBACK (cell_renderer_edited), view); + + gtk_tree_view_column_pack_start (view->details->file_name_column, cell, TRUE); + gtk_tree_view_column_set_attributes (view->details->file_name_column, cell, "text", FM_LIST_MODEL_NAME_COLUMN, + "editable", FM_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN, NULL); - gtk_tree_view_append_column (view->details->tree_view, column); + gtk_tree_view_append_column (view->details->tree_view, view->details->file_name_column); /* Create the size column */ cell = gtk_cell_renderer_text_new (); @@ -385,6 +417,28 @@ fm_list_view_reset_to_defaults (FMDirectoryView *view) fm_directory_view_restore_default_zoom_level (view); } +static void +fm_list_view_start_renaming_file (FMDirectoryView *view, NautilusFile *file) +{ + FMListView *list_view; + GtkTreeIter iter; + GtkTreePath *path; + + list_view = FM_LIST_VIEW (view); + + if (!fm_list_model_get_tree_iter_from_file (list_view->details->model, file, &iter)) { + return; + } + + path = gtk_tree_model_get_path (GTK_TREE_MODEL (list_view->details->model), &iter); + + gtk_tree_view_set_cursor (list_view->details->tree_view, + path, + list_view->details->file_name_column, + TRUE); +} + + #if GNOME2_CONVERSION_COMPLETE /* This is needed when writing out the sort to metadata. But we don't @@ -486,6 +540,7 @@ fm_list_view_class_init (FMListViewClass *class) fm_directory_view_class->set_selection = fm_list_view_set_selection; fm_directory_view_class->emblems_changed = fm_list_view_emblems_changed; fm_directory_view_class->sort_directories_first_changed = fm_list_view_sort_directories_first_changed; + fm_directory_view_class->start_renaming_file = fm_list_view_start_renaming_file; eel_preferences_add_auto_enum (NAUTILUS_PREFERENCES_LIST_VIEW_DEFAULT_SORT_ORDER, (int *) &default_sort_order_auto_value); diff --git a/src/file-manager/nautilus-directory-view-ui.xml b/src/file-manager/nautilus-directory-view-ui.xml index 73a5bad54..064a7c332 100644 --- a/src/file-manager/nautilus-directory-view-ui.xml +++ b/src/file-manager/nautilus-directory-view-ui.xml @@ -1,5 +1,8 @@ <Root> <commands> + <cmd name="Rename" + _label="Rename" + _tip="Rename selected item"/> <cmd name="Create Link" _label="Make Link" _tip="Create a symbolic link for each selected item"/> @@ -123,6 +126,10 @@ _label="_Make Link" accel="*Control*m" verb="Create Link"/> + <menuitem name="Rename" + accel="F2" + _label="_Rename" + verb="Rename"/> </placeholder> <placeholder name="Dangerous File Items Placeholder"> <menuitem name="Trash" @@ -237,6 +244,7 @@ <menuitem name="Show Properties" verb="Show Properties"/> <menuitem name="Duplicate" verb="Duplicate"/> <menuitem name="Create Link" verb="Create Link"/> + <menuitem name="Rename" verb="Rename"/> </placeholder> <placeholder name="Dangerous File Actions" delimit="top"> <menuitem name="Trash" verb="Trash"/> diff --git a/src/file-manager/nautilus-icon-view-ui.xml b/src/file-manager/nautilus-icon-view-ui.xml index 28c60acf4..18efa9f91 100644 --- a/src/file-manager/nautilus-icon-view-ui.xml +++ b/src/file-manager/nautilus-icon-view-ui.xml @@ -1,8 +1,5 @@ <Root> <commands> - <cmd name="Rename" - _label="Rename" - _tip="Rename selected item"/> <cmd name="Stretch" _label="Stretch Icon" _tip="Make the selected icon stretchable"/> @@ -38,15 +35,6 @@ _tip="Reposition icons to better fit in the window and avoid overlapping"/> </commands> <menu> - <submenu name="File"> - <placeholder name="File Items Placeholder"> - <menuitem name="Rename" - accel="F2" - _label="_Rename" - verb="Rename"/> - </placeholder> - </submenu> - <submenu name="Edit"> <placeholder name="Edit Items Placeholder"> <menuitem name="Stretch" @@ -143,9 +131,6 @@ </placeholder> </popup> <popup name="selection"> - <placeholder name="File Actions"> - <menuitem name="Rename" verb="Rename"/> - </placeholder> <placeholder name="Icon Appearance Items"> <menuitem name="Stretch" verb="Stretch"/> <menuitem name="Unstretch" verb="Unstretch"/> |