Make Copy to… and Cut to… the selection bar's actions
The selection bar offered Copy and Move, which only filled an in-app clipboard; the destination picker then lived behind an overflow menu, and Paste in the top bar. That made a copy a two-step detour through another folder - the thing M16's picker exists to avoid. - The bar's two verbs are now Copy to… and Cut to…, both opening the destination picker. - The clipboard state, Paste here, and the overflow's duplicate Copy to… / Move to… are removed. The picker's cut title and confirm are Cut to… / Cut here. - A copy still keeps the selection for a second destination; a cut clears it. Conflicts still ask before overwriting, naming the picked folder. - Five clipboard tests are removed; the mark, restart and undo tests now use the picker. BrowserTopBar's search and overflow sections are extracted so its two new detekt findings are fixed rather than baselined. Driven on the Xiaomi phone: Copy to… copied 120 x 16 MB through Internal storage -> AADemo -> Target and reported Copied 121 items to Target; Cut to… moved file001.bin and offered Undo; a name in the way raised Items already exist here; the top-bar overflow has no Paste. The foreground-service video was re-recorded against the new bar at 16.1 s. Verified: ./tools/verify.sh green, the code map current, 426 unit tests pass, and the video decodes as H.264 1080x2400 with no audio.
This commit is contained in:
+20
-5
@@ -55,11 +55,12 @@ upload needs a **higher `versionCode`** than every previous upload.
|
||||
description, and the deferred and interrupted impact. Every `OperationKind` is local — `COPY`,
|
||||
`MOVE`, `DELETE`, `COMPRESS`, `EXTRACT` — and the app has no `INTERNET` permission, so network
|
||||
processing, backup/restore and media transcoding are explicitly not ticked. It also records that
|
||||
the required video is **not** the All files access one: [FGS_VIDEO](docs/FGS_VIDEO.md) holds an
|
||||
**18.0 s** captioned take of the local copy — selection, Copy, Paste here, the notification with
|
||||
its progress bar, and the completed folder — cut from a 35.2 s raw recording to remove the two
|
||||
waits, with every filename synthetic. The traps are written down too: no Up after Copy, and open
|
||||
the shade only once the notification exists.
|
||||
the required video is **not** the All files access one: [FGS_VIDEO](docs/FGS_VIDEO.md) holds a
|
||||
**16.1 s** captioned take of the local copy — selection, **Copy to…**, the destination picker,
|
||||
**Copy here**, the notification with its progress bar, and the completed folder — cut from a
|
||||
41.0 s raw recording to remove the two waits, with every filename synthetic. The traps are written
|
||||
down too: the picker recentres at every level, and open the shade only once the notification
|
||||
exists and let it settle.
|
||||
|
||||
- **A dot marks what an operation just produced.** Copy something, extract an archive, rename a file or make a
|
||||
folder, and the rows it created carry a small dot until you open that folder again — so "what did that 4 GB
|
||||
@@ -277,6 +278,20 @@ upload needs a **higher `versionCode`** than every previous upload.
|
||||
|
||||
### Changed
|
||||
|
||||
- **Copy and Cut are now Copy to… and Cut to…, and the clipboard is gone.** The selection bar's
|
||||
first two actions open the destination picker directly; choosing a folder starts the copy — or the
|
||||
cut — without leaving the folder you are in. The separate clipboard state, **Paste here**, and the
|
||||
overflow's duplicate **Copy to… / Move to…** entries are removed, and the picker's cut verb reads
|
||||
**Cut to… / Cut here**. A copy still keeps the selection for a second destination; a cut still
|
||||
clears it because those rows leave; conflicts still ask, naming the picked folder. Five tests that
|
||||
exercised the clipboard were removed, and the mark, restart and undo tests now go through the
|
||||
picker; the foreground-service video was re-recorded against the new bar. Driven on the Xiaomi
|
||||
phone: Copy to… copied 120 × 16 MB and Cut to… moved one file, and the top-bar overflow has no
|
||||
Paste.
|
||||
|
||||
Why: the clipboard made a copy a two-step detour through another folder, which is exactly what M16
|
||||
built the picker to avoid. Keeping both would have left two meanings for “Copy” in one bar.
|
||||
|
||||
- **File thumbnails are bigger.** The leading visual in a list row went from 28 dp to 48 dp and
|
||||
the one in a grid cell from 40 dp to 96 dp, with the grid's minimum column width raised from
|
||||
108 dp to 144 dp so the larger tile and the two-line name under it still fit. Neither size was
|
||||
|
||||
Reference in New Issue
Block a user