Skip to content
WM KeyboardWM Keyboard
Accessibility

Clipboard manager

History, pinning, search and rich media, with password hygiene built in.

The clipboard tool keeps a running history of what you copy (text, images, files, and more), so a paste from ten minutes ago is still one tap away, not gone the moment you copy something new. On a phone it’s one of only three tools pinned to the toolbar out of the box, alongside Emoji and Settings. A tablet starts wider, because three icons across a twelve-inch bar is mostly empty space: five pinned on a small tablet (Emoji, GIF, Clipboard, Voice, Settings) and seven on a large one (those five plus Translate and Text edit). Clipboard is in all three sets.

Screenshot pending
The clipboard panel: staggered two-column cards, entity chips for a fresh code or link, and a search pill.

Tap Clipboard on the toolbar, or reach it from the toolbox if you’ve unpinned it; see the toolbar for pinning. On a hardware keyboard, use the leader key: double-tap Ctrl, then press C.

Cards lay out in a staggered two-column grid rather than a fixed grid, so a short text clip doesn’t get stretched to match a tall image beside it. Pinned clips sort first by default (flip that to put them last instead). Tap any card to insert it; copying the same content again just moves the existing card back to the top instead of adding a duplicate.

To remove a single clip, swipe its card left or right until it slides off: there’s no confirmation and no undo, so a stray swipe is permanent. Press and hold a card instead for its info popup: when it was copied, its type and size, and (if source tracking is on) which app it came from.

Screenshot pending
Long-pressing a clip: the info popup shows when it was copied, its type, size, and source app.

Turning clipboard history off stops capture entirely. When it’s on, a copy is skipped anyway if incognito is active and set to pause the clipboard, or if the field you copied from was a password field: those never reach history no matter what else is configured.

Five kinds of clip are stored, each shown differently in the panel:

  • Text and rich text — the plain content, shown as-is.
  • Links — shown as the raw URL, or as a fetched title and description if link previews are on.
  • Images — copied into the app’s own storage, so the source app can discard its copy without losing yours. Also captures device screenshots directly, if you turn that on.
  • Files and videos — not copied. Only the file’s URI, name, MIME type, and size are kept, so copying a multi-gigabyte video costs nothing; a video card even shows a frame grabbed from the very start of the clip instead of a blank icon. Copying several files or a whole folder at once keeps up to 20 items from that one copy.
  • Folders — same as files: a reference, not a copy. A folder can’t be attached to anything, so tapping its card types the folder’s name into the field instead and hands the folder’s URI back to the system clipboard for a file manager to use.
Screenshot pending
A file, video, and folder clip side by side — each keeps only a reference to the source, not the bytes.

Tapping an image, file, or video card negotiates a MIME type with the focused field: it tries the field’s accepted types in order and sends the first match via commitContent. If the field wants PNG but the clip is a static WebP, it converts on the fly (animated WebP is left alone, so an animation is never silently flattened into a still). If nothing matches (the field doesn’t accept rich content at all, or the permission to read the file has lapsed), the item goes back onto the system clipboard instead, with a toast explaining that you’ll need to paste it there.

Unpinned clips fall off two ways: WM KeyboardToolsClipboard sets an expiry in hours (0 turns expiry off), and separately caps how many unpinned entries history keeps at once: once that cap is hit, the oldest unpinned clip drops with each new copy. Pinning a clip exempts it from both: it never expires and never counts against the cap.

Turn on the search bar and a search pill appears at the top of the panel once you have at least one clip. Tapping it hands your keystrokes to the search field instead of typing into your document (the same trick the emoji panel uses), and the panel shrinks to just the field and its results while you type. Matching is a case-insensitive substring search, and it isn’t limited to a clip’s own text: an image or video with no text of its own is still found by typing “image,” “screenshot,” or its file format, since those are indexed alongside the file name and any link preview’s title.

Turn on entity detection and the panel scans your recent clips for one-time codes, phone numbers, and links, offering each as its own dashed-outline chip above the history grid, so the six digits inside a verification text are one tap away instead of a copy-select-paste. Tapping a chip pastes just that fragment, leaving the full clip in place; press and hold a chip to see it highlighted inside the message it came from.

Screenshot pending
Entity chips above the history grid: an OTP and a phone number pulled out of a longer message.

Detection is conservative on purpose: a 4-digit year is never mistaken for a code, a run of digits after a currency symbol or a # is never mistaken for a phone number, and Google’s G-123456 verification prefix is stripped so only the code itself pastes. The same detection also drives the ordinary paste chip on the suggestion strip: if your most recent copy is a message that contains a code rather than being one, the strip offers the code alone instead of the whole message.

Phone numbers are the one fragment with no shape of its own, so they get an extra setting. Without it, anything with 7 to 15 digits counts, which is how an invoice total or a tracking number ends up wearing a phone chip. Open Phone number formats from the clipboard settings and give it a number you copy often: it turns that into a format like +880 1XXX-XXXXXX, keeps the dial code, and turns the rest into wildcards you can type digits back over to pin. After that, only numbers matching one of your formats become chips.

The matching is deliberately forgiving about the things people vary and strict about the things they don’t. Spaces, hyphens, brackets and dots are ignored on both sides, and the same format accepts the number with its country code, without it, or with a leading 0 in its place. What it won’t accept is the wrong length, the wrong leading digit, or an explicit + naming a different country. There’s a test field on the screen so you can paste a number in and see the answer before you trust it. Add as many formats as you like (one per country you deal with), and delete them all to go back to catching everything. Phone number formats is the field reference for that screen: the mask characters, the length bounds, and every bit of leeway spelled out.

