Added love.window.setScreenSaverEnabled and love.window.isScreenSaverEnabled (resolves issue #1088.)

This commit is contained in:
Alex Szpakowski
2015-11-24 22:16:40 -04:00
parent 151c7eca4f
commit 7ebef76b24
7 changed files with 40 additions and 22 deletions
+16
View File
@@ -67,6 +67,9 @@ Window::Window()
if (SDL_InitSubSystem(SDL_INIT_VIDEO) < 0)
throw love::Exception("Could not initialize SDL video subsystem (%s)", SDL_GetError());
// Make sure the screensaver doesn't activate by default.
setScreenSaverEnabled(false);
SDL_version version = {};
SDL_GetVersion(&version);
hasSDL203orEarlier = (version.major == 2 && version.minor == 0 && version.patch <= 3);
@@ -842,6 +845,19 @@ love::image::ImageData *Window::getIcon()
return curMode.icon.get();
}
void Window::setScreenSaverEnabled(bool enable)
{
if (enable)
SDL_EnableScreenSaver();
else
SDL_DisableScreenSaver();
}
bool Window::isScreenSaverEnabled() const
{
return SDL_IsScreenSaverEnabled() != SDL_FALSE;
}
void Window::minimize()
{
if (window != nullptr)
+3
View File
@@ -70,6 +70,9 @@ public:
bool setIcon(love::image::ImageData *imgd);
love::image::ImageData *getIcon();
void setScreenSaverEnabled(bool enable);
bool isScreenSaverEnabled() const;
void minimize();
void maximize();