void DeviceLock::checkDisplayState(MeeGo::QmDisplayState::DisplayState state) { int lockingDelay = lockingGConfItem->value(-1).toInt(); if (lockingDelay == 0 && state == MeeGo::QmDisplayState::DisplayState::Off && qmLocks->getState(MeeGo::QmLocks::TouchAndKeyboard) == MeeGo::QmLocks::Locked) { // Immediate locking enabled and the display is off: lock setState(Locked); } else if (state == MeeGo::QmDisplayState::DisplayState::Off) { setStateAndSetupLockTimer(); } else if (monoTime.tv_sec) { struct timeval compareTime; tv_get_monotime(&compareTime); if (lockingDelay*60 < tv_diff_in_s(&compareTime, &monoTime)) { setState(Locked); } } }
void DeviceLock::handleDisplayStateChanged(MeeGo::QmDisplayState::DisplayState state) { if (state == m_displayState) return; m_displayState = state; if (lockingDelay == 0 && state == MeeGo::QmDisplayState::DisplayState::Off && !isCallActive) { // Immediate locking enabled and the display is off and not in call: lock setState(Locked); } else if (state == MeeGo::QmDisplayState::DisplayState::Off) { setStateAndSetupLockTimer(); } else if (monoTime.tv_sec && lockingDelay > 0) { struct timeval compareTime; tv_get_monotime(&compareTime); if (lockingDelay*60 < tv_diff_in_s(&compareTime, &monoTime)) { setState(Locked); } setupLockTimer(); } }