Skip to content
sysout.dev

treeger - Scoped Search Delivery

Delivered behavior and technical boundaries for cancellable scoped search and its filters.

Outcome

Search starts from the folder the user is already viewing and expands only when asked. It replaces the earlier loaded-row name filter with a cancellable search engine that can traverse subfolders and internal storage without a permanent index.

Search And Sort Interaction

The dedicated sort icon remains in the folder top bar. Opening Search adds a name field and filter chips beneath the breadcrumbs; it does not move or duplicate the sort control. The checked menu item communicates the current ordering, and changing sort reorders current results immediately without restarting recursive traversal.

Selected filters use the active identity’s low-chroma primary container. Result summaries use semibold primary ink, while unavailable-folder counts remain secondary information with only the count phrase emphasized.

Closing Search restores the ordinary folder listing. The field clear action clears only the query when text is present; with an empty query it closes Search. Android Back also closes Search before leaving the folder.

Scope And Filters

Scopes expand progressively:

  • This folder

  • Include subfolders

  • Internal storage

Filters are explicit rules:

  • Type: folders, images, videos, audio, documents, archives, or other

  • Modified: today, last 7 days, last 30 days, or last year

  • Size: under 1 MB, 1-100 MB, or at least 100 MB

An empty query is valid when filters or a broader scope are active. Size filters exclude folders because folder rows do not calculate recursive sizes.

Results And Operations

Recursive results show the containing location instead of ordinary folder-row metadata. Opening a result reconstructs useful breadcrumbs. Multi-selection and the existing share, rename, copy, move, Delete, and properties flows operate on the result URIs, including selections collected from different source folders.

Search obeys the hidden-file preference and always excludes treeger’s private Trash directory. Unreadable folders are skipped and reported. Results arrive in batches, can be cancelled while retaining partial results, and are capped at 2,000 with a refinement message when the cap is reached.

Storage Providers

Local file:// search supports every scope. SAF content:// locations support the current tree and recursive provider traversal. Choosing Internal storage uses treeger’s local all-files path and explains when all-files access is absent.

Deferred

Saved searches and their optional Smart Stack presentation are deferred. Scoped search currently covers the identified need; revisit persistence only when people repeatedly recreate the same changing, cross-folder result set.