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;
}
}