This entity strip is a different mechanism from Smart chips, which reacts to what you’re currently typing rather than to what you’ve copied; the two happen to look similar (a dashed outline) but don’t share any code.

The clipboard tool treats a copied password or code as sensitive in two independent ways: at copy time, and at paste time.

At copy time, WM KeyboardToolsClipboardPasswords & codes chooses what happens to a clip Android itself marks sensitive (the flag a password manager sets when you copy a login): keep it like any other clip, hide it and forget it quickly, or never save it at all. The default hides and forgets: that choice is deliberate, since never saving trades away the everyday “I pasted a password into the wrong field” recovery for a risk a short timer already closes. Turn on recognizing sensitive clips yourself and the same handling also applies to anything that merely looks like a password or a bare code, for managers that predate the flag or a code you copied by hand, narrowly enough that a sentence, a link, or an email address never qualifies.

A hidden clip shows as a row of dots and a character count in the panel, is never revealable there, and is left out of the strip’s paste-chip, the entity strip, and the settings backup. It expires on its own timer (independent of, and not capped by, the ordinary history expiry above). Pinning a sensitive clip overrides all of that, the same as pinning anything else.

At paste time, turn on forgetting after a password paste and the clip is deleted from history (and from the system clipboard too, if it still holds exactly what you pasted) the moment you paste into a password field. This fires for a tap on a card, the strip’s paste chip, a pasted entity chip, or a hardware Ctrl+V paste alike, so leaving the rest of an SMS sitting on the clipboard after you’ve only pasted its code doesn’t defeat the point.

WM KeyboardToolsClipboard

Clipboard settings: the History group and, below it, Passwords & codes.

Clipboard settings: the History group and, below it, Passwords & codes.

History, in the order the rows appear:

  • Clipboard history: master capture switch, on by default.
  • Suggest the last copy: offers your latest copy as a paste chip on the suggestion strip, on by default; the chip disappears on its own after a few minutes.
  • Suggest copied codes in code boxes: on by default, and only shown while “Suggest the last copy” is on. A copied one-time code is otherwise treated as a secret and kept off the strip, since the chip sits in view while you type something else. A code box is the exception, because the code is the only thing you’re there to type, so a recently copied code is offered there and nowhere else.
  • Pop-up when you copy: off by default. It lives in this group but it isn’t a history setting at all, see below.
  • Clipboard expiry: hours before an unpinned clip is removed, 0–168, default 24 hours (0 means never).
  • Maximum entries: how many unpinned clips history keeps, 5–500, default 100.
  • Bottom control row: adds an abc/space/backspace row at the bottom of the panel, like the emoji panel’s; off by default.
  • Full-screen clipboard panel: on by default, so this is what the panel does unless you say otherwise. The history takes the whole keyboard and a slim back header stands in for the toolbar, the emoji row and the symbol row, which is worth it because picking the right clip is easier the more of them are on screen. Start a search and the panel drops back to its compact size so the keys fit underneath. Turn it off to keep the toolbar visible while the panel is open.
  • Pinned entries last: moves pinned clips to the end of the panel instead of the top; off by default.
  • Search bar: enables the search pill described above; off by default.
  • Detect codes, numbers and links: enables the entity chips; on by default. Detection runs entirely on the device.
  • Phone number formats: a nav row, shown only while detection is on, opening the mask editor covered in Phone number formats. Its subtitle says every number becomes a chip while you have no formats saved, and counts them once you do.
  • Forget after you paste a password: the paste-time purge described above; on by default.
  • Link previews: fetches a copied link’s page title and description directly from the linked site; off by default, and the toggle’s own description says so plainly.
  • Your screenshots: shows device screenshots in the panel alongside copied text and images; off by default. While it’s on without the photos permission granted, a row appears underneath to open system settings.
  • Show the source app: records which app a clip was copied from, for the long-press info popup; off by default, and needs the Usage Access permission (a best-effort guess of the foreground app at copy time, not a precise log). It gets the same “grant this” row underneath until you do.

Passwords and codes

  • Sensitive clips: keep, hide-and-forget (default), or never save. See above.
  • Let the keyboard find them: extends sensitive handling to clips that merely look like a password or code; on by default, shown only when sensitive handling isn’t set to “keep.”
  • Forget sensitive clips after: the hidden-clip timer, 1–120 minutes, default 5; shown only under the hide-and-forget option.

The whole-app config backup has its own Clipboard section, off by default when you export. It only ever includes pinned and recent text clips: images and files are deliberately left out, since they live on the device they were copied on and wouldn’t open anywhere else. Sensitive clips are excluded from an export regardless of that toggle.

  • Every toggle and slider on this screen carries the usual restore button once you’ve moved it off its shipped value, so the rows that grew one are the ones you’ve changed.
  • The clipboard tool needs the device to have been unlocked at least once since restart: its history lives in credential-encrypted storage, so it sits out any lock-screen or pre-unlock typing until then.
  • Ships the same way in the full and lite editions; nothing about this tool is edition-gated.
  • Link previews make a direct, unauthenticated request to whichever site you copied a link from (not through any of the app’s own network services), so turning that setting on means that site sees a request from your device the moment you open the panel with a fresh link in history.
  • A file or folder clip is only as good as the URI permission grant behind it; if that’s lapsed by the time you tap it (the source app cleared its cache, for instance), pasting falls back to putting the URI back on the system clipboard with an explanatory toast rather than silently failing.
  • “Pop-up when you copy” appears in this same screen’s History group but is actually a feedback setting: it’s about the keyboard’s own copy shortcuts (A/C/V/X and the text-editing panel’s copy button), not clipboard history. It only fires in fields that give no copy feedback of their own, and it’s off by default.
  • Pausing capture while incognito is on is a separate Incognito setting, not part of this screen.