Notebooks, pins and moving notes
Notebooks, the default notebook, archiving, ordering, pins, multi-select moves and undo. Decisions: D-03, D-15, D-16, D-18, D-19, D-24.
- An empty app shows the “clean desk” home with New note and Search
- Android UI:
NotebookUiTest.startsWithAClearDesk - iOS UI:
NotebookUITests.StartsWithAClearDesk - Not tested: Shared
- Android UI:
- The default notebook always exists, is called “Default” and can’t be archived
- Shared:
NotesCoreTest.inboxExistsAndCannotBeArchived,OrganizingTest.theDefaultNotebookIsCalledDefault - Not tested: Android UI, iOS UI
- Shared:
- Creating, renaming (trimmed), archiving, unarchiving and reordering notebooks
- Shared:
NotesCoreTest.notebookLifecycle - Android UI:
NotebookUiTest.createsNotebooksAsNumberedVolumes,NotebookUiTest.renamesNotebook,NotebookUiTest.reordersNotebooks - iOS UI:
NotebookUITests.CreatesNotebookAsFirstVolume,NotebookUITests.RenamesNotebook,NotebookUITests.ReordersNotebooks
- Shared:
- Archived notebooks are hidden until “show archived” is on
- Shared:
NotesCoreTest.notebookLifecycle - Android UI:
NotebookUiTest.archivedNotebooksAreHiddenUntilShown - iOS UI:
NotebookUITests.ArchivedNotebooksAreHiddenUntilShown
- Shared:
- A note made inside a notebook belongs to it and counts toward it
- Android UI:
NotebookUiTest.newNoteInANotebookCountsTowardIt - iOS UI:
NotebookUITests.NewNoteInANotebookCountsTowardIt - Not tested: Shared
- Android UI:
- A note made at the top level stays in the default notebook
- Android UI:
NotebookUiTest.newNoteFromTheTopLevelStaysThere - iOS UI:
NotebookUITests.NewNoteFromTheTopLevelStaysThere - Not tested: Shared
- Android UI:
- Deleting a notebook moves its notes to the top level; undo puts them back
- Shared:
OrganizingTest.deletingANotebookMovesItsNotesToTheTopLevelAndUndoPutsThemBack - Android UI:
NotebookUiTest.deletingANotebookKeepsItsNotesAndUndoBringsItBack - iOS UI:
NotebookUITests.DeletingANotebookKeepsItsNotesAndUndoBringsItBack
- Shared:
- Pinning isn’t an edit (no revision) and pinned notes list first
- Shared:
OrganizingTest.pinningIsNotAnEditAndPinnedNotesComeFirst - Android UI:
NotebookUiTest.pinnedNotesShowFirst - iOS UI:
NotebookUITests.PinnedNotesShowFirst
- Shared:
- A new note pinned from the editor is listed with its title (the home list’s lazy stack used to keep the card it had under Recent notes, empty and unpinned)
- iOS UI:
NotebookUITests.ANewNotePinnedWhileEditingIsListedWithItsTitle - Not tested: Android UI (checked by hand on a phone, 2026-10-11; Compose keeps no stale row)
- iOS UI:
- Moving a single note records a MOVE revision
- Shared:
NotesCoreTest.moveDeleteUndelete - Not tested: Android UI, iOS UI
- Shared:
- Selected notes move together; undo restores their old places
- Shared:
OrganizingTest.bulkMovesAndDeletesCanBeUndone - Android UI:
NotebookUiTest.selectedNotesMoveTogetherAndUndoPutsThemBack - iOS UI:
NotebookUITests.SelectedNotesMoveTogetherAndUndoPutsThemBack
- Shared:
- Cancelling a selection changes nothing
- Android UI:
NotebookUiTest.cancellingSelectionChangesNothing - iOS UI:
NotebookUITests.CancellingSelectionChangesNothing - Not tested: Shared
- Android UI:
- The drawer opens a notebook and marks it as current
- Android UI:
NotebookUiTest.drawerOpensANotebookAndMarksIt - iOS UI:
NotebookUITests.DrawerOpensANotebookAndMarksIt - Not tested: Shared
- Android UI:
- Swiping from the left edge at home opens the drawer
- iOS UI:
NotebookUITests.SwipeFromTheLeftEdgeOpensTheDrawerAtHome - Not tested: Shared, Android UI
- iOS UI:
Selecting search results and trash items is in search.md and trash.md.
Gaps
- Android: no test for opening the drawer with a left-edge swipe (iOS has one).
- Select all in a note list (D-18) has no test on any layer.
- Pin order among pinned notes (most recently pinned first, D-19) is not checked beyond “pinned before unpinned”.
- Moving into an archived notebook, or archiving the notebook that is open, has no test.