The Action contains:
There are 2 problems at the moment:
1. When the user hits "go" or "enter" the checkbox are checked again when the result is shown
2. If a filter is defined where the search field is not used, it doesn't work
too much hassle I think. You can try to hijack any POST message, analyze it, and if it's about p_widget_action=FILTER you'd stop the action and interfere with an AJAX call to APEX_UTIL.IR_FILTER or IR_RESET. After the AJAX request has returnd (synchronously), you can fire the original POST again which sets the new filter.
Hmm. Sounds to me like you'd better ask the client if he is willing to pay for that sort of convenience.