dolphin/src/dolphinui.rc
Nathaniel Graham 158d12ac37 Add Duplicate feature
Summary: Adds a Duplicate feature to Dolphin, showing up as a menu item in the File menu that appears when one or more items are selected and the directory is writable. Duplicated items receive the names of the original files with " copy" appended before the file extension, if any.

Test Plan:

{F5201386} {F5201393}

Test cases:

- Try to duplicate when nothing is selected: **PASS**: menu item is grayed out
- Try to duplicate anything on a read-only local volume: **PASS**:  menu item is grayed out
- Try to duplicate anything on a read-only samba share: **PASS**: menu item is grayed out
- Duplicate single local file on R/W volume: **PASS**: item is duplicated and named correctly
- Duplicate multiple local files on R/W volume: **PASS**: 3 items are duplicated, named correctly, and selected
- Duplicate single local directory on  R/W volume: **PASS**: item is duplicated and named correctly, but a rename operation is not initiated
- Duplicate multiple local directories on R/W volume: **PASS**: 3 items are duplicated, named correctly, and selected
- Duplicate single file on R/W samba share: **PASS**: item is duplicated and correctly
- Duplicate multiple files on R/W samba share: **PASS**: 3 items are duplicated, named correctly, and selected
- Duplicate single directory on R/W samba share: **PASS**: item is duplicated and named correctly
- Duplicate multiple directory on R/W samba share: **PASS**: 3 items are duplicated, named correctly, and selected
- Try to undo a successful duplication: **PASS**: operation is undone

This is my first attempt at a big change like this and I'm sure it's full of issues. I will accept any and all suggestions for improvement. :)

Reviewers: #dolphin, #kde_applications, elvisangelaccio, dfaure, broulik, davidedmundson

Subscribers: kfm-devel, meven, markg, fazevedo, cfeck, #dolphin

Tags: #dolphin

Differential Revision: https://phabricator.kde.org/D8208
2020-03-15 13:20:50 -06:00

136 lines
4.9 KiB
Plaintext

<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
<kpartgui name="dolphin" version="30">
<MenuBar>
<Menu name="file">
<Action name="new_menu" />
<Action name="file_new" />
<Action name="new_tab" />
<Action name="file_close" />
<Action name="undo_close_tab" />
<Separator/>
<Action name="add_to_places" />
<Separator/>
<Action name="renamefile" />
<Action name="duplicate" />
<Action name="movetotrash" />
<Action name="deletefile" />
<Separator/>
<Action name="show_target" />
<Separator/>
<Action name="properties" />
</Menu>
<Menu name="edit">
<Action name="edit_select_all" />
<Action name="invert_selection" />
</Menu>
<Menu name="view">
<Action name="view_zoom_in"/>
<Action name="view_zoom_reset"/>
<Action name="view_zoom_out"/>
<Separator/>
<Action name="sort" />
<Action name="view_mode" />
<Action name="additional_info" />
<Action name="show_preview" />
<Action name="show_in_groups" />
<Action name="show_hidden_files" />
<Separator/>
<Action name="split_view" />
<Action name="split_stash" />
<Action name="redisplay" />
<Action name="stop" />
<Separator/>
<Action name="panels" />
<Menu name="location_bar" icon="edit-select-text">
<text context="@title:menu">Location Bar</text>
<Action name="editable_location" />
<Action name="replace_location" />
</Menu>
<Separator/>
<Action name="view_properties" />
</Menu>
<Menu name="go">
<Action name="bookmarks" />
<Action name="closed_tabs" />
</Menu>
<Menu name="tools">
<Action name="show_filter_bar" />
<Action name="open_preferred_search_tool" />
<Action name="open_terminal" />
<Action name="focus_terminal_panel"/>
<Action name="compare_files" />
<Action name="change_remote_encoding" />
</Menu>
</MenuBar>
<State name="new_file" >
<disable>
<Action name="edit_undo" />
<Action name="edit_redo" />
<Action name="edit_cut" />
<Action name="edit_copy" />
<Action name="renamefile" />
<Action name="movetotrash" />
<Action name="deletefile" />
<Action name="invert_selection" />
<Separator/>
<Action name="go_back" />
<Action name="go_forward" />
</disable>
</State>
<State name="has_selection" >
<enable>
<Action name="edit_cut" />
<Action name="edit_copy" />
<Action name="renamefile" />
<Action name="duplicate" />
<Action name="movetotrash" />
<Action name="deletefile" />
<Action name="invert_selection" />
</enable>
</State>
<State name="has_no_selection" >
<disable>
<Action name="edit_cut" />
<Action name="edit_copy" />
<Action name="renamefile" />
<Action name="duplicate" />
<Action name="movetotrash" />
<Action name="deletefile" />
<Action name="delete_shortcut" />
<Action name="invert_selection" />
</disable>
</State>
<ToolBar noMerge="1" name="mainToolBar" >
<text context="@title:menu">Main Toolbar</text>
<Action name="go_back" />
<Action name="go_forward" />
<Separator name="separator_1" />
<Action name="icons" />
<Action name="compact" />
<Action name="details" />
<Separator name="separator_0" />
<Action name="sort" />
<Spacer name="spacer_0" />
<Action name="split_view" />
<Action name="split_stash" />
<Action name="toggle_search" />
</ToolBar>
<ActionProperties scheme="Default">
<Action priority="0" name="go_back"/>
<Action priority="0" name="go_forward"/>
<Action priority="0" name="go_up"/>
<Action priority="0" name="go_home"/>
<Action priority="0" name="stop"/>
<Action priority="0" name="icons"/>
<Action priority="0" name="compact"/>
<Action priority="0" name="details"/>
<Action priority="0" name="view_zoom_in"/>
<Action priority="0" name="view_zoom_reset"/>
<Action priority="0" name="view_zoom_out"/>
<Action priority="0" name="edit_cut"/>
<Action priority="0" name="edit_copy"/>
<Action priority="0" name="edit_paste"/>
<Action priority="0" name="toggle_search"/>
</ActionProperties>
</kpartgui>