summaryrefslogtreecommitdiff
path: root/noncore/settings/netsystemtime/settime.cpp
Side-by-side diff
Diffstat (limited to 'noncore/settings/netsystemtime/settime.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/netsystemtime/settime.cpp21
1 files changed, 15 insertions, 6 deletions
diff --git a/noncore/settings/netsystemtime/settime.cpp b/noncore/settings/netsystemtime/settime.cpp
index 93543cd..e7e604f 100644
--- a/noncore/settings/netsystemtime/settime.cpp
+++ b/noncore/settings/netsystemtime/settime.cpp
@@ -228,18 +228,12 @@ void SetDateTime::writeSettings()
}
void SetDateTime::commitTime()
{
tz->setFocus();
- // really turn off the screensaver before doing anything
- {
- // Needs to be encased in { } so that it deconstructs and sends
- QCopEnvelope disableScreenSaver( "QPE/System", "setScreenSaverIntervals(int,int,int)" );
- disableScreenSaver << 0 << 0 << 0;
- }
// Need to process the QCOP event generated above before proceeding
qApp->processEvents();
// before we progress further, set our TZ!
setenv( "TZ", tz->currentZone(), 1 );
// now set the time...
@@ -247,12 +241,18 @@ void SetDateTime::commitTime()
if ( dt.isValid() ) setTime(dt);
}
void SetDateTime::setTime(QDateTime dt)
{
+ // really turn off the screensaver before doing anything
+ {
+ // Needs to be encased in { } so that it deconstructs and sends
+ QCopEnvelope disableScreenSaver( "QPE/System", "setScreenSaverIntervals(int,int,int)" );
+ disableScreenSaver << 0 << 0 << 0;
+ }
Config cfg("ntp",Config::User);
cfg.setGroup("correction");
int t = TimeConversion::toUTC(dt);
struct timeval myTv;
myTv.tv_sec = t;
cfg.writeEntry("time", t );
@@ -262,16 +262,25 @@ void SetDateTime::setTime(QDateTime dt)
::settimeofday( &myTv, 0 );
Global::writeHWClock();
// since time has changed quickly load in the datebookdb
// to allow the alarm server to get a better grip on itself
// (example re-trigger alarms for when we travel back in time)
DateBookDB db;
+ // Restore screensaver
+ QCopEnvelope enableScreenSaver( "QPE/System", "setScreenSaverIntervals(int,int,int)" );
+ enableScreenSaver << -1 << -1 << -1;
}
void SetDateTime::updateSystem(int i)
{
+ // really turn off the screensaver before doing anything
+ {
+ // Needs to be encased in { } so that it deconstructs and sends
+ QCopEnvelope disableScreenSaver( "QPE/System", "setScreenSaverIntervals(int,int,int)" );
+ disableScreenSaver << 0 << 0 << 0;
+ }
qDebug("SetDateTime::updateSystem(int %i)",i);
writeSettings();
// set the timezone for everyone else...
QCopEnvelope setTimeZone( "QPE/System", "timeChange(QString)" );
setTimeZone << tz->currentZone();