Fix ScreenSaver problem.

This commit is contained in:
sunwen
2022-08-25 14:53:43 +08:00
parent 13a29bcc94
commit b451cb18ec
4 changed files with 21 additions and 7 deletions

View File

@@ -330,7 +330,10 @@ void DialogManager::raiseDeviceError(QObject *parent, QObject *msg) {
dialog->exec();
releaseTopWidget(dialog);
dialog->deleteLater();
mScreenSaverWindow->startLocker();
if (nullptr != mTopWidget && !mTopWidget->inherits("GUIMessageDialog"))
{
mScreenSaverWindow->startLocker();
}
}
// 扫描过程 dialog 只能为最底层并且会被error dialog 清除!

View File

@@ -46,6 +46,7 @@ int main(int argc, char* argv[])
UsctApplication a(argc, argv);
qRegisterMetaType<QPair<QString, uint>>("QPair<QString, uint>");
QString layouts_path = QString(QCoreApplication::applicationDirPath()).append("/layouts");
qputenv("QT_VIRTUALKEYBOARD_LAYOUT_PATH", QByteArray(layouts_path.toStdString().c_str()));

View File

@@ -113,7 +113,7 @@ void ScreenSaverWindow::stop(bool aIsStopLocker)
{
if (aIsStopLocker)
{
Locker::getInstance()->stop();
Locker::getInstance()->setIsEnable(false);
}
else
{
@@ -142,5 +142,5 @@ void ScreenSaverWindow::handleVideoStatusChanged(QMediaPlayer::MediaStatus aStat
void ScreenSaverWindow::startLocker()
{
Locker::getInstance()->start();
Locker::getInstance()->setIsEnable(true);
}

View File

@@ -37,7 +37,11 @@ void Locker::setIsEnable(bool aIsEnable)
mIsEnable = aIsEnable;
if (!mIsEnable)
{
mScreenTimer->stop();
stop();
}
else
{
start();
}
}
@@ -58,12 +62,18 @@ void Locker::setTimer(int aInterval)
{
mCounter = aInterval;
mScreenTimer->stop();
mScreenTimer->start(mCounter);
if (mIsEnable)
{
mScreenTimer->start(mCounter);
}
}
void Locker::refreshTimer()
{
mScreenTimer->stop();
mScreenTimer->start(mCounter);
if (mIsEnable)
{
mScreenTimer->stop();
mScreenTimer->start(mCounter);
}
}
void Locker::stop()