2 * Copyright (C) 2017-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
9 #include "OSScreenSaverX11.h"
13 using namespace std::chrono_literals
;
15 COSScreenSaverX11::COSScreenSaverX11(Display
* dpy
)
16 : m_dpy(dpy
), m_screensaverResetTimer(std::bind(&COSScreenSaverX11::ResetScreenSaver
, this))
21 void COSScreenSaverX11::Inhibit()
23 // disallow the screensaver by periodically calling XResetScreenSaver(),
24 // for some reason setting a 0 timeout with XSetScreenSaver doesn't work with gnome
25 m_screensaverResetTimer
.Start(5000ms
, true);
28 void COSScreenSaverX11::Uninhibit()
30 m_screensaverResetTimer
.Stop(true);
33 void COSScreenSaverX11::ResetScreenSaver()
35 XResetScreenSaver(m_dpy
);