Because filtering generally requires a requery action - which would wipe out your unsaved changes - we disable the function if we see unsaved changes on your model.
You might separate your actions in some way. Maybe save the changes before you get to the step where you desire additional filtering, or build a second model (on the same object) that is just used for finding the data you want in your filter.
There will be ways around your problem, but I recognize it is a pain.