Guidelines and checklist for clipboard commands (Windows Store apps)
Clipboard commands—copy, paste, and cut—provide users with a familiar way to transfer content from one location to another. With these commands you can help users transfer content:
- Within the same app
- Between Windows Store apps
- Between desktop applications
- Between Windows Store apps and desktop applications
In general, you should support copy and paste for any editable content that a user can explicitly select—such as a subset of a document or an image. You should also consider supporting copy and paste commands for content that users might want to use somewhere else. For example:
- Images in a photo gallery application
- Computation results in a calculator
- Restaurant address in a restaurant-search application
As always, be aware of rights management and other factors that might restrict the use of copy and paste commands. For example, if your app supports viewing rights-managed mail, a policy might restrict the user from copying all or parts of such content.
After you decide where to support copy and paste, you need to think about how to add it to your app. Here are a few guidelines to help you:
- Make sure it's clear what a user is copying, or where a user can paste content.
- Provide support for paste only on editable regions and canvases in your application.
- Consider implementing an undo command, as copy and paste can lead to content being deleted or replaced.
- If a control already supports copy and paste, use the control's implementation. If you need to build your own implementation of copy and paste, make sure the experience you create is consistent with these controls.
- Consider supporting sharing if you are also supporting copy.
Here are a few considerations for where you shouldn't use copy and paste.
- Don't provide support for copying content that can’t be selected—either explicitly, or through a context menu.
- Don't provide support for copying text that is not part of the core content of your application. Titles, headers, and button text do not need to be copied.
Before implementing support for copy and paste commands, consider how users access copy and paste commands. In general, users access copy and paste commands by one of three methods: a context menu, the app bar, or keyboard shortcuts.
Use a context menu:
- For items that users can select only through tap-and-hold gestures—such as hyperlinks or embedded images. For example, let's say your app displays an address to the user, and you want the user to be able to copy that address. A great user experience would be to create a Copy Address command that users can access when they either right-click or tap-and-hold the address. This command would then copy the address to the clipboard, from which the user can paste it into the app of their choice.
- For text selection (both editable and read-only).
- For paste operations where the target is well defined, such as a cursor location or a table cell.
If the preceding guidelines don't apply to your app, then you can likely use the app bar. Some examples include:
- When your app supports the selection of multiple items.
- When the user can select a portion of an image.
- When the target of a paste command is clear—such as pasting a screen shot on a canvas.
We strongly encourage you to always support keyboard shortcuts. Also, if your app supports the paste command, make sure you disable it when the clipboard is empty or if it contains content that your app doesn't support.
Build date: 12/5/2012