summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmanoil Kotsev <deloptes@gmail.com>2025-03-23 00:25:09 +0000
committerEmanoil Kotsev <deloptes@gmail.com>2025-03-23 00:25:09 +0000
commitabcbdbc16738b2491273b5bf3f80cbd9b5a1b20c (patch)
tree6c87b0c1b5bcbe5d0508083fdf424090f234589b
parent3fd7d084f19c35116ef9ab833c1940e3aa8ece82 (diff)
downloadtdebase-feat/dbusscreensaver.tar.gz
tdebase-feat/dbusscreensaver.zip
emitActiveChanged(true) only in case of successful activationfeat/dbusscreensaver
Signed-off-by: Emanoil Kotsev <deloptes@gmail.com>
-rw-r--r--kdesktop/dbus/screensaver/screensaverInterfaceImpl.cpp27
1 files changed, 17 insertions, 10 deletions
diff --git a/kdesktop/dbus/screensaver/screensaverInterfaceImpl.cpp b/kdesktop/dbus/screensaver/screensaverInterfaceImpl.cpp
index 5321ad16f..48a140a65 100644
--- a/kdesktop/dbus/screensaver/screensaverInterfaceImpl.cpp
+++ b/kdesktop/dbus/screensaver/screensaverInterfaceImpl.cpp
@@ -105,15 +105,17 @@ bool ScreenSaverInterfaceImpl::SetActive(bool &retval, bool b, TQT_DBusError &db
DCOPReply reply = (b == true) ? m_kdesktopdcoprefobj.call("save") : m_kdesktopdcoprefobj.call("quit") ;
if (!reply.isValid())
{
- retval = false;
TQString e("ScreenSaverInterfaceImpl::SetActive: there was some error using DCOP.");
tqDebug(e);
dbuserror = TQT_DBusError::stdFailed(e);
- return false;
+ retval = false;
}
- emitActiveChanged(b);
- retval = true;
- return true;
+ else
+ {
+ emitActiveChanged(b);
+ retval = true;
+ }
+ return retval;
}
bool ScreenSaverInterfaceImpl::Inhibit(const TQString &application_name,
@@ -124,13 +126,18 @@ bool ScreenSaverInterfaceImpl::Inhibit(const TQString &application_name,
//however some other application like kplayer may have disabled the screensaver
//when we call this function
//m_screenSaverEnabled = screenSaverIsEnabled();
+ bool ret = true;
if (m_screenSaverEnabled && m_cookies.isEmpty()) // disable only once
{
if (!setScreenSaverState(false))
{
dbuserror = TQT_DBusError::stdFailed(TQString("Failed to disable the screen saver"));
+ ret = false;
+ }
+ else
+ {
+ emitActiveChanged(true);
}
- emitActiveChanged(true);
}
cookie = m_cookieCount++;
@@ -141,7 +148,7 @@ bool ScreenSaverInterfaceImpl::Inhibit(const TQString &application_name,
tqDebug(TQString("Inhibit: cookie(%1), application(%2), reason(%3)")
.arg(cookie).arg(m_cookies[cookie].name).arg(m_cookies[cookie].value).local8Bit());
- return true;
+ return ret;
}
bool ScreenSaverInterfaceImpl::UnInhibit(TQ_UINT32 cookie, TQT_DBusError &dbuserror)
@@ -167,7 +174,7 @@ bool ScreenSaverInterfaceImpl::UnInhibit(TQ_UINT32 cookie, TQT_DBusError &dbuser
bool ScreenSaverInterfaceImpl::screenSaverIsEnabled()
{
DCOPReply reply = m_kdesktopdcoprefobj.call("isEnabled");
- bool on = false;
+ bool retval = false;
if (!reply.isValid())
{
tqDebug("ScreenSaverInterfaceImpl::screenSaverIsEnabled(): there was some error using DCOP.");
@@ -175,13 +182,13 @@ bool ScreenSaverInterfaceImpl::screenSaverIsEnabled()
}
else
{
- if (!reply.get(on))
+ if (!reply.get(retval))
{
tqDebug("ScreenSaverInterfaceImpl::screenSaverIsEnabled(): there was some error getting the value from DCOPReply");
return false;
}
}
- return on;
+ return retval;
}
bool ScreenSaverInterfaceImpl::setScreenSaverState(bool on)