diff --git a/i18n_ts/bo_CN.ts b/i18n_ts/bo_CN.ts index 14b9702..264f78d 100644 --- a/i18n_ts/bo_CN.ts +++ b/i18n_ts/bo_CN.ts @@ -158,12 +158,12 @@ Face - མིའི་གདོང་། + མིའི་གདོང་། VoicePrint - སྒྲ་རིས། + སྒྲ་རིས། diff --git a/i18n_ts/zh_CN.ts b/i18n_ts/zh_CN.ts index 4087d37..f4c87a6 100644 --- a/i18n_ts/zh_CN.ts +++ b/i18n_ts/zh_CN.ts @@ -101,17 +101,17 @@ Username - 用户名: + 用户名: User name input error! - + 用户名输入错误 login - + 登录 @@ -143,37 +143,37 @@ FingerPrint - 指纹 + 指纹 FingerVein - 指静脉 + 指静脉 Iris - 虹膜 + 虹膜 Face - 人脸 + 人脸识别 VoicePrint - 声纹 + 声纹 Ukey - 安全密钥 + 安全密钥 QRCode - 二维码 + 二维码 Use the bound wechat scanning code or enter the password to log in @@ -276,25 +276,25 @@ BatteryWidget - - BatteryMode - 电池模式 - - - - PowerMode - 电源模式 - - - + Charging... 正在充电... - + fully charged 已充满电 + + + PowerMode + 电源模式 + + + + BatteryMode + 电池模式 + BioDevices @@ -369,32 +369,32 @@ Cancel - + 取消 Confrim - + 确认 The following program is running to prevent the system from reboot! - 以下程序正在运行,阻止系统重启! + 以下程序正在运行,阻止系统重启! The following program is running to prevent the system from shutting down! - 以下程序正在运行,阻止系统关机! + 以下程序正在运行,阻止系统关机! The following program is running to prevent the system from suspend! - 以下程序正在运行,阻止系统进入睡眠! + 以下程序正在运行,阻止系统进入睡眠! The following program is running to prevent the system from hibernate! - 以下程序正在运行,阻止系统进入休眠! + 以下程序正在运行,阻止系统进入休眠! @@ -1910,7 +1910,7 @@ Multiple users are logged in at the same time.Are you sure you want to reboot this system? - 同时有多个用户登录系统,您确定要退出系统吗? + 同时有多个用户登录系统,您确定要退出系统吗? LAN @@ -1921,7 +1921,7 @@ 无线局域网 - + Multiple users are logged in at the same time.Are you sure you want to %1 this system? diff --git a/i18n_ts/zh_HK.ts b/i18n_ts/zh_HK.ts index ffab2bf..494e927 100644 --- a/i18n_ts/zh_HK.ts +++ b/i18n_ts/zh_HK.ts @@ -278,22 +278,22 @@ Charging... - 正在充電... + 正在充電... fully charged - 已充滿電 + 已充滿電 PowerMode - 電源模式 + 電源模式 BatteryMode - 電池模式 + 電池模式 diff --git a/src/lock-dialog/lockdialogperformer.cpp b/src/lock-dialog/lockdialogperformer.cpp index e80460d..b9c0035 100644 --- a/src/lock-dialog/lockdialogperformer.cpp +++ b/src/lock-dialog/lockdialogperformer.cpp @@ -47,7 +47,10 @@ void LockDialogPerformer::initConnections() connect(m_bdHelper, &BackendDbusHelper::currentUserChanged, m_modelLockDialog, &LockDialogModel::onCurUserChanged); connect(m_bdHelper, &BackendDbusHelper::currentSessionChanged, m_modelLockDialog, &LockDialogModel::onCurSessionChanged); - connect(m_bdHelper, &BackendDbusHelper::lidstateChanged, m_modelLockDialog, &LockDialogModel::onLidstateChanged); + connect(m_bdHelper, &BackendDbusHelper::lidstateChanged, this, [=](const QString &lidStatus){ + m_modelLockDialog->updateSleepLockcheck(m_bdHelper->getSleepLockcheck()); + m_modelLockDialog->updateShutdownLockcheck(m_bdHelper->getShutdownLockcheck()); + }); connect(m_bdHelper, &BackendDbusHelper::capslockConfChanged, m_modelLockDialog, &LockDialogModel::onCapslockStateChanged); connect(m_bdHelper, &BackendDbusHelper::batteryStatusChanged, m_modelLockDialog, &LockDialogModel::onBatteryStatusChanged); diff --git a/src/widgets/iconedit.cpp b/src/widgets/iconedit.cpp index 3483f84..d2c4d70 100644 --- a/src/widgets/iconedit.cpp +++ b/src/widgets/iconedit.cpp @@ -132,6 +132,12 @@ bool IconEdit::eventFilter(QObject *obj, QEvent *event) } } + if (obj == m_iconButton && event->type() == QEvent::KeyRelease) { + QKeyEvent *keyEvent = static_cast(event); + if (keyEvent->key() == Qt::Key_Enter || keyEvent->key() == Qt::Key_Return) { + clicked_cb(); + } + } return false; } diff --git a/src/widgets/lockwidget.cpp b/src/widgets/lockwidget.cpp index d3e69ef..298bd56 100644 --- a/src/widgets/lockwidget.cpp +++ b/src/widgets/lockwidget.cpp @@ -232,48 +232,45 @@ void LockWidget::keyReleaseEvent(QKeyEvent *e) onShowVirtualKeyboard(); } + // 监听按键事件实现快捷键功能 + switch (e->key()) { + case Qt::Key_VolumeMute: + Q_EMIT m_modelLockDialog->usdExternalDoAction(MIC_MUTE_KEY); + break; + case Qt::Key_VolumeDown: + Q_EMIT m_modelLockDialog->usdExternalDoAction(VOLUME_DOWN_KEY); + break; + case Qt::Key_VolumeUp: + Q_EMIT m_modelLockDialog->usdExternalDoAction(VOLUME_UP_KEY); + break; + case Qt::Key_MonBrightnessUp: + Q_EMIT m_modelLockDialog->usdExternalDoAction(BRIGHT_UP_KEY); + break; + case Qt::Key_MonBrightnessDown: + Q_EMIT m_modelLockDialog->usdExternalDoAction(BRIGHT_DOWN_KEY); + break; + case Qt::Key_TouchpadOn: + Q_EMIT m_modelLockDialog->usdExternalDoAction(TOUCHPAD_ON_KEY); + break; + case Qt::Key_TouchpadOff: + Q_EMIT m_modelLockDialog->usdExternalDoAction(TOUCHPAD_OFF_KEY); + break; + default: + break; + } - if (m_modelLockDialog->isUseWayland()) { - // 监听按键事件实现快捷键功能 - switch (e->key()) { - case Qt::Key_VolumeMute: - Q_EMIT m_modelLockDialog->usdExternalDoAction(MIC_MUTE_KEY); - break; - case Qt::Key_VolumeDown: - Q_EMIT m_modelLockDialog->usdExternalDoAction(VOLUME_DOWN_KEY); - break; - case Qt::Key_VolumeUp: - Q_EMIT m_modelLockDialog->usdExternalDoAction(VOLUME_UP_KEY); - break; - case Qt::Key_MonBrightnessUp: - Q_EMIT m_modelLockDialog->usdExternalDoAction(BRIGHT_UP_KEY); - break; - case Qt::Key_MonBrightnessDown: - Q_EMIT m_modelLockDialog->usdExternalDoAction(BRIGHT_DOWN_KEY); - break; - case Qt::Key_TouchpadOn: - Q_EMIT m_modelLockDialog->usdExternalDoAction(TOUCHPAD_ON_KEY); - break; - case Qt::Key_TouchpadOff: - Q_EMIT m_modelLockDialog->usdExternalDoAction(TOUCHPAD_OFF_KEY); - break; - default: - break; - } - - // 实现锁屏截图功能 - QKeySequence keySequence = QKeySequence(e->modifiers() + e->key()); - if (keySequence == listFromString(m_areaScreenShot)) { - Q_EMIT m_modelLockDialog->usdExternalDoAction(AREA_SCREENSHOT_KEY); - } else if (keySequence == listFromString(m_areaScreenShot2)) { - Q_EMIT m_modelLockDialog->usdExternalDoAction(AREA_SCREENSHOT_KEY); - } else if (keySequence == listFromString(m_screenShot)) { - Q_EMIT m_modelLockDialog->usdExternalDoAction(SCREENSHOT_KEY); - } else if (keySequence == listFromString(m_screenShot2)) { - Q_EMIT m_modelLockDialog->usdExternalDoAction(SCREENSHOT_KEY); - } else if (keySequence == listFromString(m_windowScreenshot)) { - Q_EMIT m_modelLockDialog->usdExternalDoAction(WINDOW_SCREENSHOT_KEY); - } + // 实现锁屏截图功能 + QKeySequence keySequence = QKeySequence(e->modifiers() + e->key()); + if (keySequence == listFromString(m_areaScreenShot)) { + Q_EMIT m_modelLockDialog->usdExternalDoAction(AREA_SCREENSHOT_KEY); + } else if (keySequence == listFromString(m_areaScreenShot2)) { + Q_EMIT m_modelLockDialog->usdExternalDoAction(AREA_SCREENSHOT_KEY); + } else if (keySequence == listFromString(m_screenShot)) { + Q_EMIT m_modelLockDialog->usdExternalDoAction(SCREENSHOT_KEY); + } else if (keySequence == listFromString(m_screenShot2)) { + Q_EMIT m_modelLockDialog->usdExternalDoAction(SCREENSHOT_KEY); + } else if (keySequence == listFromString(m_windowScreenshot)) { + Q_EMIT m_modelLockDialog->usdExternalDoAction(WINDOW_SCREENSHOT_KEY); } } @@ -852,16 +849,24 @@ void LockWidget::onShowVirtualKeyboard() void LockWidget::onShowPowerListWidget() { - if (m_powerListWidget->isHidden()) { m_powerListWidget->show(); authDialog->hide(); m_powerListWidget->clearFocus(); + buttonListWidget->clearFocus(); } else { m_powerListWidget->hide(); authDialog->show(); authDialog->setFocus(); } + + if (m_isInhibitStatus) { + authDialog->hide(); + m_powerListWidget->hide(); + buttonListWidget->hide(); + m_timeWidget->hide(); + } + if (m_userListWidget && m_userListWidget->isVisible()) m_userListWidget->hide(); if (m_virtualKeyboardWidget && m_virtualKeyboardWidget->isVisible()) @@ -916,7 +921,7 @@ void LockWidget::onShowInhibitWarning(QStringList list, int type) m_blockWidget->setGeometry(this->geometry()); m_blockWidget->setWarning(list, type); m_blockWidget->show(); - m_powerListWidget->hide(); + m_isInhibitStatus = true; } void LockWidget::onMulUsersLogined(QString inhibitType) @@ -925,7 +930,7 @@ void LockWidget::onMulUsersLogined(QString inhibitType) m_blockWidget->setGeometry(this->geometry()); m_blockWidget->setTips(tr("Multiple users are logged in at the same time.Are you sure you want to %1 this system?").arg(inhibitType)); m_blockWidget->show(); - m_powerListWidget->hide(); + m_isInhibitStatus = true; } void LockWidget::onConfirmBtnClicked() @@ -934,13 +939,17 @@ void LockWidget::onConfirmBtnClicked() m_powerListWidget->hide(); authDialog->show(); buttonListWidget->show(); + m_isInhibitStatus = false; Q_EMIT m_modelLockDialog->setPowerManager(m_inhibitType); } void LockWidget::onCancelBtnClicked() { + m_isInhibitStatus = false; m_blockWidget->hide(); m_powerListWidget->show(); + buttonListWidget->show(); + m_timeWidget->show(); } void LockWidget::onCustomRequestAccount(QString account) diff --git a/src/widgets/lockwidget.h b/src/widgets/lockwidget.h index 0632647..3fedf26 100644 --- a/src/widgets/lockwidget.h +++ b/src/widgets/lockwidget.h @@ -153,6 +153,9 @@ private: MyNetworkWidget *m_networkWidget = nullptr; BatteryWidget *batteryWidget = nullptr; VirtualKeyboardWidget *m_virtualKeyboardWidget = nullptr; + + // 当前是否处于阻塞状态 + bool m_isInhibitStatus = false; BlockWidget *m_blockWidget = nullptr; QString m_inhibitType; diff --git a/src/widgets/powerlistwidget.cpp b/src/widgets/powerlistwidget.cpp index 3d72c0f..7428c33 100644 --- a/src/widgets/powerlistwidget.cpp +++ b/src/widgets/powerlistwidget.cpp @@ -117,7 +117,7 @@ void PowerListWidget::onListItemClicked(QListWidgetItem *item) Q_EMIT showInhibitWarning(shutdownLockcheck, powerBtnList[i].m_inhibitType); break; } else if (m_modelLockDialog->getLoggedInUsersCount() > 1) { - Q_EMIT mulUsersLogined(powerBtnList[i].m_strName); + Q_EMIT mulUsersLogined(powerBtnList[i].setFuncName); break; } }