Click a filter, watch everything react
Most photo managers show you every filter value whatever you have already selected. You pick a country, then a camera, and get zero results because that camera was never used in that country. Trial and error.
Gallery's filter panels talk to each other. Select Germany and the People panel narrows to people who appear in German photos. The Camera panel shows the cameras used in Germany. Tags, ratings and media type update with them.
This is faceted search, the pattern Amazon and eBay use. Every visible option is guaranteed to return results.
How it works
A single API call returns all the filter suggestions in one round trip. The server runs six queries in parallel, one per category: countries, cameras, people, tags, ratings, media type. Each query applies your active filters except its own category, so what you see is what is still available given the rest of your selections.
Select Germany and the countries query ignores the country filter while the cameras query applies it. One request, six answers.
Orphaned selections stay visible
Select France, then pick a camera make that was never used in France, and France dims instead of disappearing. You can see exactly why your result set is empty, and one click undoes it.
Ratings and media type adapt too
Buttons update as well as dropdowns. If your filtered photos are all rated 4 and 5 stars, the 1, 2 and 3 star buttons vanish. If there are no videos in the set, the Videos button goes with them.
Debounced, so the server is not hammered
Rapid clicks are batched while you select several people or toggle tags quickly. Picking a year or month gets a slightly longer debounce, since the date picker invites more poking around. Clearing all filters is instant.