Sambee 1.0

What's New

Quick Bar

Sambee’s quick bar is getting closer to the goal of becoming a universal search and navigation tool with the addition of file search (keyboard shortcut: /).

File search complements the existing directory navigation (keyboard shortcut: Ctrl+K) by providing instant access to recently opened files across directories as well as files in the current directory matching a user-specified search term.

File search supercedes file filtering mode which was removed.

Directory Navigation History

Directory navigation gets a history functionality that makes it possible to instantly navigate to the folders you need most.

Other Changes

  • Changed F1 to consistently invoke keyboard shortcuts help

Text and Markdown Editors

Search and Replace

In any editor, search and replace are essential functions that need to work efficiently while providing granular control. The text and the Markdown editors got just that: compact search and replace popouts with history, regex support and full keyboard usability.

Other Changes

  • Added keyboard shortcuts help
  • Added word wrap (toggled by keyboard shortcut Alt+Z)
  • Bugfix: text selection highlighting

Markdown Editor

  • Added Ctrl+B and Ctrl+I keyboard shortcuts for bold and italic formatting

PDF Viewer

More Speed and Higher Fidelity: New Approach to Normalization

Earlier versions normalized every PDF with Ghostscript. This introduced occasional issues and slowed down the viewer. Sambee now opens PDFs in their original form first. When a PDF cannot be displayed because its internal structure is incompatible with the viewer, Sambee can create a separate normalized version for viewing; the original file is never modified. Compatibility processing is limited by file size, processing time, memory, and temporary storage, and each normalized PDF is checked before use.

Other Changes

  • Mobile: swipe to move between pages
  • Encrypted PDFs: the user is now asked to enter a password
  • Large PDFs: better user feedback while loading
  • Color rendering: support for ICC profiles and CMYK
  • Image codecs: support for JPEG 2000 (JXL)
  • Bugfix: geometry changes between pages, e.g., from portrait to landscape, would create endless “flicker loop”
  • Bugfix: page rotation commands in the file were not honored

File List

ZIP Archive Creation, Inspection, and Extraction

Sambee lets you navigate seamlessly into ZIP archives the same way you’d navigate into subdirectories to explore their contents. The UX is instantaneous - only the relevant parts of the ZIP file are decoded. When extracting or compressing, the archive is streamed directly from source to target to minimize CPU, memory, and disk utilization. ZIP operations, like any other, are fully supported across backend boundaries, i.e., between SMB connections and local drives.

The addition of ZIP archive inspection was the right opportunity to implement storage and content provider abstraction layers. These new abstractions centralize knowledge of storage backends (e.g., SMB, Companion) and how to work with the data on the storage (e.g., regular files, archives), respectively. Introducing these abstractions significantly improves the product’s architecture and will greatly simplify adding additional backends or container file types in the future.

Local Drives: Resolve .LNK Files

Shortcuts (.lnk files), symlinks, and junctions on local drives now show the target path (pulled in asynchronously after the directory list has loaded; we don’t want to give up on that snappy UI, after all). Paths are sensibly shortened to fit the available row width. When activated, file targets are opened whereas directory targets are navigated to.

Other Changes

  • Keyboard navigation: removed delay after entering a new directory
  • Typeahead buffer: cleared when Esc is pressed

Settings & Dialogs

New Settings

The settings gained a new category page:

  • New admin File Search settings page

Image Viewer

  • Large images: better user feedback while loading

Miscellaneous

  • Bugfix: Concurrent OIDC token refreshes would cause SQLite database lock errors.

Under the Hood

  • Frontend: improved recovery after network unavailability (e.g., after suspend/resume)
  • Security: updated all dependencies with known vulnerabilities to fixed versions

Internals

Release Workflow: Companion Alignment with Docker Image

Companion’s release process has been simplified and aligned to match the Docker image workflow:

  1. When a new Companion build is created, its GitHub release is published automatically and promoted to the test channel.
  2. Interim Companion GitHub releases are deleted automatically when they’re no longer needed.