Replace bool state changing flag with a debounced state change
Replace bool state changing flag with a debounced state change

This resolves cases where the proposed mode (by a user change via
framework) gets out of sync with the applied mode. This can happen on
fast (or external) mode changes.

Ensures that a state to be applied from the framework is always applied.

peppy/osu-framework,smoogipooo/osu-framework,ppy/osu-framework,ppy/osu-framework,peppy/osu-framework,ZLima12/osu-framework,smoogipooo/osu-framework,ppy/osu-framework,peppy/osu-framework,ZLima12/osu-framework