merge from upstream/3.22.1.3
This commit is contained in:
parent
cd9e86eb9c
commit
31b191d345
|
@ -5,12 +5,10 @@ find_package(Qt5 COMPONENTS Core Widgets DBus X11Extras Xml Network Svg)
|
|||
find_package(PkgConfig REQUIRED)
|
||||
find_package(OpenCV REQUIRED)
|
||||
find_package(PkgConfig)
|
||||
find_package(KF5Screen REQUIRED)
|
||||
find_package(KF5Wayland REQUIRED)
|
||||
|
||||
pkg_check_modules(GIOUNIX2 REQUIRED gio-unix-2.0)
|
||||
pkg_check_modules(GLIB2 REQUIRED glib-2.0 gio-2.0)
|
||||
pkg_check_modules(KScreen REQUIRED kscreen2)
|
||||
pkg_check_modules(kylin-nm-base REQUIRED kylin-nm-base)
|
||||
|
||||
|
||||
# 是否是intel项目
|
||||
option (USE_INTEL "intel项目" OFF)
|
||||
|
|
|
@ -22,7 +22,6 @@
|
|||
#include <QSettings>
|
||||
#include <QMimeDatabase>
|
||||
#include <QPainter>
|
||||
#include <QPainterPath>
|
||||
#include <QFileInfo>
|
||||
#include <QFontMetrics>
|
||||
#include "commonfunc.h"
|
||||
|
|
|
@ -2470,7 +2470,6 @@ void KylinNM::enWifiDone()
|
|||
|
||||
qDebug()<<"debug: already turn on the switch of wifi network";
|
||||
syslog(LOG_DEBUG, "Already turn on the switch of wifi network");
|
||||
QTimer::singleShot(200, this, &KylinNM::onConnectChanged);
|
||||
}
|
||||
void KylinNM::disWifiDone()
|
||||
{
|
||||
|
|
|
@ -4,4 +4,3 @@ install(FILES ukui-screensaver.directory DESTINATION /usr/share/desktop-director
|
|||
install(FILES ukui-screensavers.menu DESTINATION /etc/xdg/menus)
|
||||
install(FILES ukui-screensaver-qt DESTINATION /etc/pam.d)
|
||||
install(FILES screensaver-startup.sh DESTINATION /usr/bin)
|
||||
install(FILES ukui-screensaver-dialog.desktop DESTINATION /usr/share/applications)
|
||||
|
|
|
@ -166,7 +166,7 @@
|
|||
<description>Allow the session status message to be displayed when the screen is locked.</description>
|
||||
</key>
|
||||
<key name="background" type="s">
|
||||
<default>'/usr/share/backgrounds/1-openkylin.jpg'</default>
|
||||
<default>'/usr/share/backgrounds/1-warty-final-ubuntukylin.jpg'</default>
|
||||
<summary>the background iamge of lockscreen</summary>
|
||||
<description>Allow the user to set the background iamge of lockscreen.</description>
|
||||
</key>
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Lockscreen Dialog
|
||||
Name[tr]=Ekran pencere
|
||||
Name[zh_CN]=锁屏窗口程序
|
||||
Name[zh_HK]=鎖屏窗口程式
|
||||
Name[zh_TW]=鎖屏窗口程式
|
||||
Comment[tr]=Ekran kilidini ve kurtarıcı göster
|
||||
Comment[zh_CN]=展示屏幕锁定和保护程序
|
||||
Comment[zh_TW]=展示屏幕鎖定和保護程式
|
||||
Exec=/usr/bin/ukui-screensaver-dialog
|
||||
NoDisplay=true
|
||||
OnlyShowIn=UKUI
|
||||
X-KDE-Wayland-Interfaces=org_kde_plasma_window_management,org_kde_kwin_keystate
|
||||
|
|
@ -17,4 +17,3 @@ X-UKUI-Bugzilla-Product=ukui-screensaver
|
|||
X-UKUI-Bugzilla-Component=general
|
||||
X-UKUI-Bugzilla-Version=1.0.0
|
||||
OnlyShowIn=UKUI
|
||||
X-UKUI-AutoRestart=true
|
||||
|
|
198
i18n_ts/bo.ts
198
i18n_ts/bo.ts
|
@ -4,108 +4,108 @@
|
|||
<context>
|
||||
<name>AuthDialog</name>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="653"/>
|
||||
<location filename="../src/authdialog.cpp" line="656"/>
|
||||
<source>Authentication failure, Please try again</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="251"/>
|
||||
<location filename="../src/authdialog.cpp" line="252"/>
|
||||
<location filename="../src/authdialog.cpp" line="315"/>
|
||||
<location filename="../src/authdialog.cpp" line="248"/>
|
||||
<location filename="../src/authdialog.cpp" line="249"/>
|
||||
<location filename="../src/authdialog.cpp" line="316"/>
|
||||
<location filename="../src/authdialog.cpp" line="317"/>
|
||||
<source>Please try again in %1 minutes.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="260"/>
|
||||
<location filename="../src/authdialog.cpp" line="261"/>
|
||||
<location filename="../src/authdialog.cpp" line="324"/>
|
||||
<location filename="../src/authdialog.cpp" line="258"/>
|
||||
<location filename="../src/authdialog.cpp" line="259"/>
|
||||
<location filename="../src/authdialog.cpp" line="325"/>
|
||||
<location filename="../src/authdialog.cpp" line="326"/>
|
||||
<source>Please try again in %1 seconds.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="268"/>
|
||||
<location filename="../src/authdialog.cpp" line="269"/>
|
||||
<location filename="../src/authdialog.cpp" line="270"/>
|
||||
<location filename="../src/authdialog.cpp" line="333"/>
|
||||
<location filename="../src/authdialog.cpp" line="334"/>
|
||||
<location filename="../src/authdialog.cpp" line="335"/>
|
||||
<source>Account locked permanently.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="449"/>
|
||||
<location filename="../src/authdialog.cpp" line="455"/>
|
||||
<source>Verify face recognition or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="454"/>
|
||||
<location filename="../src/authdialog.cpp" line="460"/>
|
||||
<source>Press fingerprint or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="459"/>
|
||||
<location filename="../src/authdialog.cpp" line="465"/>
|
||||
<source>Verify voiceprint or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="464"/>
|
||||
<location filename="../src/authdialog.cpp" line="470"/>
|
||||
<source>Verify finger vein or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="469"/>
|
||||
<location filename="../src/authdialog.cpp" line="475"/>
|
||||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="474"/>
|
||||
<location filename="../src/authdialog.cpp" line="480"/>
|
||||
<source>Use the bound wechat scanning code or enter the password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="526"/>
|
||||
<location filename="../src/authdialog.cpp" line="527"/>
|
||||
<location filename="../src/authdialog.cpp" line="533"/>
|
||||
<location filename="../src/authdialog.cpp" line="534"/>
|
||||
<source>Password cannot be empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="614"/>
|
||||
<location filename="../src/authdialog.cpp" line="617"/>
|
||||
<source>Password </source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="616"/>
|
||||
<location filename="../src/authdialog.cpp" line="619"/>
|
||||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="678"/>
|
||||
<location filename="../src/authdialog.cpp" line="682"/>
|
||||
<source>Login</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="684"/>
|
||||
<location filename="../src/authdialog.cpp" line="694"/>
|
||||
<source>Retry</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="912"/>
|
||||
<location filename="../src/authdialog.cpp" line="916"/>
|
||||
<source>Failed to verify %1, please enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="916"/>
|
||||
<location filename="../src/authdialog.cpp" line="920"/>
|
||||
<source>Unable to verify %1, please enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="922"/>
|
||||
<location filename="../src/authdialog.cpp" line="926"/>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="933"/>
|
||||
<source>NET Exception</source>
|
||||
<location filename="../src/authdialog.cpp" line="937"/>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -253,32 +253,32 @@
|
|||
<context>
|
||||
<name>DeviceType</name>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="42"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="61"/>
|
||||
<source>FingerPrint</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="44"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="63"/>
|
||||
<source>FingerVein</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="46"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="65"/>
|
||||
<source>Iris</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="48"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="67"/>
|
||||
<source>Face</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="50"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="69"/>
|
||||
<source>VoicePrint</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="52"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="71"/>
|
||||
<source>QRCode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -327,7 +327,6 @@
|
|||
<name>DlgConnHidWifi</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifi.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifi.h" line="122"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -381,7 +380,6 @@
|
|||
<name>DlgConnHidWifiLeap</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifileap.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifileap.h" line="149"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -465,7 +463,6 @@
|
|||
<name>DlgConnHidWifiSecFast</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecfast.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecfast.h" line="216"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -600,7 +597,6 @@
|
|||
<name>DlgConnHidWifiSecLeap</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecleap.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecleap.h" line="161"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -699,7 +695,6 @@
|
|||
<name>DlgConnHidWifiSecPeap</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecpeap.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecpeap.h" line="249"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -849,7 +844,6 @@
|
|||
<name>DlgConnHidWifiSecPwd</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecpwd.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecpwd.h" line="161"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -948,7 +942,6 @@
|
|||
<name>DlgConnHidWifiSecTls</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisectls.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisectls.h" line="250"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1092,7 +1085,6 @@
|
|||
<name>DlgConnHidWifiSecTunnelTLS</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisectunneltls.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisectunneltls.h" line="237"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1227,7 +1219,6 @@
|
|||
<name>DlgConnHidWifiWep</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifiwep.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifiwep.h" line="163"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1331,7 +1322,6 @@
|
|||
<name>DlgConnHidWifiWpa</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifiwpa.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifiwpa.h" line="137"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1390,7 +1380,6 @@
|
|||
<name>DlgHotspotCreate</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/hot-spot/dlghotspotcreate.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlghotspotcreate.h" line="89"/>
|
||||
<source>Dialog</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1473,7 +1462,6 @@
|
|||
<name>KeyboardWidget</name>
|
||||
<message>
|
||||
<location filename="../VirtualKeyboard/src/keyboardwidget.ui" line="29"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/VirtualKeyboard/VirtualKeyboard_autogen/include/ui_keyboardwidget.h" line="806"/>
|
||||
<source>KeyboardWidget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1482,7 +1470,6 @@
|
|||
<name>KylinNM</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_kylinnm.h" line="136"/>
|
||||
<source>kylin-nm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1617,32 +1604,44 @@
|
|||
<name>LockWidget</name>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/src/ui_lockwidget.h" line="80"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="55"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/src/ui_lockwidget.h" line="83"/>
|
||||
<location filename="../src/lockwidget.ui" line="72"/>
|
||||
<source>Date</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="48"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/src/ui_lockwidget.h" line="82"/>
|
||||
<location filename="../src/lockwidget.ui" line="65"/>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="523"/>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="727"/>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="729"/>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="49"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="57"/>
|
||||
<source>Login Options</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="504"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="540"/>
|
||||
<source>Identify device removed!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1661,7 +1660,6 @@
|
|||
<name>OneConnForm</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/oneconnform.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_oneconnform.h" line="150"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1723,7 +1721,6 @@
|
|||
<name>OneLancForm</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/onelancform.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_onelancform.h" line="127"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1824,35 +1821,39 @@
|
|||
<context>
|
||||
<name>PowerManager</name>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="217"/>
|
||||
<location filename="../src/powermanager.cpp" line="307"/>
|
||||
<source>Log Out</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="200"/>
|
||||
<location filename="../src/powermanager.cpp" line="290"/>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="235"/>
|
||||
<location filename="../src/powermanager.cpp" line="494"/>
|
||||
<source>Restart</source>
|
||||
<location filename="../src/powermanager.cpp" line="325"/>
|
||||
<location filename="../src/powermanager.cpp" line="648"/>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="255"/>
|
||||
<location filename="../src/powermanager.cpp" line="510"/>
|
||||
<location filename="../src/powermanager.cpp" line="345"/>
|
||||
<source>Power Off</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="558"/>
|
||||
<source>Suspend</source>
|
||||
<location filename="../src/powermanager.cpp" line="666"/>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="534"/>
|
||||
<source>Sleep</source>
|
||||
<location filename="../src/powermanager.cpp" line="692"/>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="719"/>
|
||||
<source>Suspend</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1872,17 +1873,17 @@
|
|||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="140"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="142"/>
|
||||
<source>Picture does not exist</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1086"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1199"/>
|
||||
<source>View</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1242"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1364"/>
|
||||
<source>You have new notification</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1890,8 +1891,51 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<location filename="../screensaver/sleeptime.cpp" line="70"/>
|
||||
<source>You have rested:</source>
|
||||
<location filename="../screensaver/sleeptime.cpp" line="64"/>
|
||||
<source>You have rested</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SureWindow</name>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="14"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="56"/>
|
||||
<source>TextLabel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="157"/>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="176"/>
|
||||
<source>Confirm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="40"/>
|
||||
<source>The following program is running to prevent the system from reboot!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="43"/>
|
||||
<source>The following program is running to prevent the system from shutting down!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="46"/>
|
||||
<source>The following program is running to prevent the system from suspend!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="49"/>
|
||||
<source>The following program is running to prevent the system from hibernate!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -2043,8 +2087,8 @@
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-command.cpp" line="47"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="184"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="186"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="164"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="166"/>
|
||||
<source>lock the screen immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2064,23 +2108,23 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="179"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="159"/>
|
||||
<source>Dialog for the ukui ScreenSaver.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="188"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="168"/>
|
||||
<source>activated by session idle signal</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="190"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="194"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="170"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="174"/>
|
||||
<source>lock the screen and show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="192"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="172"/>
|
||||
<source>show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
|
1989
i18n_ts/bo_CN.ts
1989
i18n_ts/bo_CN.ts
File diff suppressed because it is too large
Load Diff
|
@ -83,10 +83,6 @@
|
|||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NET Exception</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -107,6 +103,10 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1376,6 +1376,18 @@
|
|||
<source>SwitchUser</source>
|
||||
<translation type="vanished">Cambiar de usuario</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
|
@ -1534,10 +1546,6 @@
|
|||
<source>Log Out</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Restart</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Power Off</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -1547,11 +1555,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1584,7 +1600,42 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<source>You have rested:</source>
|
||||
<source>You have rested</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SureWindow</name>
|
||||
<message>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished">Formar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>TextLabel</source>
|
||||
<translation type="unfinished">TextLabel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Confirm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from reboot!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from shutting down!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from suspend!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from hibernate!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
|
|
@ -83,10 +83,6 @@
|
|||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NET Exception</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -107,6 +103,10 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1376,6 +1376,18 @@
|
|||
<source>SwitchUser</source>
|
||||
<translation type="vanished">Changer d'utilisateur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
|
@ -1534,10 +1546,6 @@
|
|||
<source>Log Out</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Restart</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Power Off</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -1547,11 +1555,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1584,7 +1600,42 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<source>You have rested:</source>
|
||||
<source>You have rested</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SureWindow</name>
|
||||
<message>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished">Forme</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>TextLabel</source>
|
||||
<translation type="unfinished">TextLabel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Confirm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from reboot!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from shutting down!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from suspend!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from hibernate!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
|
|
@ -83,10 +83,6 @@
|
|||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NET Exception</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -107,6 +103,10 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1376,6 +1376,18 @@
|
|||
<source>SwitchUser</source>
|
||||
<translation type="vanished">Mudar de utilizador</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
|
@ -1534,10 +1546,6 @@
|
|||
<source>Log Out</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Restart</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Power Off</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -1547,11 +1555,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1584,7 +1600,42 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<source>You have rested:</source>
|
||||
<source>You have rested</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SureWindow</name>
|
||||
<message>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished">Formato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>TextLabel</source>
|
||||
<translation type="unfinished">TextLabel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Confirm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from reboot!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from shutting down!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from suspend!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from hibernate!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
|
|
@ -83,10 +83,6 @@
|
|||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>NET Exception</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -107,6 +103,10 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1376,6 +1376,18 @@
|
|||
<source>SwitchUser</source>
|
||||
<translation type="vanished">Сменить пользователя</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
|
@ -1534,10 +1546,6 @@
|
|||
<source>Log Out</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Restart</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Power Off</source>
|
||||
<translation type="unfinished"></translation>
|
||||
|
@ -1547,11 +1555,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1584,7 +1600,42 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<source>You have rested:</source>
|
||||
<source>You have rested</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SureWindow</name>
|
||||
<message>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished">форма</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>TextLabel</source>
|
||||
<translation type="unfinished">TextLabel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Confirm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from reboot!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from shutting down!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from suspend!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The following program is running to prevent the system from hibernate!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
|
202
i18n_ts/tr.ts
202
i18n_ts/tr.ts
|
@ -16,7 +16,7 @@
|
|||
<translation type="obsolete">Parola</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="684"/>
|
||||
<location filename="../src/authdialog.cpp" line="694"/>
|
||||
<source>Retry</source>
|
||||
<translation type="unfinished">Yeniden Dene</translation>
|
||||
</message>
|
||||
|
@ -41,103 +41,103 @@
|
|||
<translation type="vanished">Kimlik doğrulama hatası, hala %1 kalan denemen var</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="653"/>
|
||||
<location filename="../src/authdialog.cpp" line="656"/>
|
||||
<source>Authentication failure, Please try again</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="251"/>
|
||||
<location filename="../src/authdialog.cpp" line="252"/>
|
||||
<location filename="../src/authdialog.cpp" line="315"/>
|
||||
<location filename="../src/authdialog.cpp" line="248"/>
|
||||
<location filename="../src/authdialog.cpp" line="249"/>
|
||||
<location filename="../src/authdialog.cpp" line="316"/>
|
||||
<location filename="../src/authdialog.cpp" line="317"/>
|
||||
<source>Please try again in %1 minutes.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="260"/>
|
||||
<location filename="../src/authdialog.cpp" line="261"/>
|
||||
<location filename="../src/authdialog.cpp" line="324"/>
|
||||
<location filename="../src/authdialog.cpp" line="258"/>
|
||||
<location filename="../src/authdialog.cpp" line="259"/>
|
||||
<location filename="../src/authdialog.cpp" line="325"/>
|
||||
<location filename="../src/authdialog.cpp" line="326"/>
|
||||
<source>Please try again in %1 seconds.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="268"/>
|
||||
<location filename="../src/authdialog.cpp" line="269"/>
|
||||
<location filename="../src/authdialog.cpp" line="270"/>
|
||||
<location filename="../src/authdialog.cpp" line="333"/>
|
||||
<location filename="../src/authdialog.cpp" line="334"/>
|
||||
<location filename="../src/authdialog.cpp" line="335"/>
|
||||
<source>Account locked permanently.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="449"/>
|
||||
<location filename="../src/authdialog.cpp" line="455"/>
|
||||
<source>Verify face recognition or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="454"/>
|
||||
<location filename="../src/authdialog.cpp" line="460"/>
|
||||
<source>Press fingerprint or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="459"/>
|
||||
<location filename="../src/authdialog.cpp" line="465"/>
|
||||
<source>Verify voiceprint or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="464"/>
|
||||
<location filename="../src/authdialog.cpp" line="470"/>
|
||||
<source>Verify finger vein or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="469"/>
|
||||
<location filename="../src/authdialog.cpp" line="475"/>
|
||||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="474"/>
|
||||
<location filename="../src/authdialog.cpp" line="480"/>
|
||||
<source>Use the bound wechat scanning code or enter the password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="526"/>
|
||||
<location filename="../src/authdialog.cpp" line="527"/>
|
||||
<location filename="../src/authdialog.cpp" line="533"/>
|
||||
<location filename="../src/authdialog.cpp" line="534"/>
|
||||
<source>Password cannot be empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="614"/>
|
||||
<location filename="../src/authdialog.cpp" line="617"/>
|
||||
<source>Password </source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="616"/>
|
||||
<location filename="../src/authdialog.cpp" line="619"/>
|
||||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="678"/>
|
||||
<location filename="../src/authdialog.cpp" line="682"/>
|
||||
<source>Login</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="912"/>
|
||||
<location filename="../src/authdialog.cpp" line="916"/>
|
||||
<source>Failed to verify %1, please enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="916"/>
|
||||
<location filename="../src/authdialog.cpp" line="920"/>
|
||||
<source>Unable to verify %1, please enter password to unlock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="922"/>
|
||||
<location filename="../src/authdialog.cpp" line="926"/>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="933"/>
|
||||
<source>NET Exception</source>
|
||||
<location filename="../src/authdialog.cpp" line="937"/>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
@ -335,32 +335,32 @@
|
|||
<context>
|
||||
<name>DeviceType</name>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="42"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="61"/>
|
||||
<source>FingerPrint</source>
|
||||
<translation type="unfinished">Parmak İzi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="44"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="63"/>
|
||||
<source>FingerVein</source>
|
||||
<translation type="unfinished">Parmak Damarı</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="46"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="65"/>
|
||||
<source>Iris</source>
|
||||
<translation type="unfinished">Göz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="48"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="67"/>
|
||||
<source>Face</source>
|
||||
<translation type="unfinished">Yüz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="50"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="69"/>
|
||||
<source>VoicePrint</source>
|
||||
<translation type="unfinished">Ses İzi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="52"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="71"/>
|
||||
<source>QRCode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -409,7 +409,6 @@
|
|||
<name>DlgConnHidWifi</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifi.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifi.h" line="122"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -463,7 +462,6 @@
|
|||
<name>DlgConnHidWifiLeap</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifileap.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifileap.h" line="149"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -547,7 +545,6 @@
|
|||
<name>DlgConnHidWifiSecFast</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecfast.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecfast.h" line="216"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -682,7 +679,6 @@
|
|||
<name>DlgConnHidWifiSecLeap</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecleap.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecleap.h" line="161"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -781,7 +777,6 @@
|
|||
<name>DlgConnHidWifiSecPeap</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecpeap.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecpeap.h" line="249"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -931,7 +926,6 @@
|
|||
<name>DlgConnHidWifiSecPwd</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisecpwd.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisecpwd.h" line="161"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1030,7 +1024,6 @@
|
|||
<name>DlgConnHidWifiSecTls</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisectls.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisectls.h" line="250"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1174,7 +1167,6 @@
|
|||
<name>DlgConnHidWifiSecTunnelTLS</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifisectunneltls.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifisectunneltls.h" line="237"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1309,7 +1301,6 @@
|
|||
<name>DlgConnHidWifiWep</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifiwep.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifiwep.h" line="163"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1413,7 +1404,6 @@
|
|||
<name>DlgConnHidWifiWpa</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/wireless-security/dlgconnhidwifiwpa.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlgconnhidwifiwpa.h" line="137"/>
|
||||
<source>Connect to Hidden Wi-Fi Network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1472,7 +1462,6 @@
|
|||
<name>DlgHotspotCreate</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/hot-spot/dlghotspotcreate.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_dlghotspotcreate.h" line="89"/>
|
||||
<source>Dialog</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1555,7 +1544,6 @@
|
|||
<name>KeyboardWidget</name>
|
||||
<message>
|
||||
<location filename="../VirtualKeyboard/src/keyboardwidget.ui" line="29"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/VirtualKeyboard/VirtualKeyboard_autogen/include/ui_keyboardwidget.h" line="806"/>
|
||||
<source>KeyboardWidget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1564,7 +1552,6 @@
|
|||
<name>KylinNM</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_kylinnm.h" line="136"/>
|
||||
<source>kylin-nm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1699,19 +1686,16 @@
|
|||
<name>LockWidget</name>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/src/ui_lockwidget.h" line="80"/>
|
||||
<source>Form</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="55"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/src/ui_lockwidget.h" line="83"/>
|
||||
<location filename="../src/lockwidget.ui" line="72"/>
|
||||
<source>Date</source>
|
||||
<translation type="unfinished">Tarih</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="48"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/src/ui_lockwidget.h" line="82"/>
|
||||
<location filename="../src/lockwidget.ui" line="65"/>
|
||||
<source>Time</source>
|
||||
<translation type="unfinished">Zaman</translation>
|
||||
</message>
|
||||
|
@ -1723,11 +1707,26 @@
|
|||
<source>SwitchUser</source>
|
||||
<translation type="vanished">Kullanıcı Değiştir</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="523"/>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="727"/>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="729"/>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="49"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="57"/>
|
||||
<source>Login Options</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1736,7 +1735,7 @@
|
|||
<translation type="obsolete">Parola</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="504"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="540"/>
|
||||
<source>Identify device removed!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1755,7 +1754,6 @@
|
|||
<name>OneConnForm</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/oneconnform.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_oneconnform.h" line="150"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1817,7 +1815,6 @@
|
|||
<name>OneLancForm</name>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/onelancform.ui" line="14"/>
|
||||
<location filename="../obj-x86_64-linux-gnu/KylinNM/ui_onelancform.h" line="127"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1918,7 +1915,7 @@
|
|||
<context>
|
||||
<name>PowerManager</name>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="200"/>
|
||||
<location filename="../src/powermanager.cpp" line="290"/>
|
||||
<source>lock</source>
|
||||
<translation>kilit</translation>
|
||||
</message>
|
||||
|
@ -1947,30 +1944,38 @@
|
|||
<translation type="obsolete">Kullanıcı Değiştir</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="217"/>
|
||||
<location filename="../src/powermanager.cpp" line="307"/>
|
||||
<source>Log Out</source>
|
||||
<translation type="unfinished">Çıkış</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="235"/>
|
||||
<location filename="../src/powermanager.cpp" line="494"/>
|
||||
<source>Restart</source>
|
||||
<translation type="unfinished">Yeniden Başlat</translation>
|
||||
<translation type="obsolete">Yeniden Başlat</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="255"/>
|
||||
<location filename="../src/powermanager.cpp" line="510"/>
|
||||
<location filename="../src/powermanager.cpp" line="325"/>
|
||||
<location filename="../src/powermanager.cpp" line="648"/>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="345"/>
|
||||
<source>Power Off</source>
|
||||
<translation type="unfinished">Bilgisayarı Kapat</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="558"/>
|
||||
<source>Suspend</source>
|
||||
<location filename="../src/powermanager.cpp" line="666"/>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="534"/>
|
||||
<source>Sleep</source>
|
||||
<location filename="../src/powermanager.cpp" line="692"/>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="719"/>
|
||||
<source>Suspend</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1998,17 +2003,17 @@
|
|||
<translation type="obsolete">çıkış</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="140"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="142"/>
|
||||
<source>Picture does not exist</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1086"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1199"/>
|
||||
<source>View</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1242"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1364"/>
|
||||
<source>You have new notification</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2024,8 +2029,51 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<location filename="../screensaver/sleeptime.cpp" line="70"/>
|
||||
<source>You have rested:</source>
|
||||
<location filename="../screensaver/sleeptime.cpp" line="64"/>
|
||||
<source>You have rested</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SureWindow</name>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="14"/>
|
||||
<source>Form</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="56"/>
|
||||
<source>TextLabel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="157"/>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="176"/>
|
||||
<source>Confirm</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="40"/>
|
||||
<source>The following program is running to prevent the system from reboot!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="43"/>
|
||||
<source>The following program is running to prevent the system from shutting down!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="46"/>
|
||||
<source>The following program is running to prevent the system from suspend!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="49"/>
|
||||
<source>The following program is running to prevent the system from hibernate!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -2157,8 +2205,8 @@
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-command.cpp" line="47"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="184"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="186"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="164"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="166"/>
|
||||
<source>lock the screen immediately</source>
|
||||
<translation type="unfinished">Ekranı hemen kilitle</translation>
|
||||
</message>
|
||||
|
@ -2178,23 +2226,23 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="179"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="159"/>
|
||||
<source>Dialog for the ukui ScreenSaver.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="188"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="168"/>
|
||||
<source>activated by session idle signal</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="190"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="194"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="170"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="174"/>
|
||||
<source>lock the screen and show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="192"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="172"/>
|
||||
<source>show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
|
112
i18n_ts/zh_CN.ts
112
i18n_ts/zh_CN.ts
|
@ -16,7 +16,7 @@
|
|||
<translation type="obsolete">使用密码认证</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="681"/>
|
||||
<location filename="../src/authdialog.cpp" line="696"/>
|
||||
<source>Retry</source>
|
||||
<translation>重试</translation>
|
||||
</message>
|
||||
|
@ -45,66 +45,66 @@
|
|||
<translation type="vanished">账户锁定%1分钟由于%2次错误尝试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="251"/>
|
||||
<location filename="../src/authdialog.cpp" line="252"/>
|
||||
<location filename="../src/authdialog.cpp" line="315"/>
|
||||
<location filename="../src/authdialog.cpp" line="248"/>
|
||||
<location filename="../src/authdialog.cpp" line="249"/>
|
||||
<location filename="../src/authdialog.cpp" line="316"/>
|
||||
<location filename="../src/authdialog.cpp" line="317"/>
|
||||
<source>Please try again in %1 minutes.</source>
|
||||
<translation>请%1分钟后再试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="260"/>
|
||||
<location filename="../src/authdialog.cpp" line="261"/>
|
||||
<location filename="../src/authdialog.cpp" line="324"/>
|
||||
<location filename="../src/authdialog.cpp" line="258"/>
|
||||
<location filename="../src/authdialog.cpp" line="259"/>
|
||||
<location filename="../src/authdialog.cpp" line="325"/>
|
||||
<location filename="../src/authdialog.cpp" line="326"/>
|
||||
<source>Please try again in %1 seconds.</source>
|
||||
<translation>请%1秒后再试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="268"/>
|
||||
<location filename="../src/authdialog.cpp" line="269"/>
|
||||
<location filename="../src/authdialog.cpp" line="270"/>
|
||||
<location filename="../src/authdialog.cpp" line="333"/>
|
||||
<location filename="../src/authdialog.cpp" line="334"/>
|
||||
<location filename="../src/authdialog.cpp" line="335"/>
|
||||
<source>Account locked permanently.</source>
|
||||
<translation>账号已被永久锁定</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="449"/>
|
||||
<location filename="../src/authdialog.cpp" line="455"/>
|
||||
<source>Verify face recognition or enter password to unlock</source>
|
||||
<translation>验证人脸识别或输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="454"/>
|
||||
<location filename="../src/authdialog.cpp" line="460"/>
|
||||
<source>Press fingerprint or enter password to unlock</source>
|
||||
<translation>按压指纹或输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="459"/>
|
||||
<location filename="../src/authdialog.cpp" line="465"/>
|
||||
<source>Verify voiceprint or enter password to unlock</source>
|
||||
<translation>验证声纹或输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="464"/>
|
||||
<location filename="../src/authdialog.cpp" line="470"/>
|
||||
<source>Verify finger vein or enter password to unlock</source>
|
||||
<translation>验证指静脉或输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="469"/>
|
||||
<location filename="../src/authdialog.cpp" line="475"/>
|
||||
<source>Verify iris or enter password to unlock</source>
|
||||
<translation>验证虹膜或输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="613"/>
|
||||
<location filename="../src/authdialog.cpp" line="619"/>
|
||||
<source>Input Password</source>
|
||||
<translation>输入密码</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="909"/>
|
||||
<location filename="../src/authdialog.cpp" line="916"/>
|
||||
<source>Failed to verify %1, please enter password to unlock</source>
|
||||
<translation>验证%1失败,请输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="913"/>
|
||||
<location filename="../src/authdialog.cpp" line="920"/>
|
||||
<source>Unable to verify %1, please enter password to unlock</source>
|
||||
<translation>无法验证%1,请输入密码解锁</translation>
|
||||
</message>
|
||||
|
@ -118,8 +118,8 @@
|
|||
<translation type="vanished">使用绑定的微信扫码或输入密码登录</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="527"/>
|
||||
<location filename="../src/authdialog.cpp" line="528"/>
|
||||
<location filename="../src/authdialog.cpp" line="533"/>
|
||||
<location filename="../src/authdialog.cpp" line="534"/>
|
||||
<source>Password cannot be empty</source>
|
||||
<translation>密码不能为空</translation>
|
||||
</message>
|
||||
|
@ -132,7 +132,7 @@
|
|||
<translation type="vanished">无法验证%1,请输入密码.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="919"/>
|
||||
<location filename="../src/authdialog.cpp" line="926"/>
|
||||
<source>Failed to verify %1, you still have %2 verification opportunities</source>
|
||||
<translation>验证%1失败,您还有%2次尝试机会</translation>
|
||||
</message>
|
||||
|
@ -145,9 +145,8 @@
|
|||
<translation type="vanished">生物/扫码验证失败,您还有%1次尝试机会</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="930"/>
|
||||
<source>NET Exception</source>
|
||||
<translation>网络异常</translation>
|
||||
<translation type="vanished">网络异常</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Password Incorrect, Please try again</source>
|
||||
|
@ -162,22 +161,22 @@
|
|||
<translation type="vanished">请输入密码或者录入指纹</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="650"/>
|
||||
<location filename="../src/authdialog.cpp" line="656"/>
|
||||
<source>Authentication failure, Please try again</source>
|
||||
<translation>认证失败,请重试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="474"/>
|
||||
<location filename="../src/authdialog.cpp" line="480"/>
|
||||
<source>Use the bound wechat scanning code or enter the password to unlock</source>
|
||||
<translation>使用绑定的微信扫码或输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="611"/>
|
||||
<location filename="../src/authdialog.cpp" line="617"/>
|
||||
<source>Password </source>
|
||||
<translation>密码 </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="675"/>
|
||||
<location filename="../src/authdialog.cpp" line="682"/>
|
||||
<source>Login</source>
|
||||
<translation>登录</translation>
|
||||
</message>
|
||||
|
@ -421,32 +420,32 @@
|
|||
<context>
|
||||
<name>DeviceType</name>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="42"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="61"/>
|
||||
<source>FingerPrint</source>
|
||||
<translation>指纹</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="44"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="63"/>
|
||||
<source>FingerVein</source>
|
||||
<translation>指静脉</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="46"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="65"/>
|
||||
<source>Iris</source>
|
||||
<translation>虹膜</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="48"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="67"/>
|
||||
<source>Face</source>
|
||||
<translation>人脸识别</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="50"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="69"/>
|
||||
<source>VoicePrint</source>
|
||||
<translation>声纹</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="52"/>
|
||||
<location filename="../BiometricAuth/biometricdeviceinfo.cpp" line="71"/>
|
||||
<source>QRCode</source>
|
||||
<translation>二维码</translation>
|
||||
</message>
|
||||
|
@ -2045,12 +2044,12 @@
|
|||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="55"/>
|
||||
<location filename="../src/lockwidget.ui" line="72"/>
|
||||
<source>Date</source>
|
||||
<translation>日期</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.ui" line="48"/>
|
||||
<location filename="../src/lockwidget.ui" line="65"/>
|
||||
<source>Time</source>
|
||||
<translation>时间</translation>
|
||||
</message>
|
||||
|
@ -2081,7 +2080,7 @@
|
|||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="49"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="57"/>
|
||||
<source>Login Options</source>
|
||||
<translation>登录选项</translation>
|
||||
</message>
|
||||
|
@ -2094,7 +2093,7 @@
|
|||
<translation type="vanished">微信</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="504"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="540"/>
|
||||
<source>Identify device removed!</source>
|
||||
<translation>校验设备已移除!</translation>
|
||||
</message>
|
||||
|
@ -2302,7 +2301,7 @@
|
|||
<context>
|
||||
<name>PowerManager</name>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="380"/>
|
||||
<location filename="../src/powermanager.cpp" line="290"/>
|
||||
<source>lock</source>
|
||||
<translation>锁定</translation>
|
||||
</message>
|
||||
|
@ -2331,13 +2330,12 @@
|
|||
<translation type="vanished">切换用户</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="397"/>
|
||||
<location filename="../src/powermanager.cpp" line="307"/>
|
||||
<source>Log Out</source>
|
||||
<translation>注销</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="415"/>
|
||||
<location filename="../src/powermanager.cpp" line="699"/>
|
||||
<location filename="../src/powermanager.cpp" line="325"/>
|
||||
<source>Restart</source>
|
||||
<translation>重启</translation>
|
||||
</message>
|
||||
|
@ -2352,17 +2350,17 @@
|
|||
<translation>关机</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="717"/>
|
||||
<location filename="../src/powermanager.cpp" line="666"/>
|
||||
<source>Shut Down</source>
|
||||
<translation>关机</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="743"/>
|
||||
<location filename="../src/powermanager.cpp" line="692"/>
|
||||
<source>Hibernate</source>
|
||||
<translation>休眠</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="770"/>
|
||||
<location filename="../src/powermanager.cpp" line="719"/>
|
||||
<source>Suspend</source>
|
||||
<translation>睡眠</translation>
|
||||
</message>
|
||||
|
@ -2404,7 +2402,7 @@
|
|||
<translation type="vanished">退出</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="140"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="142"/>
|
||||
<source>Picture does not exist</source>
|
||||
<translation>图片不存在</translation>
|
||||
</message>
|
||||
|
@ -2421,12 +2419,12 @@
|
|||
<translation type="obsolete">您有%1条未读消息</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1289"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1364"/>
|
||||
<source>You have new notification</source>
|
||||
<translation>您有新的消息</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1133"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1199"/>
|
||||
<source>View</source>
|
||||
<translation>预览</translation>
|
||||
</message>
|
||||
|
@ -2434,9 +2432,8 @@
|
|||
<context>
|
||||
<name>SleepTime</name>
|
||||
<message>
|
||||
<location filename="../screensaver/sleeptime.cpp" line="70"/>
|
||||
<source>You have rested:</source>
|
||||
<translation>您已休息:</translation>
|
||||
<translation type="vanished">您已休息:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/sleeptime.cpp" line="64"/>
|
||||
|
@ -2457,17 +2454,16 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="108"/>
|
||||
<location filename="../src/surewindow.ui" line="157"/>
|
||||
<source>Cancel</source>
|
||||
<translation>取消</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.ui" line="127"/>
|
||||
<location filename="../src/surewindow.ui" line="176"/>
|
||||
<source>Confirm</source>
|
||||
<translation>确认</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/surewindow.cpp" line="9"/>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation type="vanished">同时有多个用户登录系统,您确定要退出系统吗?</translation>
|
||||
</message>
|
||||
|
@ -2643,8 +2639,8 @@
|
|||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-command.cpp" line="47"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="163"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="165"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="164"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="166"/>
|
||||
<source>lock the screen immediately</source>
|
||||
<translation>马上锁定屏幕</translation>
|
||||
</message>
|
||||
|
@ -2664,23 +2660,23 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="158"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="159"/>
|
||||
<source>Dialog for the ukui ScreenSaver.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="167"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="168"/>
|
||||
<source>activated by session idle signal</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="169"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="173"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="170"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="174"/>
|
||||
<source>lock the screen and show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="171"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="172"/>
|
||||
<source>show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
|
|
@ -135,7 +135,7 @@ QString SCConfiguration::getDefaultBackground()
|
|||
if(ispicture(backgroundFile))
|
||||
return backgroundFile;
|
||||
else
|
||||
return "/usr/share/backgrounds/1-openkylin.jpg";
|
||||
return "/usr/share/backgrounds/1-warty-final-ubuntukylin.jpg";
|
||||
}
|
||||
|
||||
int SCConfiguration::getTimeType()
|
||||
|
|
|
@ -531,6 +531,25 @@ void Screensaver::resizeEvent(QResizeEvent */*event*/)
|
|||
flag = 1;
|
||||
#ifndef USE_INTEL
|
||||
if(myTextWidget){
|
||||
|
||||
// QColor highLightColor = palette().color(QPalette::Base);
|
||||
// QString stringColor = QString("rgba(%1,%2,%3,82%)")
|
||||
// .arg(highLightColor.red())
|
||||
// .arg(highLightColor.green())
|
||||
// .arg(highLightColor.blue());
|
||||
// QColor textColor = palette().color(QPalette::Text);
|
||||
// QString textString = QString("rgb(%1,%2,%3)")
|
||||
// .arg(textColor.red())
|
||||
// .arg(textColor.green())
|
||||
// .arg(textColor.blue());
|
||||
// QColor borderColor = palette().color(QPalette::BrightText);
|
||||
// QString borderString = QString("rgba(%1,%2,%3,85%)")
|
||||
// .arg(borderColor.red())
|
||||
// .arg(borderColor.green())
|
||||
// .arg(borderColor.blue());
|
||||
|
||||
// myTextLabel->setStyleSheet(QString("font-size:5px;border-radius: 2px;background: %1;color: %2;padding: 4px 8px 4px 8px;border-width: 1px;border-style: solid;border-color:%3;") \
|
||||
// .arg(stringColor).arg(textString).arg(borderString));
|
||||
if(curStyle == "ukui-dark" || curStyle == "ukui-black"){
|
||||
myTextLabel->setStyleSheet(QString("QLabel{font-size:5px;border-radius: 2px;padding: 4px 8px 4px 8px;border-width: 1px;\
|
||||
background: rgba(0, 0, 0, %1); color:#FFFFFF; border-radius:16px}").arg(blur_Num * 0.01));
|
||||
|
@ -857,12 +876,10 @@ void Screensaver::initUI()
|
|||
|
||||
if(qssFile.open(QIODevice::ReadOnly)) {
|
||||
setStyleSheet(qssFile.readAll());
|
||||
qDebug()<<qssFile.readAll();
|
||||
}
|
||||
qssFile.close();
|
||||
|
||||
#ifdef USE_INTEL
|
||||
m_weatherManager = new WeatherManager(this);
|
||||
setWeatherLayout();
|
||||
setDatelayout();
|
||||
setCenterWidget();
|
||||
|
|
|
@ -156,7 +156,6 @@ private:
|
|||
QTimer *movieTimer = nullptr;
|
||||
int currentCount = 0;
|
||||
QDateTime m_lastDateTime;
|
||||
bool bControlFlg = true;
|
||||
bool isScreensaver = false;
|
||||
protected:
|
||||
void paintEvent(QPaintEvent *event);
|
||||
|
|
|
@ -6,6 +6,7 @@ pkg_check_modules(QGS REQUIRED gsettings-qt)
|
|||
|
||||
pkg_check_modules(GLIB REQUIRED glib-2.0)
|
||||
pkg_check_modules(MMIX REQUIRED libmatemixer)
|
||||
pkg_check_modules(kylin-nm-base REQUIRED kylin-nm-base)
|
||||
|
||||
find_library(PAM_LIBRARIES pam)
|
||||
|
||||
|
@ -26,8 +27,7 @@ include_directories(
|
|||
${QGS_INCLUDE_DIRS}
|
||||
${GLIB_INCLUDE_DIRS}
|
||||
${MMIX_INCLUDE_DIRS}
|
||||
${MMIX_INCLUDE_DIRS}
|
||||
${KF5Wayland_LIBRARIES}
|
||||
${kylin-nm-base_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(EXTRA_LIBS
|
||||
|
@ -39,11 +39,9 @@ set(EXTRA_LIBS
|
|||
${QGS_LIBRARIES}
|
||||
${GLIB_LIBRARIES}
|
||||
${MMIX_LIBRARIES}
|
||||
${KF5Wayland_LIBRARIES}
|
||||
-lrt
|
||||
-lpthread
|
||||
-lKF5WaylandServer
|
||||
-lKF5WaylandClient
|
||||
-llibnm-icon-kylin
|
||||
)
|
||||
|
||||
qt5_wrap_ui(dialog_SRC
|
||||
|
@ -67,6 +65,7 @@ qt5_wrap_cpp(dialog_SRC
|
|||
screensaverwidget.h
|
||||
auth.h
|
||||
auth-pam.h
|
||||
authpamthread.h
|
||||
screensavermode.h
|
||||
screensaverwndadaptor.h
|
||||
xeventmonitor.h
|
||||
|
@ -97,7 +96,7 @@ qt5_wrap_cpp(dialog_SRC
|
|||
loginedusers.h
|
||||
lockchecker.h
|
||||
servicemanager.h
|
||||
plasma-shell-manager.h
|
||||
mytabwidget.h
|
||||
PhysicalDeviceSet/brightnessdeviceset.h
|
||||
PhysicalDeviceSet/flightmodeset.h
|
||||
PhysicalDeviceSet/sounddeviceset.h
|
||||
|
@ -117,6 +116,7 @@ set(dialog_SRC
|
|||
loginoptionswidget.cpp
|
||||
screensaverwidget.cpp
|
||||
auth-pam.cpp
|
||||
authpamthread.cpp
|
||||
xeventmonitor.cpp
|
||||
monitorwatcher.cpp
|
||||
grab-x11.cpp
|
||||
|
@ -147,7 +147,7 @@ set(dialog_SRC
|
|||
loginedusers.cpp
|
||||
lockchecker.cpp
|
||||
servicemanager.cpp
|
||||
plasma-shell-manager.cpp
|
||||
mytabwidget.cpp
|
||||
PhysicalDeviceSet/brightnessdeviceset.cpp
|
||||
PhysicalDeviceSet/flightmodeset.cpp
|
||||
PhysicalDeviceSet/sounddeviceset.cpp
|
||||
|
|
|
@ -36,7 +36,6 @@ static int pam_conversation(int msgLength, const struct pam_message **msg,
|
|||
void sigchld_handler(int signo);
|
||||
AuthPAM::AuthPAM(QObject *parent)
|
||||
: Auth(parent),
|
||||
pid(0),
|
||||
nPrompts(0),
|
||||
_isAuthenticated(false),
|
||||
_isAuthenticating(false)
|
||||
|
@ -50,54 +49,33 @@ void AuthPAM::authenticate(const QString &userName)
|
|||
|
||||
if(pipe(toParent) || pipe(toChild))
|
||||
qDebug()<< "create pipe failed: " << strerror(errno);
|
||||
if((pid = fork()) < 0)
|
||||
{
|
||||
qDebug() << "fork error: " << strerror(errno);
|
||||
}
|
||||
else if(pid == 0)
|
||||
{
|
||||
prctl(PR_SET_PDEATHSIG, SIGHUP);
|
||||
close(toParent[0]);
|
||||
close(toChild[1]);
|
||||
int arg1_int = toParent[1];
|
||||
int arg2_int = toChild[0];
|
||||
char arg1[128];
|
||||
char arg2[128];
|
||||
sprintf(arg1,"%d",arg1_int);
|
||||
sprintf(arg2,"%d",arg2_int);
|
||||
execlp ("ukui-screensaver-checkpass",
|
||||
"ukui-screensaver-checkpass",
|
||||
arg1, arg2,userName.toLocal8Bit().data(), NULL);
|
||||
_exit (EXIT_FAILURE);
|
||||
}
|
||||
else
|
||||
{
|
||||
close(toParent[1]);
|
||||
close(toChild[0]);
|
||||
_isAuthenticating = true;
|
||||
notifier = new QSocketNotifier(toParent[0], QSocketNotifier::Read);
|
||||
connect(notifier, &QSocketNotifier::activated, this, &AuthPAM::onSockRead);
|
||||
}
|
||||
m_authPamThread = new AuthPamThread();
|
||||
m_authPamThread->startAuthPam(toChild[0], toParent[1], userName);
|
||||
_isAuthenticating = true;
|
||||
notifier = new QSocketNotifier(toParent[0], QSocketNotifier::Read);
|
||||
connect(notifier, &QSocketNotifier::activated, this, &AuthPAM::onSockRead);
|
||||
}
|
||||
|
||||
void AuthPAM::stopAuth()
|
||||
{
|
||||
if(pid != 0)
|
||||
{
|
||||
if (m_authPamThread) {
|
||||
messageList.clear();
|
||||
responseList.clear();
|
||||
_isAuthenticating = false;
|
||||
_isAuthenticated = false;
|
||||
nPrompts = 0;
|
||||
::kill(pid, SIGKILL);
|
||||
|
||||
close(toParent[0]);
|
||||
close(toChild[1]);
|
||||
if(notifier){
|
||||
notifier->deleteLater();
|
||||
disconnect(notifier, &QSocketNotifier::activated, this, &AuthPAM::onSockRead);
|
||||
delete notifier;
|
||||
notifier = nullptr;
|
||||
}
|
||||
pid = 0;
|
||||
close(toParent[1]);
|
||||
close(toChild[1]);
|
||||
m_authPamThread->stopAuthPam();
|
||||
delete m_authPamThread;
|
||||
m_authPamThread = nullptr;
|
||||
close(toParent[0]);
|
||||
close(toChild[0]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
#include <QList>
|
||||
|
||||
#include <security/pam_appl.h>
|
||||
#include "authpamthread.h"
|
||||
|
||||
typedef struct pam_message PAM_MESSAGE;
|
||||
typedef struct pam_response PAM_RESPONSE;
|
||||
|
@ -47,7 +48,7 @@ private Q_SLOTS:
|
|||
|
||||
private:
|
||||
QString userName;
|
||||
pid_t pid;
|
||||
AuthPamThread *m_authPamThread = nullptr;
|
||||
QSocketNotifier *notifier;
|
||||
int nPrompts;
|
||||
QStringList responseList;
|
||||
|
|
|
@ -37,7 +37,6 @@
|
|||
#include "commonfunc.h"
|
||||
#include "loginoptionswidget.h"
|
||||
#include "servicemanager.h"
|
||||
#include "uniauthservice.h"
|
||||
#include "imageutil.h"
|
||||
|
||||
AuthDialog::AuthDialog(const UserItem &user, QWidget *parent) :
|
||||
|
@ -57,6 +56,12 @@ AuthDialog::AuthDialog(const UserItem &user, QWidget *parent) :
|
|||
w_timer(nullptr),
|
||||
m_uniauthService(new UniAuthService(this))
|
||||
{
|
||||
setObjectName("AuthDialog");
|
||||
|
||||
QFile qssFile(":/qss/assets/authdialog.qss");
|
||||
if(qssFile.open(QIODevice::ReadOnly)) {
|
||||
this->setStyleSheet(qssFile.readAll());
|
||||
}
|
||||
initUI();
|
||||
pam_tally_init(); //这里写函数声明
|
||||
|
||||
|
@ -102,24 +107,6 @@ void AuthDialog::stopAuth()
|
|||
// m_passwdWidget->hide();
|
||||
}
|
||||
|
||||
QPixmap AuthDialog::PixmapToRound(const QPixmap &src, int radius)
|
||||
{
|
||||
if (src.isNull()) {
|
||||
return QPixmap();
|
||||
}
|
||||
|
||||
QPixmap pixmapa(src);
|
||||
QPixmap pixmap(radius*2,radius*2);
|
||||
pixmap.fill(Qt::transparent);
|
||||
QPainter painter(&pixmap);
|
||||
painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
|
||||
QPainterPath path;
|
||||
path.addEllipse(0, 0, radius*2, radius*2);
|
||||
painter.setClipPath(path);
|
||||
painter.drawPixmap(0, 0, radius*2, radius*2, pixmapa);
|
||||
return pixmap;
|
||||
}
|
||||
|
||||
void AuthDialog::initUI()
|
||||
{
|
||||
if (scale < 0.5) {
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include "users.h"
|
||||
#include "biometricdeviceinfo.h"
|
||||
#include "pam-tally.h"
|
||||
#include "uniauthservice.h"
|
||||
|
||||
namespace Ui {
|
||||
class AuthDialog;
|
||||
|
@ -44,7 +45,6 @@ class BiometricAuthWidget;
|
|||
class BiometricDevicesWidget;
|
||||
class PamTally;
|
||||
class LoginOptionsWidget;
|
||||
class UniAuthService;
|
||||
|
||||
enum FOCUS {
|
||||
REMOVE = 0,
|
||||
|
@ -79,7 +79,6 @@ private:
|
|||
void initBiometricWidget();
|
||||
void setChildrenGeometry();
|
||||
void setBiometricWidgetGeometry();
|
||||
QPixmap PixmapToRound(const QPixmap &src, int radius);
|
||||
void startBioAuth(unsigned uTimeout = 1000);
|
||||
void show_authenticated (bool successful = true);
|
||||
void setLoginTypeTip(QString strLoginTypeTip);
|
||||
|
|
|
@ -0,0 +1,201 @@
|
|||
#include "authpamthread.h"
|
||||
|
||||
#include <security/pam_appl.h>
|
||||
#include <unistd.h>
|
||||
#include <wait.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <sys/prctl.h>
|
||||
#include <QDebug>
|
||||
|
||||
#define PAM_SERVICE_NAME "ukui-screensaver-qt"
|
||||
|
||||
static void writeData(int fd, const void *buf, ssize_t count);
|
||||
static void writeString(int fd, const char *data);
|
||||
static int readData(int fd, void *buf, size_t count);
|
||||
static char * readString(int fd);
|
||||
static int pam_conversation(int msgLength, const struct pam_message **msg,
|
||||
struct pam_response **resp, void *appData);
|
||||
|
||||
AuthPamThread::AuthPamThread(QObject* parent)
|
||||
: QThread(parent)
|
||||
{
|
||||
}
|
||||
|
||||
AuthPamThread::~AuthPamThread()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void AuthPamThread::writeData(int fd, const void *buf, ssize_t count)
|
||||
{
|
||||
if (!m_isAuthenticating) {
|
||||
return;
|
||||
}
|
||||
if(write(fd, buf, count) != count)
|
||||
qDebug() << "write to parent failed: " << strerror(errno);
|
||||
}
|
||||
|
||||
void AuthPamThread::writeString(int fd, const char *data)
|
||||
{
|
||||
int length = data ? strlen(data) : -1;
|
||||
writeData(fd, &length, sizeof(length));
|
||||
if(data)
|
||||
writeData(fd, data, sizeof(char) * length);
|
||||
}
|
||||
|
||||
int AuthPamThread::readData(int fd, void *buf, size_t count)
|
||||
{
|
||||
ssize_t nRead = 0;
|
||||
while(true) {
|
||||
nRead = read(fd, buf, count);
|
||||
if (!m_isAuthenticating) {
|
||||
break;
|
||||
}
|
||||
if (nRead < 0) {
|
||||
if (errno == EAGAIN) {
|
||||
usleep(100*1000);
|
||||
continue;
|
||||
} else {
|
||||
qDebug() << "read data failed: " << strerror(errno) << errno;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
return nRead;
|
||||
}
|
||||
|
||||
char* AuthPamThread::readString(int fd)
|
||||
{
|
||||
int length;
|
||||
|
||||
if(readData(fd, &length, sizeof(length)) <= 0)
|
||||
return NULL;
|
||||
if(length <= 0)
|
||||
length = 0;
|
||||
|
||||
char *value = (char *)malloc(sizeof(char) * (length + 1));
|
||||
readData(fd, value, length);
|
||||
|
||||
value[length] = '\0';
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
static int
|
||||
pam_conversation(int msgLength, const struct pam_message **msg,
|
||||
struct pam_response **resp, void *appData)
|
||||
{
|
||||
struct pam_response *response = (struct pam_response*)calloc(msgLength,sizeof(struct pam_response));
|
||||
AuthPamThread* pData = (AuthPamThread*)appData;
|
||||
if (!pData || pData->m_fdRead < 0 || pData->m_fdWrite < 0) {
|
||||
return PAM_CONV_ERR;
|
||||
}
|
||||
|
||||
int authComplete = 0;
|
||||
pData->writeData(pData->m_fdWrite, (const void*)&authComplete, sizeof(authComplete));
|
||||
pData->writeData(pData->m_fdWrite, (const void*)&msgLength, sizeof(msgLength));
|
||||
//发送pam消息
|
||||
for(int i = 0; i < msgLength; i++)
|
||||
{
|
||||
const struct pam_message *m = msg[i];
|
||||
pData->writeData(pData->m_fdWrite, (const void *)&m->msg_style, sizeof(m->msg_style));
|
||||
pData->writeString(pData->m_fdWrite, m->msg);
|
||||
}
|
||||
//读取响应
|
||||
for(int i = 0; i < msgLength; i++)
|
||||
{
|
||||
struct pam_response *r = &response[i];
|
||||
if (pData->readData(pData->m_fdRead, &r->resp_retcode, sizeof(r->resp_retcode)) < 0) {
|
||||
break;
|
||||
}
|
||||
r->resp = pData->readString(pData->m_fdRead);
|
||||
}
|
||||
*resp = response;
|
||||
return PAM_SUCCESS;
|
||||
}
|
||||
|
||||
void AuthPamThread::_authenticate(const char *userName)
|
||||
{
|
||||
qDebug() << "authenticate " << userName;
|
||||
|
||||
pam_handle_t *pamh = NULL;
|
||||
char *newUser = NULL;
|
||||
int ret;
|
||||
int authRet;
|
||||
struct pam_conv conv;
|
||||
|
||||
conv.conv = pam_conversation;
|
||||
conv.appdata_ptr = this;
|
||||
|
||||
ret = pam_start(PAM_SERVICE_NAME, userName, &conv, &pamh);
|
||||
if(ret != PAM_SUCCESS) {
|
||||
qDebug() << "failed to start PAM: " << pam_strerror(NULL, ret);
|
||||
}
|
||||
|
||||
authRet = pam_authenticate(pamh, 0);
|
||||
|
||||
ret = pam_get_item(pamh, PAM_USER, (const void **)&newUser);
|
||||
if(ret != PAM_SUCCESS) {
|
||||
pam_end(pamh, 0);
|
||||
qDebug() << "failed to get username";
|
||||
}
|
||||
|
||||
if(authRet == PAM_SUCCESS) {
|
||||
/*检测账户有效性,即使密码认证通过,如果账户锁定或无效,也无法解锁*/
|
||||
authRet = pam_acct_mgmt(pamh, 0);
|
||||
}
|
||||
|
||||
if(authRet != PAM_SUCCESS) {
|
||||
qDebug() << "failed to acct mgmt " << pam_strerror(NULL, authRet);
|
||||
}
|
||||
|
||||
if (newUser) {
|
||||
free(newUser);
|
||||
newUser = NULL;
|
||||
}
|
||||
fprintf(stderr, "authentication result: %d\n", authRet);
|
||||
|
||||
// 发送认证结果
|
||||
int authComplete = 1;
|
||||
writeData(m_fdWrite, (const void*)&authComplete, sizeof(authComplete));
|
||||
writeData(m_fdWrite, (const void *)&authRet, sizeof(authRet));
|
||||
qDebug() << "--- 认证完成";
|
||||
}
|
||||
|
||||
void AuthPamThread::startAuthPam(int fdRead, int fdWrite, QString strUserName)
|
||||
{
|
||||
if (!isRunning()) {
|
||||
qDebug()<<"startAuthPam ----";
|
||||
m_isAuthenticating = true;
|
||||
int nFlags = fcntl(fdRead, F_GETFL);
|
||||
nFlags = nFlags | O_NONBLOCK;
|
||||
fcntl(fdRead, F_SETFL, nFlags);
|
||||
m_fdRead = fdRead;
|
||||
m_fdWrite = fdWrite;
|
||||
m_strUserName = strUserName;
|
||||
start();
|
||||
} else {
|
||||
qDebug()<<"AuthPamThread is running!!";
|
||||
}
|
||||
}
|
||||
|
||||
void AuthPamThread::run()
|
||||
{
|
||||
if (m_fdRead >=0 && m_fdWrite >= 0 && !m_strUserName.isEmpty()) {
|
||||
_authenticate(m_strUserName.toLocal8Bit().data());
|
||||
} else {
|
||||
qDebug()<<"AuthPamThread param error:"<<m_fdRead<<m_fdWrite<<m_strUserName;
|
||||
}
|
||||
}
|
||||
|
||||
void AuthPamThread::stopAuthPam()
|
||||
{
|
||||
qDebug()<<"stopAuthPam begin!";
|
||||
m_isAuthenticating = false;
|
||||
if (isRunning()) {
|
||||
quit();
|
||||
wait();
|
||||
}
|
||||
qDebug()<<"stopAuthPam end";
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
#ifndef AUTHPAMTHREAD_H
|
||||
#define AUTHPAMTHREAD_H
|
||||
|
||||
#include <QThread>
|
||||
|
||||
class AuthPamThread : public QThread
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
AuthPamThread(QObject* parent = nullptr);
|
||||
virtual ~AuthPamThread();
|
||||
void startAuthPam(int fdRead, int fdWrite, QString strUserName);
|
||||
void stopAuthPam();
|
||||
|
||||
void writeData(int fd, const void *buf, ssize_t count);
|
||||
void writeString(int fd, const char *data);
|
||||
int readData(int fd, void *buf, size_t count);
|
||||
char *readString(int fd);
|
||||
|
||||
protected:
|
||||
void run();
|
||||
|
||||
private:
|
||||
void _authenticate(const char *userName);
|
||||
|
||||
public:
|
||||
int m_fdRead = -1;
|
||||
int m_fdWrite = -1;
|
||||
QString m_strUserName = "";
|
||||
|
||||
private:
|
||||
bool m_isAuthenticating = false;
|
||||
};
|
||||
|
||||
#endif // AUTHPAMTHREAD_H
|
|
@ -163,7 +163,6 @@ void BatteryWidget::onBatteryChanged(QStringList args)
|
|||
} else if (batteryState == 4) {
|
||||
mStatusLabel->setText(tr("fully charged"));
|
||||
}
|
||||
|
||||
if (batteryState == 4 || batteryState == 1 || batteryState == 5) {
|
||||
mStatusLabel->setVisible(true);
|
||||
mModeLabel->setText(tr("PowerMode"));
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#include <QFile>
|
||||
#include <QDir>
|
||||
#include <QStandardPaths>
|
||||
#include <QX11Info>
|
||||
#include <QSettings>
|
||||
#include <QMimeDatabase>
|
||||
#include <QGSettings>
|
||||
|
@ -206,7 +205,7 @@ QString Configuration::getBackground()
|
|||
if(ispicture(background))
|
||||
return background;
|
||||
|
||||
return "/usr/share/backgrounds/1-openkylin.jpg";
|
||||
return "/usr/share/backgrounds/1-warty-final-ubuntukylin.jpg";
|
||||
}
|
||||
|
||||
bool Configuration::lockWhenXScreensaverActivated()
|
||||
|
|
|
@ -38,7 +38,7 @@ public:
|
|||
public:
|
||||
ScreenSaver *getScreensaver();
|
||||
static Configuration *instance(QObject *parent = nullptr);
|
||||
QString getBackground();
|
||||
QString getBackground();
|
||||
bool lockWhenXScreensaverActivated();
|
||||
int idlelock();
|
||||
int idledelay();
|
||||
|
|
|
@ -32,7 +32,6 @@
|
|||
#include <QDBusPendingReply>
|
||||
#include <QDBusReply>
|
||||
#include <QImageReader>
|
||||
#include "plasma-shell-manager.h"
|
||||
#include <QX11Info>
|
||||
#include "lockwidget.h"
|
||||
#include <X11/Xatom.h>
|
||||
|
@ -256,10 +255,6 @@ FullBackgroundWidget::FullBackgroundWidget(QWidget *parent)
|
|||
this, SLOT(propertiesChangedSlot(QString, QMap<QString, QVariant>, QStringList)));
|
||||
#endif
|
||||
|
||||
if(QX11Info::isPlatformX11()){
|
||||
xEventMonitor = new XEventMonitor(this);
|
||||
}
|
||||
|
||||
init();
|
||||
qApp->installNativeEventFilter(this);
|
||||
installEventFilter(this);
|
||||
|
@ -346,18 +341,9 @@ void FullBackgroundWidget::setLockState()
|
|||
|
||||
bool FullBackgroundWidget::eventFilter(QObject *obj, QEvent *event)
|
||||
{
|
||||
if(event->type() == QEvent::MouseButtonPress || event->type() == QEvent::MouseMove || event->type() == 7){
|
||||
if(screenStatus & SCREEN_SAVER){
|
||||
clearScreensavers();
|
||||
}
|
||||
}
|
||||
if(event->type() == QEvent::WindowDeactivate){
|
||||
QTimer::singleShot(50,this,SLOT(laterActivate()));
|
||||
}else if(event->type() == QEvent::WindowActivate){
|
||||
if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland") {
|
||||
PlasmaShellManager::getInstance()->setAppWindowKeepAbove(true);
|
||||
}
|
||||
|
||||
QTimer::singleShot(500,this,SLOT(setLockState()));
|
||||
QTimer::singleShot(200,this,SLOT(killWindow()));
|
||||
}
|
||||
|
@ -455,11 +441,8 @@ void FullBackgroundWidget::closeEvent(QCloseEvent *event)
|
|||
if(widget)
|
||||
widget->close();
|
||||
}
|
||||
|
||||
if(QX11Info::isPlatformX11()){
|
||||
closeGrab();
|
||||
}
|
||||
|
||||
closeGrab();
|
||||
|
||||
return QWidget::closeEvent(event);
|
||||
}
|
||||
|
||||
|
@ -628,37 +611,18 @@ void FullBackgroundWidget::mousePressEvent(QMouseEvent *e)
|
|||
void FullBackgroundWidget::init()
|
||||
{
|
||||
/*捕获键盘,如果捕获失败,则可能是由于弹出菜单项已经捕获,那么模拟一次esc按键来退出菜单,如果仍捕获失败,则放弃锁屏,避免密码无法输入*/
|
||||
if(QX11Info::isPlatformX11()){
|
||||
if(establishGrab())
|
||||
qDebug()<<"establishGrab : true";
|
||||
else {
|
||||
qDebug()<<"establishGrab : false";
|
||||
XTestFakeKeyEvent(QX11Info::display(), XKeysymToKeycode(QX11Info::display(),XK_Escape), True, 1);
|
||||
XTestFakeKeyEvent(QX11Info::display(), XKeysymToKeycode(QX11Info::display(),XK_Escape), False, 1);
|
||||
XFlush(QX11Info::display());
|
||||
sleep(1);
|
||||
if(!establishGrab())
|
||||
{
|
||||
exit(1);
|
||||
}
|
||||
if(establishGrab())
|
||||
qDebug()<<"establishGrab : true";
|
||||
else {
|
||||
qDebug()<<"establishGrab : false";
|
||||
XTestFakeKeyEvent(QX11Info::display(), XKeysymToKeycode(QX11Info::display(),XK_Escape), True, 1);
|
||||
XTestFakeKeyEvent(QX11Info::display(), XKeysymToKeycode(QX11Info::display(),XK_Escape), False, 1);
|
||||
XFlush(QX11Info::display());
|
||||
sleep(1);
|
||||
if(!establishGrab())
|
||||
{
|
||||
exit(1);
|
||||
}
|
||||
|
||||
XWindowAttributes rootAttr;
|
||||
XGetWindowAttributes(QX11Info::display(), QX11Info::appRootWindow(), &rootAttr);
|
||||
XSelectInput( QX11Info::display(), QX11Info::appRootWindow(),
|
||||
SubstructureNotifyMask|rootAttr.your_event_mask );
|
||||
|
||||
// connect(xEventMonitor, SIGNAL(keyPress(const QString &)),
|
||||
// this, SLOT(onGlobalKeyPress(const QString &)));
|
||||
// connect(xEventMonitor, SIGNAL(keyRelease(const QString &)),
|
||||
// this, SLOT(onGlobalKeyRelease(const QString &)));
|
||||
// connect(xEventMonitor, SIGNAL(buttonDrag(int, int)),
|
||||
// this, SLOT(onGlobalButtonDrag(int, int)));
|
||||
// connect(xEventMonitor, SIGNAL(buttonPress(int, int)),
|
||||
// this, SLOT(onGlobalButtonPressed(int, int)));
|
||||
|
||||
// xEventMonitor->start();
|
||||
|
||||
}
|
||||
|
||||
qDebug()<<"----------------------------------------------------------------开始异步调用";
|
||||
|
@ -675,16 +639,17 @@ void FullBackgroundWidget::init()
|
|||
}
|
||||
});
|
||||
|
||||
if(QX11Info::isPlatformX11()){
|
||||
setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint
|
||||
setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint
|
||||
| Qt::X11BypassWindowManagerHint);
|
||||
}else{
|
||||
setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint);
|
||||
}
|
||||
|
||||
/*x100下会出现黑色小方块问题,设置此属性时正常*/
|
||||
setAttribute(Qt::WA_TranslucentBackground);
|
||||
|
||||
XWindowAttributes rootAttr;
|
||||
XGetWindowAttributes(QX11Info::display(), QX11Info::appRootWindow(), &rootAttr);
|
||||
XSelectInput( QX11Info::display(), QX11Info::appRootWindow(),
|
||||
SubstructureNotifyMask|rootAttr.your_event_mask );
|
||||
|
||||
// 监听session信号
|
||||
// smInterface = new QDBusInterface(SM_DBUS_SERVICE,
|
||||
// SM_DBUS_PATH,
|
||||
|
@ -692,6 +657,10 @@ void FullBackgroundWidget::init()
|
|||
// QDBusConnection::sessionBus());
|
||||
// connect(smInterface, SIGNAL(StatusChanged(uint)),
|
||||
// this, SLOT(onSessionStatusChanged(uint)));
|
||||
// connect(xEventMonitor, SIGNAL(buttonDrag(int, int)),
|
||||
// this, SLOT(onGlobalButtonDrag(int, int)));
|
||||
// connect(xEventMonitor, SIGNAL(buttonPress(int, int)),
|
||||
// this, SLOT(onGlobalButtonPressed(int, int)));
|
||||
|
||||
// int totalWidth = 0;
|
||||
// int totalHeight = 0;
|
||||
|
@ -703,7 +672,9 @@ void FullBackgroundWidget::init()
|
|||
// setGeometry(0, 0, totalWidth, totalHeight);
|
||||
QDesktopWidget *desktop = QApplication::desktop();
|
||||
setGeometry(desktop->geometry());
|
||||
|
||||
|
||||
// xEventMonitor->start();
|
||||
|
||||
#ifdef USE_INTEL
|
||||
SoundDeviceSet::instance();
|
||||
#endif
|
||||
|
@ -790,9 +761,7 @@ void FullBackgroundWidget::showLockWidget()
|
|||
}
|
||||
onCursorMoved(QCursor::pos());
|
||||
lockWidget->setFocus();
|
||||
if(QX11Info::isPlatformX11() ){
|
||||
XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
activateWindow();
|
||||
repaint();
|
||||
}
|
||||
|
@ -830,11 +799,11 @@ void FullBackgroundWidget::showScreensaver(bool isPreview/* = false*/)
|
|||
{
|
||||
ScreenSaver *saver = configuration->getScreensaver();
|
||||
/*锁屏设置的Qt::WA_TranslucentBackground属性会导致第三方屏保变得透明,因此在使用第三方屏保时
|
||||
* 取消该属性,清除屏保时再设置回来*/
|
||||
if(saver->path != "/usr/lib/ukui-screensaver/ukui-screensaver-default")
|
||||
{
|
||||
setAttribute(Qt::WA_TranslucentBackground,false);
|
||||
}
|
||||
* 取消该属性,清除屏保时再设置回来*/
|
||||
if(saver->path != "/usr/lib/ukui-screensaver/ukui-screensaver-default")
|
||||
{
|
||||
setAttribute(Qt::WA_TranslucentBackground,false);
|
||||
}
|
||||
|
||||
ScreenSaverWidget *saverWidget = new ScreenSaverWidget(saver, this);
|
||||
qDebug() << " new ScreenSaverWidget";
|
||||
|
|
|
@ -119,14 +119,10 @@ bool IconEdit::eventFilter(QObject *obj, QEvent *event)
|
|||
}
|
||||
if(event->type() == 23)
|
||||
{
|
||||
if(QX11Info::isPlatformX11()){
|
||||
//XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
//XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
update();
|
||||
}else if(event->type() == QEvent::MouseButtonPress){
|
||||
if(QX11Info::isPlatformX11()){
|
||||
//XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
//XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
update();
|
||||
}
|
||||
}
|
||||
|
@ -175,10 +171,8 @@ void IconEdit::resizeEvent(QResizeEvent *)
|
|||
|
||||
void IconEdit::setX11Focus()
|
||||
{
|
||||
if(QX11Info::isPlatformX11()){
|
||||
//XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
update();
|
||||
//XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
update();
|
||||
}
|
||||
|
||||
void IconEdit::setFocusin(int target)
|
||||
|
|
|
@ -124,12 +124,6 @@ void Interface::SetLockState()
|
|||
|
||||
void Interface::emitLockState(bool val)
|
||||
{
|
||||
qDebug()<<"emitLockState state = "<<val;
|
||||
QDBusInterface interface("org.kde.KWin",
|
||||
"/kglobalaccel",
|
||||
"org.kde.KGlobalAccel",
|
||||
QDBusConnection::sessionBus());
|
||||
interface.call("blockGlobalShortcuts",val);
|
||||
QDBusMessage message;
|
||||
if(val){
|
||||
message = QDBusMessage::createSignal(SS_DBUS_PATH,
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include <QDateTime>
|
||||
#include <QTimer>
|
||||
#include <QDebug>
|
||||
#include <QPluginLoader>
|
||||
#include <QPainterPath>
|
||||
#include <QtConcurrent/QtConcurrentRun>
|
||||
#include <QScrollArea>
|
||||
|
@ -33,6 +34,7 @@
|
|||
#include <imageutil.h>
|
||||
#include <QtX11Extras/QX11Info>
|
||||
#include <X11/Xlib.h>
|
||||
#include <kylin-nm/kynetworkicon.h>
|
||||
#include <X11/XKBlib.h>
|
||||
#include <QGSettings>
|
||||
#include "authdialog.h"
|
||||
|
@ -43,6 +45,7 @@
|
|||
#include "commonfunc.h"
|
||||
#include "hoverwidget.h"
|
||||
#include "kylinnm.h"
|
||||
#include "mytabwidget.h"
|
||||
|
||||
#include <QtX11Extras/QX11Info>
|
||||
#include <X11/Xlib.h>
|
||||
|
@ -120,10 +123,10 @@ void LockWidget::closeEvent(QCloseEvent *event)
|
|||
bool LockWidget::eventFilter(QObject *obj, QEvent *event)
|
||||
{
|
||||
if(event->type() == 2){
|
||||
if(obj == m_kylinNM)
|
||||
if(obj == mkylinNM)
|
||||
return true;
|
||||
|
||||
if(obj == ui->btnPowerManager || obj == ui->btnSwitchUser || obj == ui->btnNetworkManager || obj == ui->btnBatteryStatus)
|
||||
if(obj == ui->btnPowerManager || obj == ui->btnSwitchUser || obj == btnNetworkManager || obj == ui->btnBatteryStatus)
|
||||
return false;
|
||||
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible()) {
|
||||
|
@ -172,24 +175,25 @@ bool LockWidget::eventFilter(QObject *obj, QEvent *event)
|
|||
//qDebug()<<"````````````````````````````````````````````"<<event->type();
|
||||
}
|
||||
}
|
||||
|
||||
if(event->type() == QEvent::WindowActivate || event->type() == 8){ // QEvent::FocusIn
|
||||
/*
|
||||
if(event->type() == QEvent::WindowActivate){
|
||||
if(!isNetFinished){
|
||||
isNetFinished = true;
|
||||
QTimer::singleShot(2000, this, [=](){
|
||||
m_kylinNM = new KylinNM(this);
|
||||
m_kylinNM->installEventFilter(this);
|
||||
connect(m_kylinNM, &KylinNM::onConnectChanged, this,[=](){
|
||||
updateNetIcon(m_kylinNM->getConnectStatus());
|
||||
});
|
||||
m_kylinNM->hide();
|
||||
QtConcurrent::run([=](){
|
||||
updateNetIcon(getNetStatus());
|
||||
});
|
||||
});
|
||||
QTimer::singleShot(1000, this, [=](){
|
||||
loadNetPlugin();
|
||||
// m_kylinNM = new KylinNM(this);
|
||||
// m_kylinNM->installEventFilter(this);
|
||||
// connect(m_kylinNM, &KylinNM::onConnectChanged, this,[=](){
|
||||
// updateNetIcon(m_kylinNM->getConnectStatus());
|
||||
// });
|
||||
// m_kylinNM->hide();
|
||||
// QtConcurrent::run([=](){
|
||||
// updateNetIcon(getNetStatus());
|
||||
// });
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -237,7 +241,7 @@ void LockWidget::key_enter_release(int key)
|
|||
case NETWORKBTN:
|
||||
if(!m_kylinNM || !(m_kylinNM && m_kylinNM->isVisible()))
|
||||
showNetManager(true);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
authDialog->setFocusin(REMOVE);
|
||||
break;
|
||||
case KEYBOARDBTN:
|
||||
|
@ -422,7 +426,7 @@ void LockWidget::key_LR_release(int key)
|
|||
horAT = NETWORKBTN;
|
||||
break;
|
||||
case NETWORKBTN:
|
||||
horAT = POWERBTN;//KEYBOARDBTN;
|
||||
horAT = KEYBOARDBTN;
|
||||
break;
|
||||
case KEYBOARDBTN:
|
||||
horAT = POWERBTN;
|
||||
|
@ -470,7 +474,7 @@ void LockWidget::key_LR_release(int key)
|
|||
horAT = NETWORKBTN;
|
||||
break;
|
||||
case POWERBTN:
|
||||
horAT = NETWORKBTN;//KEYBOARDBTN;
|
||||
horAT = KEYBOARDBTN;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -491,19 +495,19 @@ void LockWidget::setBottomBtnSheet()
|
|||
case BATTERYBTN:
|
||||
ui->btnBatteryStatus->setStyleSheet(ON_TAB_SHEET);
|
||||
ui->btnSwitchUser->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnKeyboard->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnPowerManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
break;
|
||||
case SWITCHBTN:
|
||||
ui->btnSwitchUser->setStyleSheet(ON_TAB_SHEET);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnKeyboard->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnPowerManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnBatteryStatus->setStyleSheet(ON_NORMAL_SHEET);
|
||||
break;
|
||||
case NETWORKBTN:
|
||||
ui->btnNetworkManager->setStyleSheet(ON_TAB_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_TAB_SHEET);
|
||||
ui->btnKeyboard->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnPowerManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnSwitchUser->setStyleSheet(ON_NORMAL_SHEET);
|
||||
|
@ -513,19 +517,19 @@ void LockWidget::setBottomBtnSheet()
|
|||
ui->btnKeyboard->setStyleSheet(ON_TAB_SHEET);
|
||||
ui->btnPowerManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnSwitchUser->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnBatteryStatus->setStyleSheet(ON_NORMAL_SHEET);
|
||||
break;
|
||||
case POWERBTN:
|
||||
ui->btnPowerManager->setStyleSheet(ON_TAB_SHEET);
|
||||
ui->btnSwitchUser->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnKeyboard->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnBatteryStatus->setStyleSheet(ON_NORMAL_SHEET);
|
||||
break;
|
||||
default:
|
||||
ui->btnSwitchUser->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnKeyboard->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnPowerManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnBatteryStatus->setStyleSheet(ON_NORMAL_SHEET);
|
||||
|
@ -533,7 +537,7 @@ void LockWidget::setBottomBtnSheet()
|
|||
}
|
||||
} else {
|
||||
ui->btnSwitchUser->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnKeyboard->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnPowerManager->setStyleSheet(ON_NORMAL_SHEET);
|
||||
ui->btnBatteryStatus->setStyleSheet(ON_NORMAL_SHEET);
|
||||
|
@ -695,7 +699,6 @@ void LockWidget::initUI()
|
|||
ui->btnBatteryStatus->setIconSize(QSize(24,24));
|
||||
ui->btnBatteryStatus->setFocusPolicy(Qt::NoFocus);
|
||||
ui->btnBatteryStatus->installEventFilter(this);
|
||||
ui->btnBatteryStatus->setCheckable(true);
|
||||
mBatteryWidget = new BatteryWidget(QPoint(ui->btnBatteryStatus->x(), ui->btnBatteryStatus->y()), this);
|
||||
mBatteryWidget->hide();
|
||||
connect(ui->btnBatteryStatus,&QPushButton::clicked
|
||||
|
@ -724,40 +727,44 @@ void LockWidget::initUI()
|
|||
,this,&LockWidget::showPowerManager);
|
||||
|
||||
|
||||
QtConcurrent::run([=](){
|
||||
updateNetIcon(getNetStatus());
|
||||
});
|
||||
// QtConcurrent::run([=](){
|
||||
// updateNetIcon(getNetStatus());
|
||||
// });
|
||||
|
||||
ui->btnNetworkManager->setFixedSize(48,48);
|
||||
ui->btnNetworkManager->setIconSize(QSize(24,24));
|
||||
ui->btnNetworkManager->setFocusPolicy(Qt::NoFocus);
|
||||
btnNetworkManager = new KyNetworkIcon(this);
|
||||
btnNetworkManager->setStyleSheet("QPushButton{text-align:center;color: rgb(255, 255, 255, 255);border: none;border-radius: 4px;outline: none;} \
|
||||
QPushButton::hover{background-color: rgb(255,255,255,15%);} \
|
||||
QPushButton::pressed {background-color: rgba(255,255,255,40%);}\
|
||||
QPushButton::checked {background-color: rgba(255, 255, 255, 40%);}");
|
||||
btnNetworkManager->setCheckable(true);
|
||||
btnNetworkManager->setFixedSize(48,48);
|
||||
btnNetworkManager->setIconSize(QSize(24,24));
|
||||
btnNetworkManager->setFocusPolicy(Qt::NoFocus);
|
||||
// ui->btnNetworkManager->setStyleSheet("QPushButton:Hover{border-radius:24px;background-color:rgba(255, 255, 255, 0.15);}"
|
||||
// "QPushButton:Pressed{border-radius:24px;background-color:rgba(255, 255, 255, 0.05);}");
|
||||
ui->btnNetworkManager->installEventFilter(this);
|
||||
btnNetworkManager->installEventFilter(this);
|
||||
btnNetworkManager->setCursor(Qt::PointingHandCursor);
|
||||
|
||||
connect(ui->btnNetworkManager,&QPushButton::clicked
|
||||
,this,&LockWidget::showNetManager);
|
||||
|
||||
if(QX11Info::isPlatformX11()){
|
||||
//虚拟键盘
|
||||
ui->btnKeyboard->setIcon(QIcon(":/image/assets/keyboard.svg"));
|
||||
ui->btnKeyboard->setFixedSize(48, 48);
|
||||
ui->btnKeyboard->setIconSize(QSize(24, 24));
|
||||
ui->btnKeyboard->setFocusPolicy(Qt::NoFocus);
|
||||
ui->btnKeyboard->installEventFilter(this);
|
||||
ui->btnKeyboard->hide();
|
||||
connect(btnNetworkManager,&QPushButton::clicked
|
||||
,this, [&,this](){
|
||||
this->showNetManager();
|
||||
this->setCursor(Qt::ArrowCursor);
|
||||
});
|
||||
|
||||
//虚拟键盘
|
||||
ui->btnKeyboard->setIcon(QIcon(":/image/assets/keyboard.svg"));
|
||||
ui->btnKeyboard->setFixedSize(48, 48);
|
||||
ui->btnKeyboard->setIconSize(QSize(24, 24));
|
||||
ui->btnKeyboard->setFocusPolicy(Qt::NoFocus);
|
||||
ui->btnKeyboard->installEventFilter(this);
|
||||
/* connect(ui->btnKeyboard, &QPushButton::clicked,
|
||||
this, [&]{
|
||||
qDebug() << vKeyboard->isHidden();
|
||||
vKeyboard->setVisible(vKeyboard->isHidden());
|
||||
});
|
||||
*/
|
||||
|
||||
|
||||
connect(ui->btnKeyboard, &QPushButton::clicked,
|
||||
this, &LockWidget::showVirtualKeyboard);
|
||||
}
|
||||
connect(ui->btnKeyboard, &QPushButton::clicked,
|
||||
this, &LockWidget::showVirtualKeyboard);
|
||||
|
||||
//用户切换
|
||||
if(displayManager->canSwitch())
|
||||
|
@ -919,10 +926,10 @@ void LockWidget::setCheckedSheet(int type, bool show)
|
|||
case NETWORKBTN:
|
||||
if(show) {
|
||||
m_kylinNM->show();
|
||||
ui->btnNetworkManager->setChecked(true);
|
||||
btnNetworkManager->setChecked(true);
|
||||
} else {
|
||||
m_kylinNM->hide();
|
||||
ui->btnNetworkManager->setChecked(false);
|
||||
btnNetworkManager->setChecked(false);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
@ -944,7 +951,7 @@ void LockWidget::showWarning(QVector<InhibitInfo::InhibitorInfo> &wlist, int typ
|
|||
sureWidget->setFocus();
|
||||
ui->widgetTime->hide();
|
||||
ui->btnPowerManager->hide();
|
||||
ui->btnNetworkManager->hide();
|
||||
btnNetworkManager->hide();
|
||||
ui->btnSwitchUser->hide();
|
||||
ui->btnKeyboard->hide();
|
||||
ui->btnBatteryStatus->hide();
|
||||
|
@ -966,7 +973,7 @@ void LockWidget::switchToSureDialog(int type)
|
|||
sureWidget->setFocus();
|
||||
ui->widgetTime->hide();
|
||||
ui->btnPowerManager->hide();
|
||||
ui->btnNetworkManager->hide();
|
||||
btnNetworkManager->hide();
|
||||
ui->btnSwitchUser->hide();
|
||||
ui->btnKeyboard->hide();
|
||||
ui->btnBatteryStatus->hide();
|
||||
|
@ -980,7 +987,7 @@ void LockWidget::hideSureDialog()
|
|||
powermanager->show();
|
||||
ui->widgetTime->show();
|
||||
ui->btnPowerManager->show();
|
||||
ui->btnNetworkManager->show();
|
||||
btnNetworkManager->show();
|
||||
ui->btnSwitchUser->show();
|
||||
ui->btnKeyboard->show();
|
||||
ui->btnBatteryStatus->show();
|
||||
|
@ -999,7 +1006,7 @@ void LockWidget::confirmClicked()
|
|||
authDialog->show();
|
||||
ui->widgetTime->show();
|
||||
ui->btnPowerManager->show();
|
||||
ui->btnNetworkManager->show();
|
||||
btnNetworkManager->show();
|
||||
ui->btnSwitchUser->show();
|
||||
ui->btnKeyboard->show();
|
||||
ui->btnBatteryStatus->show();
|
||||
|
@ -1015,13 +1022,17 @@ void LockWidget::showNetManager(bool keynavigation)
|
|||
horAT = NETWORKBTN;
|
||||
}
|
||||
if(!m_kylinNM){
|
||||
return;
|
||||
/*这里放在点击按钮后加载,一个原因是启动优化,另一个原因是如果放在构造函数中加载,则必须
|
||||
* 先让网络窗口显示出来一次,否则会在锁屏程序退出时,锁屏窗口在closeEvent中崩溃,原因未知
|
||||
* 同时,可以尽量降低在未操作网络时,网络程序对锁屏窗口的影响*/
|
||||
loadNetPlugin();
|
||||
m_kylinNM->hide();
|
||||
}
|
||||
|
||||
if(m_kylinNM->isVisible())
|
||||
{
|
||||
setCheckedSheet(NETWORKBTN, false);
|
||||
} else {
|
||||
m_kylinNM->show();
|
||||
setCheckedSheet(NETWORKBTN, true);
|
||||
if(scrollArea && scrollArea->isVisible())
|
||||
setCheckedSheet(SWITCHBTN, false);
|
||||
|
@ -1039,12 +1050,12 @@ void LockWidget::showNetManager(bool keynavigation)
|
|||
authDialog->lower();
|
||||
}
|
||||
authDialog->clearFocus();
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible()) {
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible())
|
||||
mBatteryWidget->lower();
|
||||
mBatteryWidget->clearFocus();
|
||||
}
|
||||
mBatteryWidget->clearFocus();
|
||||
at_plugins = true;
|
||||
m_kylinNM->updateWifiList();
|
||||
|
||||
//m_kylinNM->updateWifiList();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1169,22 +1180,109 @@ void LockWidget::updateNetIcon(int status)
|
|||
switch(status) {
|
||||
case 0:
|
||||
//有线
|
||||
ui->btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-wired.png"));
|
||||
btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-wired.png"));
|
||||
break;
|
||||
case 1:
|
||||
//无线
|
||||
ui->btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-wifi.png"));
|
||||
btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-wifi.png"));
|
||||
break;
|
||||
case 2:
|
||||
//有线+无线
|
||||
ui->btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-wired.png"));
|
||||
btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-wired.png"));
|
||||
break;
|
||||
default:
|
||||
//无连接
|
||||
ui->btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-no-signal.png"));
|
||||
btnNetworkManager->setIcon(QIcon(":/image/assets/intel/icon-no-signal.png"));
|
||||
}
|
||||
}
|
||||
|
||||
void LockWidget::loadNetPlugin()
|
||||
{
|
||||
m_kylinNM = new QWidget(this);
|
||||
m_kylinNM->setFixedSize(420,480);
|
||||
m_kylinNM->setObjectName("m_kylinNM");
|
||||
m_kylinNM->setStyleSheet("#m_kylinNM{background-color: white; border-radius:12px;}");
|
||||
|
||||
mkylinNM = new MyTabWidget(m_kylinNM);
|
||||
mkylinNM->setFixedSize(420,480);
|
||||
mkylinNM->tabBar()->setFixedHeight(40);
|
||||
mkylinNM->installEventFilter(this);
|
||||
|
||||
QPluginLoader netloader("/usr/lib/kylin-nm/libnetconnect.so");//有线
|
||||
QPluginLoader wlanloader("/usr/lib/kylin-nm/libwlanconnect.so");//无线
|
||||
|
||||
if (netloader.load()) {
|
||||
QObject * plugin = netloader.instance();
|
||||
|
||||
if (plugin) {
|
||||
Interface * pluginInstance = qobject_cast<Interface *>(plugin);
|
||||
// 插件是否启用
|
||||
if (!pluginInstance) {
|
||||
return;
|
||||
}
|
||||
|
||||
pluginInstance->setPluginType(SIMPLE);
|
||||
QWidget *widget = pluginInstance->pluginUi();
|
||||
mkylinNM->addTab(widget,"");
|
||||
|
||||
} else {
|
||||
qDebug() << "Load Failed: " << netloader.errorString() << "\n";
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
qDebug() << "Load Failed: " << netloader.errorString() << "\n";
|
||||
return;
|
||||
}
|
||||
|
||||
if (wlanloader.load()) {
|
||||
QObject * plugin = wlanloader.instance();
|
||||
|
||||
if (plugin) {
|
||||
Interface * pluginInstance = qobject_cast<Interface *>(plugin);
|
||||
// 插件是否启用
|
||||
if (!pluginInstance) {
|
||||
return;
|
||||
}
|
||||
|
||||
pluginInstance->setPluginType(SIMPLE);
|
||||
/*这里需要先调用setParentWidget,否则会出现网络连接弹窗无法弹出来的问题*/
|
||||
pluginInstance->setParentWidget(this);
|
||||
QWidget *widget = pluginInstance->pluginUi();
|
||||
mkylinNM->addTab(widget,"");
|
||||
|
||||
} else {
|
||||
qDebug() << "Load Failed: " << wlanloader.errorString() << "\n";
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
qDebug() << "Load Failed: " << wlanloader.errorString() << "\n";
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
QHBoxLayout *m_tabBarLayout = new QHBoxLayout(mkylinNM);
|
||||
m_tabBarLayout->setContentsMargins(0,0,0,0);
|
||||
QLabel *m_lanLabel = new QLabel(tr("LAN"));
|
||||
m_lanLabel->setAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
|
||||
QLabel *m_wlanLabel = new QLabel(tr("WLAN"));
|
||||
m_wlanLabel->setAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
|
||||
m_tabBarLayout->addWidget(m_lanLabel);
|
||||
m_tabBarLayout->addWidget(m_wlanLabel);
|
||||
mkylinNM->tabBar()->setLayout(m_tabBarLayout);
|
||||
mkylinNM->tabBar()->setFixedWidth(420);
|
||||
QPalette pal = qApp->palette();
|
||||
pal.setBrush(QPalette::Background, Qt::white);
|
||||
// m_kylinNM->setPalette(pal);
|
||||
mkylinNM->widget(0)->setPalette(pal);
|
||||
mkylinNM->widget(1)->setPalette(pal);
|
||||
|
||||
m_kylinNM->setGeometry(this->width() - mkylinNM->width() - 20,
|
||||
this->height() - mkylinNM->height() - 100,
|
||||
mkylinNM->width(),
|
||||
mkylinNM->height());
|
||||
|
||||
}
|
||||
|
||||
void LockWidget::switchToGreeter()
|
||||
{
|
||||
if(authDialog)
|
||||
|
@ -1384,13 +1482,11 @@ void LockWidget::resizeEvent(QResizeEvent *event)
|
|||
x = x + ui->btnPowerManager->width();
|
||||
ui->btnPowerManager->move(width() - x,height() - y);
|
||||
|
||||
if(ui->btnKeyboard->isVisible()){
|
||||
x = x+ui->btnKeyboard->width()+16;
|
||||
ui->btnKeyboard->move(width() - x, height() - y);
|
||||
}
|
||||
x = x+ui->btnKeyboard->width()+16;
|
||||
ui->btnKeyboard->move(width() - x, height() - y);
|
||||
|
||||
x = x + ui->btnNetworkManager->width()+16;
|
||||
ui->btnNetworkManager->move(width() - x, height() - y);
|
||||
x = x + btnNetworkManager->width()+16;
|
||||
btnNetworkManager->move(width() - x, height() - y);
|
||||
|
||||
if(!ui->btnSwitchUser->isHidden()) {
|
||||
x = x + ui->btnSwitchUser->width()+16;
|
||||
|
@ -1439,9 +1535,7 @@ void LockWidget::resizeEvent(QResizeEvent *event)
|
|||
powermanager->width(),powermanager->height());
|
||||
|
||||
}
|
||||
if(QX11Info::isPlatformX11()){
|
||||
// XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
// XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1492,24 +1586,6 @@ void LockWidget::onUserAdded(const UserItem &user)
|
|||
usersMenu->adjustSize();
|
||||
}
|
||||
|
||||
QPixmap LockWidget::PixmapToRound(const QPixmap &src, int radius)
|
||||
{
|
||||
if (src.isNull()) {
|
||||
return QPixmap();
|
||||
}
|
||||
|
||||
QPixmap pixmapa(src);
|
||||
QPixmap pixmap(radius*2,radius*2);
|
||||
pixmap.fill(Qt::transparent);
|
||||
QPainter painter(&pixmap);
|
||||
painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
|
||||
QPainterPath path;
|
||||
path.addEllipse(0, 0, radius*2, radius*2);
|
||||
painter.setClipPath(path);
|
||||
painter.drawPixmap(0, 0, radius*2, radius*2, pixmapa);
|
||||
return pixmap;
|
||||
}
|
||||
|
||||
void LockWidget::onUserDeleted(const UserItem &user)
|
||||
{
|
||||
for(auto action : usersMenu->actions())
|
||||
|
@ -1617,7 +1693,7 @@ bool LockWidget::exitSubWidget()
|
|||
setCheckedSheet(NETWORKBTN, false);
|
||||
at_plugins = false;
|
||||
if(tabAt == BOTTMBTN && horAT == NETWORKBTN)
|
||||
ui->btnNetworkManager->setStyleSheet(ON_TAB_SHEET);
|
||||
btnNetworkManager->setStyleSheet(ON_TAB_SHEET);
|
||||
allExited = false;
|
||||
} else if(vKeyboard && vKeyboard->isVisible()) {
|
||||
vKeyboard->hide();
|
||||
|
|
|
@ -25,6 +25,9 @@
|
|||
#include <QWidget>
|
||||
#include <QResizeEvent>
|
||||
#include <QDBusArgument>
|
||||
#include <QTabWidget>
|
||||
#include <kylin-nm/kynetworkicon.h>
|
||||
#include "kylin-nm/kylin-nm-interface.h"
|
||||
#include "surewindow.h"
|
||||
#include "lockchecker.h"
|
||||
#include "xeventmonitor.h"
|
||||
|
@ -99,15 +102,15 @@ private:
|
|||
void updateNetIcon(int status);
|
||||
bool getLoadStatus(const QString &name);
|
||||
int getNetStatus();
|
||||
QPixmap PixmapToRound(const QPixmap &src, int radius);
|
||||
void key_OB_release(int key);
|
||||
void key_tab_release(int key);
|
||||
void key_shiftTab_release();
|
||||
void key_LR_release(int key);
|
||||
void key_enter_release(int key);
|
||||
int getLoginedNum();
|
||||
void setBottomBtnSheet();
|
||||
void setCheckedSheet(int type, bool show);
|
||||
void loadNetPlugin();
|
||||
void setBottomBtnSheet();
|
||||
void setCheckedSheet(int type, bool show);
|
||||
private Q_SLOTS:
|
||||
void onUserAdded(const UserItem &user);
|
||||
void onUserDeleted(const UserItem &user);
|
||||
|
@ -149,14 +152,16 @@ private:
|
|||
QScrollArea *scrollArea;
|
||||
QWidget *scrollContents;
|
||||
|
||||
QWidget *m_kylinNM = nullptr;
|
||||
BatteryWidget *mBatteryWidget = nullptr;
|
||||
KylinNM *m_kylinNM = nullptr;
|
||||
QTabWidget *mkylinNM = nullptr;
|
||||
QWidget *m_NetManagerWidget;
|
||||
QStringList m_loginedUser;
|
||||
bool isNetFinished = false;
|
||||
int powermanagerType;
|
||||
int nowAt = -1;
|
||||
int loginedNum = 0;
|
||||
QPushButton *btnNetworkManager = nullptr;
|
||||
bool m_isStartupMode = false;
|
||||
bool is_switchBtn = true;
|
||||
bool is_batteryBtn = true;
|
||||
|
@ -165,6 +170,7 @@ private:
|
|||
int horAT = BATTERYBTN;
|
||||
int at_power = false;
|
||||
bool at_plugins = false;
|
||||
|
||||
QDBusInterface *batInterface = nullptr;
|
||||
QDBusInterface *iface = nullptr;
|
||||
QDBusInterface *dface = nullptr;
|
||||
|
|
|
@ -144,25 +144,6 @@ QPushButton::pressed {
|
|||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="btnNetworkManager">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>370</x>
|
||||
<y>10</y>
|
||||
<width>80</width>
|
||||
<height>26</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="cursor">
|
||||
<cursorShape>PointingHandCursor</cursorShape>
|
||||
</property>
|
||||
<property name="focusPolicy">
|
||||
<enum>Qt::NoFocus</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="btnBatteryStatus">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
#include "mytabwidget.h"
|
||||
#include <QStyleOption>
|
||||
#include <QPainter>
|
||||
#include <QBitmap>
|
||||
|
||||
MyTabWidget::MyTabWidget(QWidget *parent) : QTabWidget(parent)
|
||||
{
|
||||
//隐藏标题栏
|
||||
// setWindowFlags(Qt::FramelessWindowHint);//无边框 置顶
|
||||
|
||||
//设置窗口背景透明
|
||||
// setAttribute(Qt::WA_TranslucentBackground,false);
|
||||
|
||||
//设置样式
|
||||
|
||||
// QWidget *w = new QWidget(this);
|
||||
// QWidget *k = new QWidget(this);
|
||||
// this->addTab(w,"111");
|
||||
// this->addTab(k,"222");
|
||||
|
||||
|
||||
}
|
||||
|
||||
void MyTabWidget::paintEvent(QPaintEvent *p1)
|
||||
{
|
||||
//绘制样式
|
||||
QStyleOption opt;
|
||||
opt.initFrom(this);
|
||||
QPainter p(this);
|
||||
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);//绘制样式
|
||||
|
||||
QBitmap bmp(this->size());
|
||||
bmp.fill();
|
||||
QPainter painter(&bmp);
|
||||
painter.setPen(Qt::NoPen);
|
||||
painter.setBrush(Qt::black);
|
||||
painter.setRenderHint(QPainter::Antialiasing);
|
||||
painter.drawRoundedRect(bmp.rect(), 12, 12);
|
||||
setMask(bmp);
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
#ifndef MYTABWIDGET_H
|
||||
#define MYTABWIDGET_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QTabWidget>
|
||||
|
||||
class MyTabWidget : public QTabWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit MyTabWidget(QWidget *parent = nullptr);
|
||||
void paintEvent(QPaintEvent *event);
|
||||
|
||||
signals:
|
||||
|
||||
};
|
||||
|
||||
#endif // WIDGET_H
|
|
@ -1,170 +0,0 @@
|
|||
#include "plasma-shell-manager.h"
|
||||
|
||||
#include <QApplication>
|
||||
|
||||
#include <KWayland/Client/connection_thread.h>
|
||||
#include <KWayland/Client/registry.h>
|
||||
|
||||
#include <KWayland/Client/surface.h>
|
||||
#include <unistd.h>
|
||||
#include <QDebug>
|
||||
|
||||
static PlasmaShellManager* global_instance = nullptr;
|
||||
|
||||
PlasmaShellManager *PlasmaShellManager::getInstance()
|
||||
{
|
||||
if (!global_instance)
|
||||
{
|
||||
global_instance = new PlasmaShellManager;
|
||||
qDebug() << "Here create instance...";
|
||||
}
|
||||
qDebug() << "Return instance";
|
||||
return global_instance;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::setAppWindowActive()
|
||||
{
|
||||
if (!supportPlasmaWindowManagement())
|
||||
return false;
|
||||
|
||||
m_appWindow->requestActivate();
|
||||
return true;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::setAppWindowKeepAbove(bool keep)
|
||||
{
|
||||
if (!supportPlasmaWindowManagement())
|
||||
{
|
||||
qDebug() << "false";
|
||||
return false;
|
||||
}
|
||||
if(keep != m_appWindow->isKeepAbove()) {
|
||||
qDebug() << "to keep above";
|
||||
m_appWindow->requestToggleKeepAbove();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::setMaximized(QWindow *window)
|
||||
{
|
||||
if (!supportShell())
|
||||
return false;
|
||||
|
||||
auto surface = KWayland::Client::Surface::fromWindow(window);
|
||||
if (!surface)
|
||||
return false;
|
||||
|
||||
auto shellSurface = m_shell->createSurface(surface, window);
|
||||
if (!shellSurface)
|
||||
return false;
|
||||
|
||||
shellSurface->setMaximized();
|
||||
return true;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::setRole(QWindow *window, KWayland::Client::PlasmaShellSurface::Role role)
|
||||
{
|
||||
if (!supportPlasmaShell())
|
||||
return false;
|
||||
|
||||
auto surface = KWayland::Client::Surface::fromWindow(window);
|
||||
if (!surface)
|
||||
return false;
|
||||
|
||||
auto plasmaShellSurface = m_plasmaShell->createSurface(surface, window);
|
||||
if (!plasmaShellSurface)
|
||||
return false;
|
||||
|
||||
plasmaShellSurface->setRole(role);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::setPos(QWindow *window, const QPoint &pos)
|
||||
{
|
||||
if (!supportPlasmaShell())
|
||||
return false;
|
||||
|
||||
auto surface = KWayland::Client::Surface::fromWindow(window);
|
||||
if (!surface)
|
||||
return false;
|
||||
|
||||
auto plasmaShellSurface = m_plasmaShell->createSurface(surface, window);
|
||||
if (!plasmaShellSurface)
|
||||
return false;
|
||||
|
||||
plasmaShellSurface->setPosition(pos);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::supportPlasmaShell()
|
||||
{
|
||||
return m_plasmaShell;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::supportShell()
|
||||
{
|
||||
return m_shell;
|
||||
}
|
||||
|
||||
bool PlasmaShellManager::supportPlasmaWindowManagement()
|
||||
{
|
||||
return m_windowManager && m_appWindow;
|
||||
}
|
||||
|
||||
PlasmaShellManager::PlasmaShellManager(QObject *parent) : QObject(parent)
|
||||
{
|
||||
auto connection = KWayland::Client::ConnectionThread::fromApplication(qApp);
|
||||
auto registry = new KWayland::Client::Registry(this);
|
||||
registry->create(connection->display());
|
||||
|
||||
connect(registry, &KWayland::Client::Registry::plasmaShellAnnounced, this, [=](){
|
||||
qDebug() << "plasmaShellAnnounced...";
|
||||
const auto interface = registry->interface(KWayland::Client::Registry::Interface::PlasmaShell);
|
||||
if (interface.name != 0) {
|
||||
qDebug() << "createPlasmaShell...";
|
||||
m_plasmaShell = registry->createPlasmaShell(interface.name, interface.version, this);
|
||||
}
|
||||
});
|
||||
|
||||
connect(registry, &KWayland::Client::Registry::plasmaWindowManagementAnnounced, this, [=](){
|
||||
qDebug() << "plasmaWindowManagementAnnounced";
|
||||
const auto interface = registry->interface(KWayland::Client::Registry::Interface::PlasmaWindowManagement);
|
||||
if (interface.name != 0) {
|
||||
qDebug() << "createPlasmaWindowManagement";
|
||||
m_windowManager = registry->createPlasmaWindowManagement(interface.name, interface.version, this);
|
||||
}
|
||||
if(m_windowManager) {
|
||||
connect(m_windowManager, &KWayland::Client::PlasmaWindowManagement::windowCreated,
|
||||
[this](KWayland::Client::PlasmaWindow *window) {
|
||||
qDebug()<< "PlasmaWindow...";
|
||||
if (window->pid() == getpid()) {
|
||||
if(isFirstCreate) {
|
||||
isFirstCreate = false;
|
||||
m_appWindow = window;
|
||||
|
||||
connect(m_appWindow, &KWayland::Client::PlasmaWindow::activeChanged,
|
||||
[this]() {
|
||||
this->setAppWindowKeepAbove(true);
|
||||
this->setAppWindowActive();
|
||||
});
|
||||
connect(m_appWindow, &KWayland::Client::PlasmaWindow::keepAboveChanged,
|
||||
[this]() {
|
||||
this->setAppWindowKeepAbove(true);
|
||||
this->setAppWindowActive();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
connect(registry, &KWayland::Client::Registry::shellAnnounced, this, [=](){
|
||||
const auto interface = registry->interface(KWayland::Client::Registry::Interface::Shell);
|
||||
if (interface.name != 0) {
|
||||
m_shell = registry->createShell(interface.name, interface.version, this);
|
||||
}
|
||||
});
|
||||
|
||||
registry->setup();
|
||||
connection->roundtrip();
|
||||
}
|
|
@ -1,37 +0,0 @@
|
|||
#ifndef PLASMASHELLMANAGER_H
|
||||
#define PLASMASHELLMANAGER_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QWindow>
|
||||
#include <KWayland/Client/plasmawindowmanagement.h>
|
||||
#include <KWayland/Client/plasmashell.h>
|
||||
#include <KWayland/Client/shell.h>
|
||||
|
||||
class PlasmaShellManager : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
static PlasmaShellManager *getInstance();
|
||||
|
||||
bool setAppWindowActive();
|
||||
bool setAppWindowKeepAbove(bool keep);
|
||||
bool setMaximized(QWindow *window);
|
||||
bool setRole(QWindow *window, KWayland::Client::PlasmaShellSurface::Role role);
|
||||
bool setPos(QWindow *window, const QPoint &pos);
|
||||
bool supportPlasmaShell();
|
||||
bool supportShell();
|
||||
bool supportPlasmaWindowManagement();
|
||||
|
||||
private:
|
||||
explicit PlasmaShellManager(QObject *parent = nullptr);
|
||||
|
||||
KWayland::Client::PlasmaShell *m_plasmaShell = nullptr;
|
||||
KWayland::Client::Shell *m_shell = nullptr;
|
||||
KWayland::Client::PlasmaWindowManagement *m_windowManager = nullptr;
|
||||
KWayland::Client::PlasmaWindow *m_appWindow = nullptr;
|
||||
|
||||
bool isFirstCreate = true;
|
||||
};
|
||||
|
||||
|
||||
#endif // PLASMASHELLMANAGER_H
|
|
@ -51,6 +51,11 @@ PowerManager::PowerManager(int num, QWidget *parent)
|
|||
lasttime(QTime::currentTime())
|
||||
{
|
||||
// resize(ITEM_WIDTH*7, ITEM_HEIGHT);
|
||||
QFile qssFile(":/qss/assets/authdialog.qss");
|
||||
if(qssFile.open(QIODevice::ReadOnly)) {
|
||||
this->setStyleSheet(qssFile.readAll());
|
||||
}
|
||||
setObjectName("PowerManager");
|
||||
setFlow(QListWidget::LeftToRight);
|
||||
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
|
|
|
@ -143,9 +143,7 @@ bool ScreenSaverWidget::eventFilter(QObject *obj, QEvent *event)
|
|||
{
|
||||
if(event->type() == 23)
|
||||
{
|
||||
if(QX11Info::isPlatformX11()){
|
||||
XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
XSetInputFocus(QX11Info::display(),this->winId(),RevertToParent,CurrentTime);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -28,7 +28,6 @@
|
|||
#include <QDebug>
|
||||
#include <QDesktopWidget>
|
||||
#include <QDBusInterface>
|
||||
#include "plasma-shell-manager.h"
|
||||
#include <signal.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
|
@ -198,11 +197,11 @@ int main(int argc, char *argv[])
|
|||
|
||||
window = new FullBackgroundWidget();
|
||||
|
||||
QFile qssFile(":/qss/assets/authdialog.qss");
|
||||
if(qssFile.open(QIODevice::ReadOnly)) {
|
||||
a.setStyleSheet(qssFile.readAll());
|
||||
}
|
||||
qssFile.close();
|
||||
// QFile qssFile(":/qss/assets/authdialog.qss");
|
||||
// if(qssFile.open(QIODevice::ReadOnly)) {
|
||||
// a.setStyleSheet(qssFile.readAll());
|
||||
// }
|
||||
// qssFile.close();
|
||||
// 注册DBus
|
||||
ScreenSaverWndAdaptor adaptorWnd(window);
|
||||
|
||||
|
@ -226,7 +225,7 @@ int main(int argc, char *argv[])
|
|||
}
|
||||
|
||||
#ifndef USE_INTEL
|
||||
window->showFullScreen();
|
||||
window->show();
|
||||
window->activateWindow();
|
||||
#endif
|
||||
if(parser.isSet(lockOption))
|
||||
|
@ -267,16 +266,6 @@ int main(int argc, char *argv[])
|
|||
window->show();
|
||||
window->activateWindow();
|
||||
#endif
|
||||
|
||||
|
||||
bool isWayland = false;
|
||||
if(QString(qgetenv("XDG_SESSION_TYPE")) == "wayland") {
|
||||
isWayland = true;
|
||||
}
|
||||
if (isWayland){
|
||||
PlasmaShellManager::getInstance();
|
||||
PlasmaShellManager::getInstance()->setAppWindowKeepAbove(true);
|
||||
}
|
||||
|
||||
QString username = getenv("USER");
|
||||
int uid = getuid();
|
||||
|
|
Loading…
Reference in New Issue