Repository navigation
Conversation
Collapsible filter bar above the library grid with configurable columns (date, camera, lens, ISO, aperture, shutter, focal length, edit status, rating, flag, color label, file type) and multi-select values with faceted counts. Column layout and expanded state persist in settings; selections reset when switching folder or album. Toggle with backslash. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…nd compact sizing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds a customizable Metadata Filter bar above the Library so photos can be narrowed down by camera settings and library metadata without entering search queries. For example, select two camera models, two apertures, and several ISO values to show only photos matching that combination.
Type of Change
Changes Made
Cmd/Ctrl+ click to add or remove values. Values within a column are combined with OR; active columns are combined with AND. Metadata selections also work alongside the existing Library search and filters, and apply to the shared image list used by Grid, List, and Culling views.Unknownentry handles missing metadata.Allto clear a column or the clear button to remove all metadata selections. The bar remains available when the current combination has no results.AppSettings. Clear active selections when switching folders or albums, and clear a column's selection when its field is replaced or removed. The optional settings field preserves compatibility with existing settings files.\(toggle_filter_bar), configurable in Settings → Controls, while in Library view.Screenshots/Videos
1. Metadata Filter — Grid View with multiple camera, aperture, and ISO selections
Canon EOS R5 and FUJIFILM X-T5; f/2.8 and f/4; ISO 100, 200, and 400. The combination returns 12 demo photos.
2. Metadata Filter — List View with filtered results and EXIF columns
Nikon Z 8 and Sony ILCE-7M4; f/4 and f/5.6; ISO 400 and 800. The eight matching files show their aperture and ISO values in the list.
The screenshots use synthetic photo thumbnails and demo metadata. The thick coral outline and shadow are annotations added to highlight the feature.
Testing
Validation was run against the published feature head
8eaf9358, using the installed project dependencies:npm run build— passed. Vite reports its bundle-size warning.npm run i18n:runtime-check— passed. Validated 1,890 plural resolutions and 32,006 placeholder sets across 17 locales.git diff --check— passed. No whitespace errors in the PR diff.npm run typecheck— fails on both this branch and upstreammain(aa419508). Both report 63 diagnostics, with matching counts by filename and TypeScript error code.npm run i18n:check— fails on both this branch and upstreammain. The extractor reports locale formatting/ordering differences and the same two missing Ukrainian keys:settings.general.hideCollapsedPanelsandsettings.general.hideCollapsedPanelsDesc.Screenshot preparation exercised multi-selection and filtered Grid/List results in a local React demo with a mocked Tauri bridge. Native EXIF loading, settings persistence across app restarts, and other platforms were not retested in this validation session.
Test Configuration:
8eaf9358CyberTimon/RapidRAW:mainChecklist
Additional Notes
This PR contains the metadata-filter feature from
Jonuco:feat/metadata-filter-bar. Screenshot assets and the demo harness are not included in the application changes; the images will be attached to this description separately.AI Disclaimer
AI assisted with preparing this PR description, running validation, and generating the synthetic screenshot imagery. The feature commits are submitted from the contributor's existing branch.