+void InteractiveState::OnResume() {
+ OnFocus();
+}
+
+void InteractiveState::OnPause() {
+ OnBlur();
+}
+
+void InteractiveState::OnFocus() {
+ if (master.GetConfig().input.mouse) {
+ master.GetEnv().window.GrabMouse();
+ }
+ interface.Unlock();
+}
+
+void InteractiveState::OnBlur() {
+ master.GetEnv().window.ReleaseMouse();
+ interface.Lock();