[ScreenSaver] Consume input on cancel

This commit is contained in:
placroix74 2019-04-07 08:54:06 -04:00
parent f7af8357f8
commit 9362967880
2 changed files with 8 additions and 7 deletions

View file

@ -139,10 +139,6 @@ void Window::input(InputConfig* config, Input input)
mSleeping = true;
}
}
/*else if(input.value != 0)
{
return;
}*/
}
}
@ -157,7 +153,8 @@ void Window::input(InputConfig* config, Input input)
}
mTimeSinceLastInput = 0;
cancelScreenSaver();
if (cancelScreenSaver())
return;
if(config->getDeviceId() == DEVICE_KEYBOARD && input.value && input.id == SDLK_g && SDL_GetModState() & KMOD_LCTRL && Settings::getInstance()->getBool("Debug"))
{
@ -426,7 +423,7 @@ void Window::startScreenSaver()
}
}
void Window::cancelScreenSaver()
bool Window::cancelScreenSaver()
{
if (mScreenSaver && mRenderScreenSaver)
{
@ -437,7 +434,11 @@ void Window::cancelScreenSaver()
// Tell the GUI components the screensaver has stopped
for(auto i = mGuiStack.cbegin(); i != mGuiStack.cend(); i++)
(*i)->onScreenSaverDeactivate();
return true;
}
return false;
}
void Window::renderScreenSaver()

View file

@ -74,7 +74,7 @@ public:
inline void stopInfoPopup() { if (mInfoPopup) mInfoPopup->stop(); };
void startScreenSaver();
void cancelScreenSaver();
bool cancelScreenSaver();
void renderScreenSaver();
private: