What are best practices for UX that allows users to toggle whether a user's choice in a dropdown box in the chrome of a web app will persist across multiple pages and and multiple sessions?
Constraints are:
- UI involved is a dropdown box used to filter the UI to a subset of available data
- Default is "no filter"
- User's choice is currently always persisted (both across pages and across sessions)
- I can't change the dropdown box UI or the "persisted by default" setting. Changes would incur too much support and training risk for our mostly low-tech userbase.
- I'm space-constrained. I can add no height and at most 50-75px in width to a 28px-high area that contains the dropdown today.
- About 88% of our users are exclusively PC users, about 11% are primary PC/part-time iPad users, and about 1% Mac users. (I included this detail to pre-emptively reject skeuomorphic toggle switches which in my experience don't do well among a PC-centric audience.)
In other words, I'm looking for something I can put next to (or inside) a dropdown box that:
- will indicate whether the choice in the dropdown is persistent
- if persistent, will allow the user to remove persistence
- if not persistent, will allow the user to persist the setting
- in the default state (persisted) will not add too much complexity for users who are used to the current always-persisted behavior and simply want to choose a dropdown once (or once in a while) and otherwise never notice this UI again.
If you're interested, here's more details about the specific business problem:
My company's B2B web application has dropdown box in the corner of every page that filters the UI to a particular route of a multi-route delivery business. The list is usually short, typically 10-15 routes. The default is "unfiltered". The filter is persistent-- once set, it stays set forever for that user unless changed.
This dropdown filtering UI has been in place for many years before I was hired, and removing or fundamentally changing its default behavior is a non-starter because it would generate too many support calls for us and too many re-training headaches for our customers.
But many users have complained about the dropdown always being persistent, so if they filter one page and navigate to another page, the filter sticks. It also persists across sessions. Sometimes this persistence is desired behavior: e.g. if a particular user is focusing on one route only for the entire day. Sometimes it's not: e.g. if the user is just narrowing down to one route to help a driver who is at the wrong address.
Without fundamentally changing the UX, I'd like to give our users more control over whether the filter is persistent. Users who like the persistent behavior as-is can keep it, users who don't like persistence can change it to a one-shot filter, and users who sometimes need one or the other can toggle back and forth as needed.