feat(network): Adapt network plugin
Description: 适配网络插件 Log: 123734 子 openkylin网络插件化适配 / openkylin网络插件化适配-登录锁屏
|
@ -10,6 +10,7 @@ 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(kylin-nm-base REQUIRED kylin-nm-base)
|
||||
pkg_check_modules(KScreen REQUIRED kscreen2)
|
||||
|
||||
# 是否是intel项目
|
||||
|
|
|
@ -7,12 +7,17 @@ set(CMAKE_AUTORCC ON)
|
|||
qt5_add_resources(VirtualKeyboard_SRC
|
||||
src/keyboard.qrc)
|
||||
|
||||
qt5_wrap_cpp(VirtualKeyboard_SRC
|
||||
src/vkstackedwidget.h
|
||||
)
|
||||
|
||||
set(VirtualKeyboard_SRC
|
||||
${VirtualKeyboard_SRC}
|
||||
src/cursormonitor.cpp
|
||||
src/keyboardwidget.cpp
|
||||
src/virtualkeyboard.cpp
|
||||
src/x11keyboard.cpp
|
||||
src/vkstackedwidget.cpp
|
||||
src/keyboard.qrc)
|
||||
|
||||
include_directories(
|
||||
|
|
|
@ -50,25 +50,25 @@
|
|||
<item>
|
||||
<layout class="QHBoxLayout" name="hl_main">
|
||||
<property name="spacing">
|
||||
<number>20</number>
|
||||
<number>8</number>
|
||||
</property>
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetNoConstraint</enum>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>10</number>
|
||||
<number>8</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>10</number>
|
||||
<number>8</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>10</number>
|
||||
<number>8</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>10</number>
|
||||
<number>8</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QStackedWidget" name="stackedWidget">
|
||||
<widget class="VKStackedWidget" name="stackedWidget">
|
||||
<property name="currentIndex">
|
||||
<number>1</number>
|
||||
</property>
|
||||
|
@ -107,8 +107,8 @@
|
|||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
|
@ -695,8 +695,8 @@
|
|||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
|
@ -707,9 +707,24 @@
|
|||
</widget>
|
||||
<widget class="QWidget" name="page_number">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
<property name="spacing">
|
||||
<number>4</number>
|
||||
</property>
|
||||
<property name="sizeConstraint">
|
||||
<enum>QLayout::SetNoConstraint</enum>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
|
@ -872,7 +887,7 @@
|
|||
<item row="4" column="1">
|
||||
<widget class="QPushButton" name="btn_backspace_num">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -885,7 +900,7 @@
|
|||
<item row="4" column="2">
|
||||
<widget class="QPushButton" name="btn_enter_num">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -973,7 +988,7 @@
|
|||
<item row="3" column="4">
|
||||
<widget class="QPushButton" name="btn_right">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -986,7 +1001,7 @@
|
|||
<item row="3" column="2">
|
||||
<widget class="QPushButton" name="btn_left">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -1012,7 +1027,7 @@
|
|||
<item row="3" column="3">
|
||||
<widget class="QPushButton" name="btn_down">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -1025,7 +1040,7 @@
|
|||
<item row="2" column="3">
|
||||
<widget class="QPushButton" name="btn_up">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
|
@ -1096,8 +1111,8 @@
|
|||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
|
@ -1185,8 +1200,8 @@
|
|||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
<width>10</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
|
@ -1198,6 +1213,14 @@
|
|||
</layout>
|
||||
</widget>
|
||||
<layoutdefault spacing="6" margin="11"/>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>VKStackedWidget</class>
|
||||
<extends>QStackedWidget</extends>
|
||||
<header>src/vkstackedwidget.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
|
|
@ -39,10 +39,12 @@ VirtualKeyboard::VirtualKeyboard(QWidget *parent)
|
|||
|
||||
keyboardWidget = new KeyboardWidget(this);
|
||||
QHBoxLayout *hl_keyboard = new QHBoxLayout(this);
|
||||
QSpacerItem *spacer = new QSpacerItem(40, 20);
|
||||
hl_keyboard->setContentsMargins(0,0,0,0);
|
||||
hl_keyboard->setSpacing(0);
|
||||
QSpacerItem *spacer = new QSpacerItem(10, 5);
|
||||
hl_keyboard->addSpacerItem(spacer);
|
||||
hl_keyboard->addWidget(keyboardWidget);
|
||||
QSpacerItem *spacer2 = new QSpacerItem(40, 20);
|
||||
QSpacerItem *spacer2 = new QSpacerItem(10, 5);
|
||||
hl_keyboard->addSpacerItem(spacer2);
|
||||
|
||||
QFile qssFile(":/qss/keyboard.qss");
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
#include "vkstackedwidget.h"
|
||||
|
||||
VKStackedWidget::VKStackedWidget(QWidget *parent/* = nullptr*/)
|
||||
: QStackedWidget(parent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
VKStackedWidget::~VKStackedWidget()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QSize VKStackedWidget::sizeHint() const
|
||||
{
|
||||
return currentWidget()->sizeHint();
|
||||
}
|
||||
|
||||
QSize VKStackedWidget::minimumSizeHint() const
|
||||
{
|
||||
return currentWidget()->minimumSizeHint();
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
#ifndef VKSTACKEDWIDGET_H
|
||||
#define VKSTACKEDWIDGET_H
|
||||
|
||||
#include <QStackedWidget>
|
||||
|
||||
class VKStackedWidget : public QStackedWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit VKStackedWidget(QWidget *parent = nullptr);
|
||||
virtual ~VKStackedWidget();
|
||||
|
||||
protected:
|
||||
QSize sizeHint() const override;
|
||||
QSize minimumSizeHint() const override;
|
||||
};
|
||||
|
||||
#endif // VKSTACKEDWIDGET_H
|
|
@ -16,12 +16,19 @@ Build-Depends: debhelper-compat (= 12),
|
|||
libx11-dev,
|
||||
libxtst-dev,
|
||||
libqt5svg5-dev,
|
||||
libkylin-nm-base (>=3.20.0.9-0k1),
|
||||
libnm-dev,
|
||||
libkf5networkmanagerqt-dev,
|
||||
kylin-nm-plugin,
|
||||
libkf5wayland-dev,
|
||||
libkf5screen-dev,
|
||||
libgsettings-qt-dev,
|
||||
libkf5windowsystem-dev,
|
||||
libmatemixer-dev,
|
||||
libukui-log4qt-dev
|
||||
libukui-log4qt-dev,
|
||||
libkysdk-sysinfo-dev (>> 1.1.0kylin1),
|
||||
ukui-input-gather (>=1.0.0.2),
|
||||
libinput-dev
|
||||
Standards-Version: 4.5.0
|
||||
Rules-Requires-Root: no
|
||||
Homepage: https://www.github.com/ukui/ukui-screensaver
|
||||
|
@ -34,6 +41,7 @@ Depends: ethtool,
|
|||
mate-desktop-common,
|
||||
ukui-session-manager,
|
||||
libpam-biometric(>=3.20.0.10),
|
||||
ukui-input-gather(>=1.0.0.2),
|
||||
${misc:Depends},
|
||||
${shlibs:Depends}
|
||||
Replaces: ukui-screensaver-common (<< 2.0.0)
|
||||
|
|
477
i18n_ts/bo.ts
|
@ -4,108 +4,131 @@
|
|||
<context>
|
||||
<name>AuthDialog</name>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="653"/>
|
||||
<location filename="../src/authdialog.cpp" line="726"/>
|
||||
<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="316"/>
|
||||
<location filename="../src/authdialog.cpp" line="253"/>
|
||||
<location filename="../src/authdialog.cpp" line="320"/>
|
||||
<location filename="../src/authdialog.cpp" line="321"/>
|
||||
<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="325"/>
|
||||
<location filename="../src/authdialog.cpp" line="262"/>
|
||||
<location filename="../src/authdialog.cpp" line="263"/>
|
||||
<location filename="../src/authdialog.cpp" line="329"/>
|
||||
<location filename="../src/authdialog.cpp" line="330"/>
|
||||
<source>Please try again in %1 seconds.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<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="272"/>
|
||||
<location filename="../src/authdialog.cpp" line="273"/>
|
||||
<location filename="../src/authdialog.cpp" line="338"/>
|
||||
<location filename="../src/authdialog.cpp" line="339"/>
|
||||
<source>Account locked permanently.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="449"/>
|
||||
<location filename="../src/authdialog.cpp" line="459"/>
|
||||
<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="464"/>
|
||||
<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="469"/>
|
||||
<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="474"/>
|
||||
<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="479"/>
|
||||
<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="484"/>
|
||||
<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="537"/>
|
||||
<location filename="../src/authdialog.cpp" line="538"/>
|
||||
<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="686"/>
|
||||
<source>Password </source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="616"/>
|
||||
<location filename="../src/authdialog.cpp" line="688"/>
|
||||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="678"/>
|
||||
<location filename="../src/authdialog.cpp" line="754"/>
|
||||
<source>Login</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="684"/>
|
||||
<location filename="../src/authdialog.cpp" line="766"/>
|
||||
<source>Retry</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="912"/>
|
||||
<location filename="../src/authdialog.cpp" line="1011"/>
|
||||
<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="1015"/>
|
||||
<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="1021"/>
|
||||
<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="1032"/>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="163"/>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="165"/>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="169"/>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="172"/>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -253,32 +276,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 +350,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 +403,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 +486,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 +620,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 +718,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 +867,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 +965,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 +1108,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 +1242,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 +1345,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 +1403,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>
|
||||
|
@ -1435,6 +1447,124 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="101"/>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="101"/>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="120"/>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="120"/>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="284"/>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="290"/>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="295"/>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="301"/>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="303"/>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="309"/>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="314"/>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="334"/>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="338"/>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="342"/>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="346"/>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="350"/>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="354"/>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="358"/>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="362"/>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="366"/>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="370"/>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="374"/>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="378"/>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1473,7 +1603,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 +1611,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>
|
||||
|
@ -1554,7 +1682,7 @@
|
|||
<location filename="../KylinNM/src/kylinnm.cpp" line="1535"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="1701"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2426"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2517"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2518"/>
|
||||
<source>Not connected</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1567,7 +1695,7 @@
|
|||
<location filename="../KylinNM/src/kylinnm.cpp" line="1828"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="1995"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2428"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2519"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2520"/>
|
||||
<source>Disconnected</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1593,22 +1721,22 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2705"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2706"/>
|
||||
<source>Conn Ethernet Success</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2717"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2718"/>
|
||||
<source>Conn Ethernet Fail</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2742"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2743"/>
|
||||
<source>Conn Wifi Success</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2751"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2752"/>
|
||||
<source>Confirm your Wi-Fi password or usable of wireless card</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1617,32 +1745,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="1092"/>
|
||||
<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="1400"/>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="1402"/>
|
||||
<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="64"/>
|
||||
<source>Login Options</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="504"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="550"/>
|
||||
<source>Identify device removed!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1661,7 +1801,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 +1862,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 +1962,39 @@
|
|||
<context>
|
||||
<name>PowerManager</name>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="217"/>
|
||||
<location filename="../src/powermanager.cpp" line="316"/>
|
||||
<source>Log Out</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="200"/>
|
||||
<location filename="../src/powermanager.cpp" line="299"/>
|
||||
<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="334"/>
|
||||
<location filename="../src/powermanager.cpp" line="672"/>
|
||||
<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="354"/>
|
||||
<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="691"/>
|
||||
<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="718"/>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="746"/>
|
||||
<source>Suspend</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1869,20 +2011,95 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="308"/>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="313"/>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="337"/>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="341"/>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="345"/>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="349"/>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="353"/>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="357"/>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="361"/>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="365"/>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="369"/>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="373"/>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="140"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="153"/>
|
||||
<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="1191"/>
|
||||
<source>View</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1242"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1356"/>
|
||||
<source>You have new notification</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1890,8 +2107,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>
|
||||
|
@ -1911,38 +2171,38 @@
|
|||
<context>
|
||||
<name>TabletLockWidget</name>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="180"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="200"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="219"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="234"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="373"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="388"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="189"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="209"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="228"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="243"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="382"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="397"/>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="186"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="398"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="195"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="407"/>
|
||||
<source>Back</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="239"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="248"/>
|
||||
<source>Skip</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="266"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="275"/>
|
||||
<source>New password is the same as old</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="277"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="286"/>
|
||||
<source>Reset password error:%1</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="289"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="298"/>
|
||||
<source>Please scan by correct WeChat</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2014,25 +2274,38 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<location filename="../examples/LoadCustomPlugin/widget.ui" line="14"/>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../examples/LoadCustomPlugin/widget.ui" line="26"/>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="65"/>
|
||||
<location filename="../screensaver/main.cpp" line="56"/>
|
||||
<source>Screensaver for ukui-screensaver</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="69"/>
|
||||
<location filename="../screensaver/main.cpp" line="60"/>
|
||||
<source>show on root window</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="71"/>
|
||||
<location filename="../screensaver/main.cpp" line="62"/>
|
||||
<source>show on window.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="72"/>
|
||||
<location filename="../screensaver/main.cpp" line="63"/>
|
||||
<source>window id</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2043,8 +2316,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="166"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="168"/>
|
||||
<source>lock the screen immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2064,23 +2337,23 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="179"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="161"/>
|
||||
<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="170"/>
|
||||
<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="172"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="176"/>
|
||||
<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="174"/>
|
||||
<source>show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
|
265
i18n_ts/bo_CN.ts
|
@ -83,10 +83,6 @@
|
|||
<source>Login</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,29 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BiometricAuthWidget</name>
|
||||
|
@ -1160,6 +1179,101 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1311,6 +1425,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>
|
||||
|
@ -1459,7 +1585,7 @@
|
|||
<name>PowerManager</name>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<translation>མལ་གསོ།</translation>
|
||||
<translation type="vanished">མལ་གསོ།</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Log Out</source>
|
||||
|
@ -1471,7 +1597,7 @@
|
|||
</message>
|
||||
<message>
|
||||
<source>Restart</source>
|
||||
<translation>བསྐྱར་སློང་།</translation>
|
||||
<translation type="vanished">བསྐྱར་སློང་།</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Switch User</source>
|
||||
|
@ -1489,6 +1615,18 @@
|
|||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>QObject</name>
|
||||
|
@ -1501,6 +1639,69 @@
|
|||
<translation>འཆར་ངོས་སྲུང་སྐྱོབ་བྱ་རིམ་སད་འདུག</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
|
@ -1528,7 +1729,46 @@
|
|||
<name>SleepTime</name>
|
||||
<message>
|
||||
<source>You have rested:</source>
|
||||
<translation>ཁྱེད་ཀྱིས་ ལ་ངལ་གསོས་ཟིན།</translation>
|
||||
<translation type="vanished">ཁྱེད་ཀྱིས་ ལ་ངལ་གསོས་ཟིན།</translation>
|
||||
</message>
|
||||
<message>
|
||||
<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"></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>
|
||||
<context>
|
||||
|
@ -1621,6 +1861,17 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
|
261
i18n_ts/es.ts
|
@ -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,29 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1225,6 +1244,101 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1376,6 +1490,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 +1660,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 +1669,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1566,6 +1696,69 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
|
@ -1584,7 +1777,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>
|
||||
|
@ -1678,6 +1906,17 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
|
261
i18n_ts/fr.ts
|
@ -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,29 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1225,6 +1244,101 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1376,6 +1490,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 +1660,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 +1669,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1566,6 +1696,69 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
|
@ -1584,7 +1777,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>
|
||||
|
@ -1678,6 +1906,17 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
|
261
i18n_ts/pt.ts
|
@ -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,29 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1225,6 +1244,101 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1376,6 +1490,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 +1660,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 +1669,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1566,6 +1696,69 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
|
@ -1584,7 +1777,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>
|
||||
|
@ -1678,6 +1906,17 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
|
261
i18n_ts/ru.ts
|
@ -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,29 @@
|
|||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioAuthWidget</name>
|
||||
|
@ -1225,6 +1244,101 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1376,6 +1490,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 +1660,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 +1669,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Sleep</source>
|
||||
<source>lock</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>lock</source>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Shut Down</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1566,6 +1696,69 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
|
@ -1584,7 +1777,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>
|
||||
|
@ -1678,6 +1906,17 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
|
481
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="766"/>
|
||||
<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="726"/>
|
||||
<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="316"/>
|
||||
<location filename="../src/authdialog.cpp" line="253"/>
|
||||
<location filename="../src/authdialog.cpp" line="320"/>
|
||||
<location filename="../src/authdialog.cpp" line="321"/>
|
||||
<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="325"/>
|
||||
<location filename="../src/authdialog.cpp" line="262"/>
|
||||
<location filename="../src/authdialog.cpp" line="263"/>
|
||||
<location filename="../src/authdialog.cpp" line="329"/>
|
||||
<location filename="../src/authdialog.cpp" line="330"/>
|
||||
<source>Please try again in %1 seconds.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<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="272"/>
|
||||
<location filename="../src/authdialog.cpp" line="273"/>
|
||||
<location filename="../src/authdialog.cpp" line="338"/>
|
||||
<location filename="../src/authdialog.cpp" line="339"/>
|
||||
<source>Account locked permanently.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="449"/>
|
||||
<location filename="../src/authdialog.cpp" line="459"/>
|
||||
<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="464"/>
|
||||
<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="469"/>
|
||||
<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="474"/>
|
||||
<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="479"/>
|
||||
<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="484"/>
|
||||
<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="537"/>
|
||||
<location filename="../src/authdialog.cpp" line="538"/>
|
||||
<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="686"/>
|
||||
<source>Password </source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="616"/>
|
||||
<location filename="../src/authdialog.cpp" line="688"/>
|
||||
<source>Input Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="678"/>
|
||||
<location filename="../src/authdialog.cpp" line="754"/>
|
||||
<source>Login</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="912"/>
|
||||
<location filename="../src/authdialog.cpp" line="1011"/>
|
||||
<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="1015"/>
|
||||
<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="1021"/>
|
||||
<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="1032"/>
|
||||
<source>Abnormal network</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
@ -153,6 +153,29 @@
|
|||
<translation type="obsolete">Diğer Ayıtlar</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="163"/>
|
||||
<source>Charging...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="165"/>
|
||||
<source>fully charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="169"/>
|
||||
<source>PowerMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="172"/>
|
||||
<source>BatteryMode</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>BioDevices</name>
|
||||
<message>
|
||||
|
@ -335,32 +358,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 +432,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 +485,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 +568,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 +702,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 +800,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 +949,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 +1047,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 +1190,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 +1324,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 +1427,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 +1485,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>
|
||||
|
@ -1517,6 +1529,124 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EngineDevice</name>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="101"/>
|
||||
<source>yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="101"/>
|
||||
<source>no</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="120"/>
|
||||
<source>Yes</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="120"/>
|
||||
<source>No</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="284"/>
|
||||
<source>%1% available, charged</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="290"/>
|
||||
<source>Left %1h %2m (%3%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="295"/>
|
||||
<source>%1% available</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="301"/>
|
||||
<source>Left %1h %2m to full</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="303"/>
|
||||
<source>charging (%1%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="309"/>
|
||||
<source>%1 waiting to discharge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="314"/>
|
||||
<source>%1 waiting to charge (%2%)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="334"/>
|
||||
<source>AC adapter</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="338"/>
|
||||
<source>Laptop battery</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="342"/>
|
||||
<source>UPS</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="346"/>
|
||||
<source>Monitor</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="350"/>
|
||||
<source>Mouse</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="354"/>
|
||||
<source>Keyboard</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="358"/>
|
||||
<source>PDA</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="362"/>
|
||||
<source>Cell phone</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="366"/>
|
||||
<source>Media player</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="370"/>
|
||||
<source>Tablet</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="374"/>
|
||||
<source>Computer</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="378"/>
|
||||
<source>unrecognised</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>InputInfos</name>
|
||||
<message>
|
||||
|
@ -1555,7 +1685,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 +1693,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>
|
||||
|
@ -1636,7 +1764,7 @@
|
|||
<location filename="../KylinNM/src/kylinnm.cpp" line="1535"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="1701"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2426"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2517"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2518"/>
|
||||
<source>Not connected</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1649,7 +1777,7 @@
|
|||
<location filename="../KylinNM/src/kylinnm.cpp" line="1828"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="1995"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2428"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2519"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2520"/>
|
||||
<source>Disconnected</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1675,22 +1803,22 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2705"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2706"/>
|
||||
<source>Conn Ethernet Success</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2717"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2718"/>
|
||||
<source>Conn Ethernet Fail</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2742"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2743"/>
|
||||
<source>Conn Wifi Success</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2751"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2752"/>
|
||||
<source>Confirm your Wi-Fi password or usable of wireless card</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1699,19 +1827,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 +1848,26 @@
|
|||
<source>SwitchUser</source>
|
||||
<translation type="vanished">Kullanıcı Değiştir</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="1092"/>
|
||||
<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="1400"/>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="1402"/>
|
||||
<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="64"/>
|
||||
<source>Login Options</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1736,7 +1876,7 @@
|
|||
<translation type="obsolete">Parola</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="504"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="550"/>
|
||||
<source>Identify device removed!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -1755,7 +1895,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 +1956,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 +2056,7 @@
|
|||
<context>
|
||||
<name>PowerManager</name>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="200"/>
|
||||
<location filename="../src/powermanager.cpp" line="299"/>
|
||||
<source>lock</source>
|
||||
<translation>kilit</translation>
|
||||
</message>
|
||||
|
@ -1947,30 +2085,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="316"/>
|
||||
<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="334"/>
|
||||
<location filename="../src/powermanager.cpp" line="672"/>
|
||||
<source>Reboot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="354"/>
|
||||
<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="691"/>
|
||||
<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="718"/>
|
||||
<source>Hibernate</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="746"/>
|
||||
<source>Suspend</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -1987,6 +2133,81 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>S:</name>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="308"/>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="313"/>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="337"/>
|
||||
<source></source>
|
||||
<comment>laptop primary battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="341"/>
|
||||
<source></source>
|
||||
<comment>battery-backed AC power source</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="345"/>
|
||||
<source></source>
|
||||
<comment>a monitor is a device to measure voltage and current</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="349"/>
|
||||
<source></source>
|
||||
<comment>wireless mice with internal batteries</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="353"/>
|
||||
<source></source>
|
||||
<comment>wireless keyboard with internal battery</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="357"/>
|
||||
<source></source>
|
||||
<comment>portable device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="361"/>
|
||||
<source></source>
|
||||
<comment>cell phone (mobile...)</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="365"/>
|
||||
<source></source>
|
||||
<comment>media player, mp3 etc</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="369"/>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="373"/>
|
||||
<source></source>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Screensaver</name>
|
||||
<message>
|
||||
|
@ -1998,17 +2219,17 @@
|
|||
<translation type="obsolete">çıkış</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="140"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="153"/>
|
||||
<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="1191"/>
|
||||
<source>View</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1242"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1356"/>
|
||||
<source>You have new notification</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2024,8 +2245,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>
|
||||
|
@ -2045,38 +2309,38 @@
|
|||
<context>
|
||||
<name>TabletLockWidget</name>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="180"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="200"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="219"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="234"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="373"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="388"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="189"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="209"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="228"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="243"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="382"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="397"/>
|
||||
<source>Cancel</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="186"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="398"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="195"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="407"/>
|
||||
<source>Back</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="239"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="248"/>
|
||||
<source>Skip</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="266"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="275"/>
|
||||
<source>New password is the same as old</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="277"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="286"/>
|
||||
<source>Reset password error:%1</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="289"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="298"/>
|
||||
<source>Please scan by correct WeChat</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -2148,6 +2412,19 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<location filename="../examples/LoadCustomPlugin/widget.ui" line="14"/>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../examples/LoadCustomPlugin/widget.ui" line="26"/>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
@ -2157,8 +2434,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="166"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="168"/>
|
||||
<source>lock the screen immediately</source>
|
||||
<translation type="unfinished">Ekranı hemen kilitle</translation>
|
||||
</message>
|
||||
|
@ -2178,43 +2455,43 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="179"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="161"/>
|
||||
<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="170"/>
|
||||
<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="172"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="176"/>
|
||||
<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="174"/>
|
||||
<source>show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="65"/>
|
||||
<location filename="../screensaver/main.cpp" line="56"/>
|
||||
<source>Screensaver for ukui-screensaver</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="69"/>
|
||||
<location filename="../screensaver/main.cpp" line="60"/>
|
||||
<source>show on root window</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="71"/>
|
||||
<location filename="../screensaver/main.cpp" line="62"/>
|
||||
<source>show on window.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="72"/>
|
||||
<location filename="../screensaver/main.cpp" line="63"/>
|
||||
<source>window id</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
|
201
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="766"/>
|
||||
<source>Retry</source>
|
||||
<translation>重试</translation>
|
||||
</message>
|
||||
|
@ -45,71 +45,71 @@
|
|||
<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="316"/>
|
||||
<location filename="../src/authdialog.cpp" line="253"/>
|
||||
<location filename="../src/authdialog.cpp" line="320"/>
|
||||
<location filename="../src/authdialog.cpp" line="321"/>
|
||||
<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="325"/>
|
||||
<location filename="../src/authdialog.cpp" line="262"/>
|
||||
<location filename="../src/authdialog.cpp" line="263"/>
|
||||
<location filename="../src/authdialog.cpp" line="329"/>
|
||||
<location filename="../src/authdialog.cpp" line="330"/>
|
||||
<source>Please try again in %1 seconds.</source>
|
||||
<translation>请%1秒后再试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<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="272"/>
|
||||
<location filename="../src/authdialog.cpp" line="273"/>
|
||||
<location filename="../src/authdialog.cpp" line="338"/>
|
||||
<location filename="../src/authdialog.cpp" line="339"/>
|
||||
<source>Account locked permanently.</source>
|
||||
<translation>账号已被永久锁定</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="449"/>
|
||||
<location filename="../src/authdialog.cpp" line="459"/>
|
||||
<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="464"/>
|
||||
<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="469"/>
|
||||
<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="474"/>
|
||||
<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="479"/>
|
||||
<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="688"/>
|
||||
<source>Input Password</source>
|
||||
<translation>输入密码</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="909"/>
|
||||
<location filename="../src/authdialog.cpp" line="1011"/>
|
||||
<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="1015"/>
|
||||
<source>Unable to verify %1, please enter password to unlock</source>
|
||||
<translation>无法验证%1,请输入密码解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="937"/>
|
||||
<location filename="../src/authdialog.cpp" line="1032"/>
|
||||
<source>Abnormal network</source>
|
||||
<translation>网络异常</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="537"/>
|
||||
<location filename="../src/authdialog.cpp" line="538"/>
|
||||
<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="1021"/>
|
||||
<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="726"/>
|
||||
<source>Authentication failure, Please try again</source>
|
||||
<translation>认证失败,请重试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="474"/>
|
||||
<location filename="../src/authdialog.cpp" line="484"/>
|
||||
<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="686"/>
|
||||
<source>Password </source>
|
||||
<translation>密码 </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/authdialog.cpp" line="675"/>
|
||||
<location filename="../src/authdialog.cpp" line="754"/>
|
||||
<source>Login</source>
|
||||
<translation>登录</translation>
|
||||
</message>
|
||||
|
@ -205,24 +204,22 @@
|
|||
<context>
|
||||
<name>BatteryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="71"/>
|
||||
<location filename="../src/batterywidget.cpp" line="139"/>
|
||||
<location filename="../src/batterywidget.cpp" line="172"/>
|
||||
<source>BatteryMode</source>
|
||||
<translation>电池模式</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="71"/>
|
||||
<location filename="../src/batterywidget.cpp" line="136"/>
|
||||
<location filename="../src/batterywidget.cpp" line="169"/>
|
||||
<source>PowerMode</source>
|
||||
<translation>电源模式</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="129"/>
|
||||
<location filename="../src/batterywidget.cpp" line="163"/>
|
||||
<source>Charging...</source>
|
||||
<translation>正在充电...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/batterywidget.cpp" line="131"/>
|
||||
<location filename="../src/batterywidget.cpp" line="165"/>
|
||||
<source>fully charged</source>
|
||||
<translation>已充满电</translation>
|
||||
</message>
|
||||
|
@ -421,32 +418,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>
|
||||
|
@ -1917,7 +1914,7 @@
|
|||
<location filename="../KylinNM/src/kylinnm.cpp" line="1535"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="1701"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2426"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2517"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2518"/>
|
||||
<source>Not connected</source>
|
||||
<translation>未连接任何网络</translation>
|
||||
</message>
|
||||
|
@ -1930,7 +1927,7 @@
|
|||
<location filename="../KylinNM/src/kylinnm.cpp" line="1828"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="1995"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2428"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2519"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2520"/>
|
||||
<source>Disconnected</source>
|
||||
<translation>未连接</translation>
|
||||
</message>
|
||||
|
@ -1966,7 +1963,7 @@
|
|||
<translation type="obsolete">断开无线网络</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2751"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2752"/>
|
||||
<source>Confirm your Wi-Fi password or usable of wireless card</source>
|
||||
<translation type="unfinished">请确认Wi-Fi密码或无线设备</translation>
|
||||
</message>
|
||||
|
@ -2022,17 +2019,17 @@
|
|||
<translation type="vanished">正在更新 Wi-Fi列表</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2705"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2706"/>
|
||||
<source>Conn Ethernet Success</source>
|
||||
<translation>连接有线网络成功</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2717"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2718"/>
|
||||
<source>Conn Ethernet Fail</source>
|
||||
<translation>连接有线网络失败</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2742"/>
|
||||
<location filename="../KylinNM/src/kylinnm.cpp" line="2743"/>
|
||||
<source>Conn Wifi Success</source>
|
||||
<translation>连接无线网络成功</translation>
|
||||
</message>
|
||||
|
@ -2045,12 +2042,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>
|
||||
|
@ -2063,17 +2060,17 @@
|
|||
<translation type="vanished">切换用户</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="523"/>
|
||||
<location filename="../src/lockwidget.cpp" line="1092"/>
|
||||
<source>Multiple users are logged in at the same time.Are you sure you want to reboot this system?</source>
|
||||
<translation>同时有多个用户登录系统,您确定要退出系统吗?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="727"/>
|
||||
<location filename="../src/lockwidget.cpp" line="1400"/>
|
||||
<source>LAN</source>
|
||||
<translation type="unfinished">有线网络</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/lockwidget.cpp" line="729"/>
|
||||
<location filename="../src/lockwidget.cpp" line="1402"/>
|
||||
<source>WLAN</source>
|
||||
<translation type="unfinished">无线局域网</translation>
|
||||
</message>
|
||||
|
@ -2081,7 +2078,7 @@
|
|||
<context>
|
||||
<name>LoginOptionsWidget</name>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="49"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="64"/>
|
||||
<source>Login Options</source>
|
||||
<translation>登录选项</translation>
|
||||
</message>
|
||||
|
@ -2094,7 +2091,7 @@
|
|||
<translation type="vanished">微信</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="504"/>
|
||||
<location filename="../src/loginoptionswidget.cpp" line="550"/>
|
||||
<source>Identify device removed!</source>
|
||||
<translation>校验设备已移除!</translation>
|
||||
</message>
|
||||
|
@ -2302,7 +2299,7 @@
|
|||
<context>
|
||||
<name>PowerManager</name>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="380"/>
|
||||
<location filename="../src/powermanager.cpp" line="299"/>
|
||||
<source>lock</source>
|
||||
<translation>锁定</translation>
|
||||
</message>
|
||||
|
@ -2331,38 +2328,37 @@
|
|||
<translation type="vanished">切换用户</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="397"/>
|
||||
<location filename="../src/powermanager.cpp" line="316"/>
|
||||
<source>Log Out</source>
|
||||
<translation>注销</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="415"/>
|
||||
<location filename="../src/powermanager.cpp" line="699"/>
|
||||
<source>Restart</source>
|
||||
<translation>重启</translation>
|
||||
<translation type="vanished">重启</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="325"/>
|
||||
<location filename="../src/powermanager.cpp" line="334"/>
|
||||
<location filename="../src/powermanager.cpp" line="672"/>
|
||||
<source>Reboot</source>
|
||||
<translation>重启</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="345"/>
|
||||
<location filename="../src/powermanager.cpp" line="354"/>
|
||||
<source>Power Off</source>
|
||||
<translation>关机</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="717"/>
|
||||
<location filename="../src/powermanager.cpp" line="691"/>
|
||||
<source>Shut Down</source>
|
||||
<translation>关机</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="743"/>
|
||||
<location filename="../src/powermanager.cpp" line="718"/>
|
||||
<source>Hibernate</source>
|
||||
<translation>休眠</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/powermanager.cpp" line="770"/>
|
||||
<location filename="../src/powermanager.cpp" line="746"/>
|
||||
<source>Suspend</source>
|
||||
<translation>睡眠</translation>
|
||||
</message>
|
||||
|
@ -2389,7 +2385,7 @@
|
|||
<message>
|
||||
<location filename="../src/enginedevice.cpp" line="308"/>
|
||||
<source></source>
|
||||
<comment>this is only shown for laptops with multiple batteries</comment>
|
||||
<comment>tablet device</comment>
|
||||
<translation></translation>
|
||||
</message>
|
||||
</context>
|
||||
|
@ -2404,7 +2400,7 @@
|
|||
<translation type="vanished">退出</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="140"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="153"/>
|
||||
<source>Picture does not exist</source>
|
||||
<translation>图片不存在</translation>
|
||||
</message>
|
||||
|
@ -2421,12 +2417,12 @@
|
|||
<translation type="obsolete">您有%1条未读消息</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1289"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1356"/>
|
||||
<source>You have new notification</source>
|
||||
<translation>您有新的消息</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1133"/>
|
||||
<location filename="../screensaver/screensaver.cpp" line="1191"/>
|
||||
<source>View</source>
|
||||
<translation>预览</translation>
|
||||
</message>
|
||||
|
@ -2434,9 +2430,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 +2452,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>
|
||||
|
@ -2527,38 +2521,38 @@
|
|||
<translation type="vanished">向上滑动解锁</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="266"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="275"/>
|
||||
<source>New password is the same as old</source>
|
||||
<translation>新密码与原密码相同</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="277"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="286"/>
|
||||
<source>Reset password error:%1</source>
|
||||
<translation>重置密码失败:%1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="289"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="298"/>
|
||||
<source>Please scan by correct WeChat</source>
|
||||
<translation>请使用正确的微信扫码</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="180"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="200"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="219"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="234"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="373"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="388"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="189"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="209"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="228"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="243"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="382"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="397"/>
|
||||
<source>Cancel</source>
|
||||
<translation>取消</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="186"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="398"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="195"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="407"/>
|
||||
<source>Back</source>
|
||||
<translation>返回</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="239"/>
|
||||
<location filename="../src/tabletlockwidget.cpp" line="248"/>
|
||||
<source>Skip</source>
|
||||
<translation>跳过</translation>
|
||||
</message>
|
||||
|
@ -2634,6 +2628,19 @@
|
|||
<translation type="vanished">登录失败</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Widget</name>
|
||||
<message>
|
||||
<location filename="../examples/LoadCustomPlugin/widget.ui" line="14"/>
|
||||
<source>Widget</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../examples/LoadCustomPlugin/widget.ui" line="26"/>
|
||||
<source>LoadPlugin</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>main</name>
|
||||
<message>
|
||||
|
@ -2643,8 +2650,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="166"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="168"/>
|
||||
<source>lock the screen immediately</source>
|
||||
<translation>马上锁定屏幕</translation>
|
||||
</message>
|
||||
|
@ -2664,43 +2671,43 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="158"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="161"/>
|
||||
<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="170"/>
|
||||
<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="172"/>
|
||||
<location filename="../src/ukui-screensaver-dialog.cpp" line="176"/>
|
||||
<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="174"/>
|
||||
<source>show screensaver immediately</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="65"/>
|
||||
<location filename="../screensaver/main.cpp" line="56"/>
|
||||
<source>Screensaver for ukui-screensaver</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="69"/>
|
||||
<location filename="../screensaver/main.cpp" line="60"/>
|
||||
<source>show on root window</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="71"/>
|
||||
<location filename="../screensaver/main.cpp" line="62"/>
|
||||
<source>show on window.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../screensaver/main.cpp" line="72"/>
|
||||
<location filename="../screensaver/main.cpp" line="63"/>
|
||||
<source>window id</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
|
|
@ -2,107 +2,166 @@
|
|||
OL=天生我材必有用,千金散尽还复来。
|
||||
author=李白《将进酒》
|
||||
[2]
|
||||
OL=新时代的伟大成就是党和人民一道拼出来、干出来、奋斗出来的。
|
||||
author=习近平
|
||||
[3]
|
||||
OL=莫愁前路无知己,天下谁人不识君。
|
||||
author=高适《别董大二首》
|
||||
[3]
|
||||
[4]
|
||||
OL=莫听穿林打叶声,何妨吟啸且徐行。
|
||||
author=苏轼《定风波》
|
||||
[4]
|
||||
[5]
|
||||
OL=党用伟大奋斗创造了百年伟业,也一定能用新的伟大奋斗创造新的伟业。
|
||||
author=习近平
|
||||
[6]
|
||||
OL=巧言令色,鲜矣仁!
|
||||
author=《论语》
|
||||
[5]
|
||||
[7]
|
||||
FL=与君初相识,犹如故人归。
|
||||
SL=天涯明月新,朝暮最相思。
|
||||
author=杜牧《会友》
|
||||
[6]
|
||||
[8]
|
||||
FL=一个饱经沧桑而初心不变的党,才能基业常青;
|
||||
SL=一个铸就辉煌仍勇于自我革命的党,才能无坚不摧。
|
||||
author=习近平
|
||||
[9]
|
||||
OL=见贤思齐焉,见不贤而内自省也。
|
||||
author=《论语》
|
||||
[7]
|
||||
[10]
|
||||
OL=为政以德,譬如北辰,居其所而众星共之。
|
||||
author=《论语》
|
||||
[8]
|
||||
[11]
|
||||
FL=道阻且长,行则将至。前进道路上,无论是风高浪急还是惊涛骇浪,
|
||||
SL=人民永远是我们最坚实的依托、最强大的底气。
|
||||
author=习近平
|
||||
[12]
|
||||
OL=知彼知己,百战不殆。
|
||||
author=《孙子兵法》
|
||||
[9]
|
||||
[13]
|
||||
OL=人患不知其过,既知之,不能改,是无勇也。
|
||||
author=韩愈《五箴》
|
||||
[10]
|
||||
[14]
|
||||
FL=新征程是充满光荣和梦想的远征。蓝图已经绘就,号角已经吹响。
|
||||
SL=我们要踔厉奋发、勇毅前行,努力创造更加灿烂的明天。
|
||||
author=习近平
|
||||
[15]
|
||||
OL=万物并育而不相害,道并行而不相悖
|
||||
author=《礼记·中庸》
|
||||
[11]
|
||||
[16]
|
||||
OL=自信人生二百年,会当水击三千里
|
||||
author=毛泽东《七古·残句》
|
||||
[12]
|
||||
[17]
|
||||
OL=我们完全有信心有能力在新时代新征程创造令世人刮目相看的新的更大奇迹。
|
||||
author=习近平
|
||||
[18]
|
||||
OL=青春虚度无所成,白首衔悲亦何及。
|
||||
author=权德舆《放歌行》
|
||||
[13]
|
||||
[19]
|
||||
OL=劳动模范是民族的精英、人民的楷模,是共和国的功臣。
|
||||
author=习近平
|
||||
[14]
|
||||
[20]
|
||||
FL=当前最重要的任务是撸起袖子加油干,
|
||||
SL=一步一个脚印把党的二十大作出的重大决策部署付诸行动、见之于成效。
|
||||
author=习近平
|
||||
[21]
|
||||
FL=广大人民群众坚持爱国奉献,无怨无悔,让我感到千千万万普通人最伟大,
|
||||
SL=同时让我感到幸福都是奋斗出来的。
|
||||
author=2018新年贺词 习近平
|
||||
[15]
|
||||
[22]
|
||||
OL=中华文化既是历史的、也是当代的,既是民族的、也是世界的。
|
||||
author=习近平
|
||||
[16]
|
||||
[23]
|
||||
OL=没有坚实的物质技术基础,就不可能全面建成社会主义现代化强国。
|
||||
author=习近平
|
||||
[24]
|
||||
OL=我们党没有自己的特殊利益,党在任何时候都是把群众利益放在第一位。
|
||||
author=习近平
|
||||
[17]
|
||||
[25]
|
||||
OL=知者行之始。行者知之成。
|
||||
author=王阳明《传习录·卷上·门人陆澄录》
|
||||
[18]
|
||||
[26]
|
||||
FL=江山就是人民,人民就是江山。
|
||||
SL=中国共产党领导人民打江山、守江山,守的是人民的心,治国有常,利民为本。
|
||||
author=习近平
|
||||
[27]
|
||||
OL=此心不动,随机而动。
|
||||
author=王阳明
|
||||
[19]
|
||||
[28]
|
||||
OL=你未看此花时,此花与汝心同归于寂。
|
||||
author=《传习录·卷下·门人黄省曾录》
|
||||
[20]
|
||||
[29]
|
||||
FL=时代呼唤我们,人民期待着我们,
|
||||
SL=唯有矢志不渝、笃行不怠,方能不负时代、不负人民。
|
||||
author=习近平
|
||||
[30]
|
||||
OL=省察是有事时存养,存养是无事时省察。
|
||||
author=王阳明《传习录》
|
||||
[21]
|
||||
[31]
|
||||
OL=路漫漫其修远兮,吾将上下而求索。
|
||||
author=《离骚》
|
||||
[22]
|
||||
[32]
|
||||
OL=当代中国青年生逢其时,施展才干的舞台无比广阔,实现梦想的前景无比光明。
|
||||
author=习近平
|
||||
[33]
|
||||
FL=解决台湾问题是中国人自己的事,要由中国人来决定。
|
||||
SL=国家统一、民族复兴的历史车轮滚滚向前,祖国完全统一一定要实现,也一定能够实现。
|
||||
author=习近平
|
||||
[34]
|
||||
OL=悲莫悲兮生别离,乐莫乐兮新相知。
|
||||
author=《九歌·少司命》
|
||||
[23]
|
||||
[35]
|
||||
OL=风飒飒兮木萧萧,思公子兮徒离忧。
|
||||
author=《九歌·山鬼》
|
||||
[24]
|
||||
[36]
|
||||
OL=善守者,藏于九地之下,善攻者,动于九天之上。
|
||||
author=《孙子兵法》
|
||||
[25]
|
||||
[37]
|
||||
FL=我们正意气风发迈向全面建设社会主义现代化国家新征程,
|
||||
SL=向第二个百年奋斗目标进军,以中国式现代化全面推进中华民族伟大复兴。
|
||||
author=习近平
|
||||
[38]
|
||||
OL=善战者,致人而不致于人。
|
||||
author=《孙子兵法·虚实第六》
|
||||
[26]
|
||||
[39]
|
||||
OL=乱生于治,怯生于勇,弱生于强。
|
||||
author=《孙子兵法·兵势第五》
|
||||
[27]
|
||||
[40]
|
||||
FL=中国式现代化是中国共产党和中国人民长期实践探索的成果,
|
||||
SL=是一项伟大而艰巨的事业。惟其艰巨,所以伟大;惟其艰巨,更显光荣。
|
||||
author=习近平
|
||||
[41]
|
||||
OL=不战而屈人之兵,善之善者也。
|
||||
author=《孙子兵法·谋攻第三》
|
||||
[28]
|
||||
[42]
|
||||
OL=天行健,君子以自强不息。
|
||||
author=《周易.乾卦》
|
||||
[29]
|
||||
[43]
|
||||
FL=中国开放的大门只会越来越大。我们将坚定不移全面深化改革开放,
|
||||
SL=坚定不移推动高质量发展,以自身发展为世界创造更多机遇。
|
||||
author=习近平
|
||||
[44]
|
||||
OL=积善之家,必有余庆;积不善之家,必有余殃。
|
||||
author=《周易.坤卦》
|
||||
[30]
|
||||
[45]
|
||||
OL=穷则变,变则通,通则久。
|
||||
author=《周易.系辞下》
|
||||
[31]
|
||||
[46]
|
||||
FL=我们历来主张,人类的前途命运应该由世界各国人民来把握和决定。
|
||||
SL=只要共行天下大道,各国就能够和睦相处、合作共赢,携手创造世界的美好未来。
|
||||
author=习近平
|
||||
[47]
|
||||
OL=天若有情天亦老,人间正道是沧桑
|
||||
author=毛泽东《七律·人民解放军占领南京》
|
||||
[32]
|
||||
[48]
|
||||
OL=仰天大笑出门去,我辈岂是蓬蒿人。
|
||||
author=李白《南陵别儿童入京》
|
||||
[33]
|
||||
[49]
|
||||
OL=落叶秋风生渭水,落叶满长安。
|
||||
author=贾岛《忆江上吴处士》
|
||||
[34]
|
||||
[50]
|
||||
OL=人生来是精神所附丽的物质,免不掉物质所常有的惰性。
|
||||
author=朱光潜《朝抵抗力最大的路径走》
|
||||
[35]
|
||||
[51]
|
||||
FL=能朝抵抗力最大的路径走,是人的特点。
|
||||
SL=人在能尽量发挥这特点时,就足见出他有富裕的生活力。
|
||||
author=朱光潜《朝抵抗力最大的路径走》
|
||||
|
|
|
@ -857,12 +857,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,7 +27,7 @@ include_directories(
|
|||
${QGS_INCLUDE_DIRS}
|
||||
${GLIB_INCLUDE_DIRS}
|
||||
${MMIX_INCLUDE_DIRS}
|
||||
${MMIX_INCLUDE_DIRS}
|
||||
${kylin-nm-base_INCLUDE_DIRS}
|
||||
${KF5Wayland_LIBRARIES}
|
||||
)
|
||||
|
||||
|
@ -44,6 +45,8 @@ set(EXTRA_LIBS
|
|||
-lpthread
|
||||
-lKF5WaylandServer
|
||||
-lKF5WaylandClient
|
||||
-llibnm-icon-kylin
|
||||
-lukuiinputgatherclient
|
||||
)
|
||||
|
||||
qt5_wrap_ui(dialog_SRC
|
||||
|
@ -97,6 +100,7 @@ qt5_wrap_cpp(dialog_SRC
|
|||
loginedusers.h
|
||||
lockchecker.h
|
||||
servicemanager.h
|
||||
mytabwidget.h
|
||||
plasma-shell-manager.h
|
||||
PhysicalDeviceSet/brightnessdeviceset.h
|
||||
PhysicalDeviceSet/flightmodeset.h
|
||||
|
@ -105,6 +109,7 @@ qt5_wrap_cpp(dialog_SRC
|
|||
device.h
|
||||
enginedevice.h
|
||||
batterywidget.h
|
||||
libinputswitchevent.h
|
||||
)
|
||||
|
||||
set(dialog_SRC
|
||||
|
@ -147,6 +152,7 @@ set(dialog_SRC
|
|||
loginedusers.cpp
|
||||
lockchecker.cpp
|
||||
servicemanager.cpp
|
||||
mytabwidget.cpp
|
||||
plasma-shell-manager.cpp
|
||||
PhysicalDeviceSet/brightnessdeviceset.cpp
|
||||
PhysicalDeviceSet/flightmodeset.cpp
|
||||
|
@ -155,6 +161,7 @@ set(dialog_SRC
|
|||
device.cpp
|
||||
enginedevice.cpp
|
||||
batterywidget.cpp
|
||||
libinputswitchevent.cpp
|
||||
)
|
||||
add_executable(ukui-screensaver-dialog ${dialog_SRC})
|
||||
add_definitions(-DAPP_API_MAJOR=0 -DAPP_API_MINOR=11 -DAPP_API_FUNC=0)
|
||||
|
|
|
@ -5,9 +5,7 @@
|
|||
<qresource prefix="/image">
|
||||
<file>assets/show-password.png</file>
|
||||
<file>assets/hide-password.png</file>
|
||||
<file>assets/keyboard.png</file>
|
||||
<file>assets/switchGreeter.png</file>
|
||||
<file>assets/switchUser.png</file>
|
||||
<file>assets/waiting.png</file>
|
||||
<file>assets/capslock.png</file>
|
||||
<file>assets/combobox_down.png</file>
|
||||
|
@ -25,13 +23,8 @@
|
|||
<file>assets/unlock-button-pressed.png</file>
|
||||
<file>assets/iconFace.png</file>
|
||||
<file>assets/iconFace.svg</file>
|
||||
<file>assets/powerManager.png</file>
|
||||
<file>assets/lock.png</file>
|
||||
<file>assets/logout.png</file>
|
||||
<file>assets/shutdown.png</file>
|
||||
<file>assets/suspend.png</file>
|
||||
<file>assets/hibernate.png</file>
|
||||
<file>assets/reboot.png</file>
|
||||
<file>assets/bio-login.png</file>
|
||||
<file>assets/password-login.png</file>
|
||||
<file>assets/weather/68.png</file>
|
||||
|
@ -125,5 +118,10 @@
|
|||
<file>assets/ukui-loginopt-lose.svg</file>
|
||||
<file>assets/01-default-commercial.png</file>
|
||||
<file>assets/01-default-community.png</file>
|
||||
<file>assets/suspend.svg</file>
|
||||
<file>assets/shutdown.svg</file>
|
||||
<file>assets/reboot.svg</file>
|
||||
<file>assets/hibernate.svg</file>
|
||||
<file>assets/switchuser.svg</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
|
|
@ -101,11 +101,6 @@ QLineEdit::focus{
|
|||
|
||||
/* 登录按钮 */
|
||||
#loginButton{
|
||||
min-width: 24px;
|
||||
max-width: 24px;
|
||||
min-height: 24px;
|
||||
max-height: 24px;
|
||||
icon-size: 24px;
|
||||
background:#3D6BE5;
|
||||
border-radius:12px;
|
||||
}
|
||||
|
|
Before Width: | Height: | Size: 902 B |
|
@ -0,0 +1 @@
|
|||
<svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M41.06,31.53A18.5,18.5,0,0,1,16,6.44a1.51,1.51,0,0,0-2-2A21.5,21.5,0,1,0,43.1,33.57a1.51,1.51,0,0,0-2-2ZM24.22,41.78A18.5,18.5,0,0,1,11.39,10a21.27,21.27,0,0,0-.67,5.33,21.52,21.52,0,0,0,21.5,21.5,21.27,21.27,0,0,0,5.33-.67A18.49,18.49,0,0,1,24.22,41.78Z" fill="#fff"/><path d="M26,31h6.8a1,1,0,0,0,0-2H28.41l4.3-4.29a1,1,0,0,0,.21-1.09A1,1,0,0,0,32,23H26.4a1,1,0,0,0,0,2h3.19l-4.3,4.29a1,1,0,0,0-.21,1.09A1,1,0,0,0,26,31Z" fill="#fff"/><path d="M29,20h6.8a1,1,0,0,0,0-2H31.41l4.3-4.29a1,1,0,0,0,.21-1.09A1,1,0,0,0,35,12H29.4a1,1,0,0,0,0,2h3.19l-4.3,4.29a1,1,0,0,0-.21,1.09A1,1,0,0,0,29,20Z" fill="#fff"/><path d="M43.8,27H39.41l4.3-4.29a1,1,0,0,0,.21-1.09A1,1,0,0,0,43,21H37.4a1,1,0,0,0,0,2h3.19l-4.3,4.29a1,1,0,0,0-.21,1.09A1,1,0,0,0,37,29h6.8a1,1,0,0,0,0-2Z" fill="#fff"/></svg>
|
After Width: | Height: | Size: 885 B |
Before Width: | Height: | Size: 171 B |
Before Width: | Height: | Size: 501 B |
Before Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1 @@
|
|||
<svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M42.44,21.88A1.5,1.5,0,0,0,41,23.43,17,17,0,0,1,12,36,17,17,0,0,1,34.91,11L32,13.91h8.29V5.62L37,8.84a20,20,0,1,0,7,14.49A1.46,1.46,0,0,0,42.44,21.88Z" fill="#fff"/></svg>
|
After Width: | Height: | Size: 275 B |
Before Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1 @@
|
|||
<svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M37.09,11.38a1.5,1.5,0,0,0-2,2.28A16.58,16.58,0,0,1,41,26.29a17,17,0,0,1-34,0,16.59,16.59,0,0,1,5.88-12.65,1.5,1.5,0,1,0-2-2.28A19.61,19.61,0,0,0,4,26.29,19.88,19.88,0,0,0,24,46,19.88,19.88,0,0,0,44,26.29,19.6,19.6,0,0,0,37.09,11.38Z" fill="#fff"/><rect x="22" y="2" width="4" height="24" rx="1.92" fill="#fff"/></svg>
|
After Width: | Height: | Size: 422 B |
Before Width: | Height: | Size: 817 B |
|
@ -0,0 +1 @@
|
|||
<svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M42.06,30.53A18.5,18.5,0,0,1,17,5.44a1.51,1.51,0,0,0-2-2A21.5,21.5,0,1,0,44.1,32.57a1.51,1.51,0,0,0-2-2ZM25.22,40.78A18.5,18.5,0,0,1,12.39,9a21.27,21.27,0,0,0-.67,5.33,21.52,21.52,0,0,0,21.5,21.5,21.27,21.27,0,0,0,5.33-.67A18.49,18.49,0,0,1,25.22,40.78Z" fill="#fff"/></svg>
|
After Width: | Height: | Size: 378 B |
Before Width: | Height: | Size: 424 B |
|
@ -0,0 +1 @@
|
|||
<svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><path d="M27.73,8h.19A6.25,6.25,0,0,1,29.2,20.37a9.44,9.44,0,0,1-1.38,2,8.61,8.61,0,0,1-1.08,1A9.24,9.24,0,1,0,27.92,5a9.08,9.08,0,0,0-3.5.71c.17.07.34.13.5.21A9.21,9.21,0,0,1,27.73,8Z" fill="#fff"/><path d="M18.92,24.5a9.25,9.25,0,1,0-9.25-9.25A9.22,9.22,0,0,0,18.92,24.5Zm0-15.5a6.62,6.62,0,0,1,1.1.1,6.25,6.25,0,0,1,0,12.3,6.52,6.52,0,0,1-1.1.1,6.25,6.25,0,0,1,0-12.5Z" fill="#fff"/><path d="M37.75,25.81H33.08A8.28,8.28,0,0,1,36,28.34c.12.15.22.31.33.47h1.4A5.08,5.08,0,0,1,38.24,39,8,8,0,0,1,37,41a8.41,8.41,0,0,1-1,1h1.71a8.1,8.1,0,0,0,0-16.19Z" fill="#fff"/><path d="M35,29.81a8.09,8.09,0,0,0-6.27-3H9.09A8.1,8.1,0,0,0,9.09,43H28.75A8.08,8.08,0,0,0,35,29.81ZM28.75,40H9.09a5.1,5.1,0,0,1,0-10.19H28.75a5.1,5.1,0,0,1,0,10.19Z" fill="#fff"/></svg>
|
After Width: | Height: | Size: 846 B |
|
@ -57,6 +57,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 +108,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) {
|
||||
|
@ -412,9 +400,9 @@ void AuthDialog::setChildrenGeometry()
|
|||
width()-(m_passwdWidget->width() - 240)/2, 36);
|
||||
m_messageLabel->setMinimumHeight(36);
|
||||
m_messageButton->setGeometry((m_passwdWidget->width() - 200)/2, 0, 200, 40);
|
||||
m_messageButton->setStyleSheet("QPushButton:!checked:!pressed:!hover{background-color: rgba(255,255,255,40)}"
|
||||
"QPushButton:!checked:!pressed:hover{background-color: rgba(255,255,255,100)}"
|
||||
"QPushButton:pressed{background-color: rgba(255,255,255,40)}");
|
||||
// m_messageButton->setStyleSheet("QPushButton:!checked:!pressed:!hover{background-color: rgba(255,255,255,40)}"
|
||||
// "QPushButton:!checked:!pressed:hover{background-color: rgba(255,255,255,100)}"
|
||||
// "QPushButton:pressed{background-color: rgba(255,255,255,40)}");
|
||||
|
||||
|
||||
setBiometricWidgetGeometry();
|
||||
|
@ -600,32 +588,51 @@ void AuthDialog::setX11Focus()
|
|||
|
||||
void AuthDialog::setFocusin(int target)
|
||||
{
|
||||
if(m_passwordEdit && m_widgetLoginOpts) {
|
||||
if(m_passwordEdit) {
|
||||
switch (target) {
|
||||
case REMOVE: //焦点清除
|
||||
if(m_widgetLoginOpts)
|
||||
m_widgetLoginOpts->tabOptionSelected(2);
|
||||
m_passwordEdit->setFocusin(2);
|
||||
if(is_showMessageBtn) {
|
||||
m_messageButton->clearFocus();
|
||||
m_messageButton->setStyleSheet("QPushButton:!checked:!pressed:!hover{background-color: rgba(255,255,255,40)}"
|
||||
"QPushButton:!checked:!pressed:hover{background-color: rgba(255,255,255,100)}"
|
||||
"QPushButton:pressed{background-color: rgba(255,255,255,40)}");
|
||||
}
|
||||
m_nameLabel->setFocus();
|
||||
break;
|
||||
case IN_LIGIN: //焦点在登录按钮
|
||||
if(m_widgetLoginOpts)
|
||||
m_widgetLoginOpts->tabOptionSelected(2);
|
||||
m_passwordEdit->setFocusin(1);
|
||||
break;
|
||||
case BIO_RIGHT: //登录选项焦点右移
|
||||
if(m_widgetLoginOpts)
|
||||
m_widgetLoginOpts->tabOptionSelected(0);
|
||||
m_passwordEdit->setFocusin(2);
|
||||
m_nameLabel->setFocus();
|
||||
break;
|
||||
case BIO_LEFT: //登录选项焦点左移
|
||||
if(m_widgetLoginOpts)
|
||||
m_widgetLoginOpts->tabOptionSelected(1);
|
||||
m_passwordEdit->setFocusin(target);
|
||||
m_nameLabel->setFocus();
|
||||
break;
|
||||
case IN_LINEEDIT: //焦点在密码输入框
|
||||
if(m_widgetLoginOpts)
|
||||
m_widgetLoginOpts->tabOptionSelected(2);
|
||||
m_passwordEdit->setFocusin(0);
|
||||
break;
|
||||
case ON_MESSAGEBTN: //免密登录按钮
|
||||
if(m_widgetLoginOpts)
|
||||
m_widgetLoginOpts->tabOptionSelected(2);
|
||||
m_passwordEdit->setFocusin(2);
|
||||
m_messageButton->setFocus();
|
||||
m_messageButton->setStyleSheet("QPushButton{background-color: rgba(255,255,255,15%); border-radius: 4px; border: 2px solid #2C73C8;}");
|
||||
break;
|
||||
default:
|
||||
if(m_widgetLoginOpts)
|
||||
m_passwordEdit->setFocusin(target);
|
||||
m_widgetLoginOpts->tabOptionSelected(2);
|
||||
break;
|
||||
|
@ -733,9 +740,11 @@ void AuthDialog::show_authenticated(bool successful)
|
|||
m_passwdWidget->show();
|
||||
m_passwordEdit->hide();
|
||||
m_passwordEdit->setFocusPolicy(Qt::NoFocus);
|
||||
m_messageButton->setFocusPolicy(Qt::StrongFocus);
|
||||
setFocusProxy(m_messageButton);
|
||||
// m_messageButton->setFocusPolicy(Qt::StrongFocus);
|
||||
// setFocusProxy(m_messageButton);
|
||||
m_messageButton->show();
|
||||
is_showMessageBtn = true;
|
||||
Q_EMIT showMessageBtn(is_showMessageBtn);
|
||||
m_messageButton->setFocus();
|
||||
m_messageButton->setDefault(true);
|
||||
|
||||
|
@ -769,6 +778,7 @@ void AuthDialog::onMessageButtonClicked()
|
|||
else
|
||||
{
|
||||
m_messageButton->hide();
|
||||
is_showMessageBtn = false;
|
||||
authMode = PASSWORD;
|
||||
|
||||
m_messageLabel->setText("");
|
||||
|
@ -776,8 +786,17 @@ void AuthDialog::onMessageButtonClicked()
|
|||
}
|
||||
}
|
||||
|
||||
bool AuthDialog::getLineeditStatus()
|
||||
{
|
||||
return is_showMessageBtn;
|
||||
}
|
||||
|
||||
void AuthDialog::onRespond(const QString &text)
|
||||
{
|
||||
if (!prompted && text != BIOMETRIC_SUCCESS) {
|
||||
qInfo()<<"Wait for input passwd!";
|
||||
return;
|
||||
}
|
||||
unacknowledged_messages=false;
|
||||
clearMessage();
|
||||
startWaiting();
|
||||
|
|
|
@ -52,6 +52,7 @@ enum FOCUS {
|
|||
BIO_RIGHT,
|
||||
BIO_LEFT,
|
||||
IN_LINEEDIT,
|
||||
ON_MESSAGEBTN,
|
||||
};
|
||||
|
||||
extern float scale;
|
||||
|
@ -69,6 +70,7 @@ public:
|
|||
void setClick();
|
||||
void checkPassword();
|
||||
int getBioNum();
|
||||
bool getLineeditStatus();
|
||||
private:
|
||||
void initUI();
|
||||
void startWaiting();
|
||||
|
@ -79,7 +81,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);
|
||||
|
@ -125,6 +126,7 @@ Q_SIGNALS:
|
|||
void authenticateCompete(bool result);
|
||||
void clickPassword(bool clicked);
|
||||
void loginOptionClicked();
|
||||
void showMessageBtn(bool is_show);
|
||||
private:
|
||||
UserItem user;
|
||||
Auth *auth;
|
||||
|
@ -157,6 +159,7 @@ private:
|
|||
IconEdit *m_passwordEdit; //密码输入框
|
||||
QLabel *m_messageLabel; //PAM消息显示
|
||||
QPushButton *m_messageButton;
|
||||
bool is_showMessageBtn = false;
|
||||
|
||||
QLabel *m_labelFace = nullptr;
|
||||
QLabel *m_labelLoginTypeTip = nullptr; // 登录类型提示
|
||||
|
|
|
@ -38,7 +38,8 @@ void BatteryWidget::initUi()
|
|||
}");
|
||||
|
||||
mValueLabel = new QLabel(this);
|
||||
mValueLabel->setFixedSize(48, 48);
|
||||
mValueLabel->setFixedHeight(48);
|
||||
mValueLabel->setMidLineWidth(48);
|
||||
|
||||
mStatusLabel = new QLabel(this);
|
||||
mStatusLabel->setFixedHeight(36);
|
||||
|
@ -56,22 +57,29 @@ void BatteryWidget::initUi()
|
|||
|
||||
void BatteryWidget::setupComponent()
|
||||
{
|
||||
QDBusInterface *batInterface = new QDBusInterface(
|
||||
"org.ukui.upower", "/upower/BatteryInfo", "org.ukui.upower.battery", QDBusConnection::sessionBus(), this);
|
||||
QString batteryPath = "";
|
||||
dface = new QDBusInterface(UPOWER_SERVICE, UPOWER_PATH, UPOWER_INTERFACE, QDBusConnection::systemBus(), this);
|
||||
QDBusReply<QList<QDBusObjectPath>> reply = dface->call("EnumerateDevices");
|
||||
if (dface->isValid()) {
|
||||
for (QDBusObjectPath op : reply.value()) {
|
||||
if (op.path().contains("battery_")) {
|
||||
batteryPath = op.path();
|
||||
qDebug() << "battery path is :" << batteryPath;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
qDebug() << "Enumerate devices failed";
|
||||
}
|
||||
batInterface = new QDBusInterface(UPOWER_SERVICE, batteryPath, FREEDESKTOP_UPOWER, QDBusConnection::systemBus(), this);
|
||||
|
||||
QDBusInterface *powerInterface = new QDBusInterface(
|
||||
"org.ukui.upower", "/upower", "org.ukui.upower", QDBusConnection::sessionBus(), this);
|
||||
|
||||
if (batInterface->isValid()) {
|
||||
QDBusReply<QString> iconreply = batInterface->call("IconName");
|
||||
QDBusConnection::systemBus().connect(
|
||||
UPOWER_SERVICE, batteryPath, FREEDESKTOP_UPOWER, "PropertiesChanged", this, SLOT(dealMessage(QDBusMessage)));
|
||||
iface = new QDBusInterface(UPOWER_SERVICE, UPOWER_PATH, FREEDESKTOP_UPOWER, QDBusConnection::systemBus());
|
||||
if (dface->isValid()) {
|
||||
mIconBtn->setIconSize(QSize(48, 32));
|
||||
mIconBtn->setFocusPolicy(Qt::NoFocus);
|
||||
mIconBtn->setIcon(QIcon::fromTheme(iconreply));
|
||||
QDBusConnection::sessionBus().connect(
|
||||
QString(), "/upower/BatteryInfo", "org.ukui.upower.battery", "BatteryIcon", this, SLOT(setBatteryIcon(QString)));
|
||||
|
||||
QDBusReply<bool> batteryreply = powerInterface->call("OnBattery");
|
||||
mModeLabel->setText(batteryreply ? tr("BatteryMode") : tr("PowerMode"));
|
||||
mIconBtn->setIcon(QIcon::fromTheme(getBatteryIconName()));
|
||||
}
|
||||
ed = EngineDevice::getInstance();
|
||||
onBatteryChanged(ed->engine_get_state());
|
||||
|
@ -96,6 +104,29 @@ void BatteryWidget::setPoint(QPoint point)
|
|||
mPoint = point;
|
||||
}
|
||||
|
||||
QString BatteryWidget::getBatteryIconName()
|
||||
{
|
||||
if (dface->isValid() && iface->isValid()) {
|
||||
bool batteryState = false;
|
||||
QDBusReply<QVariant> reply = iface->call("Get", UPOWER_SERVICE, "OnBattery");
|
||||
if (reply.isValid()) {
|
||||
batteryState = reply.value().toBool();
|
||||
}
|
||||
double percentage = -1.0;
|
||||
QDBusReply<QVariant> percentage_reply = batInterface->call("Get", UPOWER_DIVICES_SERVICE, "Percentage");
|
||||
if (percentage_reply.isValid()) {
|
||||
percentage = percentage_reply.value().toDouble();
|
||||
}
|
||||
|
||||
if (batteryState) {
|
||||
return QString("battery-level-%1-symbolic").arg((int)percentage / 10 * 10);
|
||||
} else {
|
||||
return QString("battery-level-%1-charging-symbolic").arg((int)percentage / 10 * 10);
|
||||
}
|
||||
}
|
||||
return QString();
|
||||
}
|
||||
|
||||
void BatteryWidget::showEvent(QShowEvent *event)
|
||||
{
|
||||
QPoint pos = QPoint(mPoint.x(),
|
||||
|
@ -133,7 +164,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"));
|
||||
|
@ -141,5 +171,11 @@ void BatteryWidget::onBatteryChanged(QStringList args)
|
|||
mStatusLabel->setVisible(false);
|
||||
mModeLabel->setText(tr("BatteryMode"));
|
||||
}
|
||||
|
||||
mValueLabel->setText(QString("<font size='5';font color=#262626>%1</font>%").arg(battery));
|
||||
}
|
||||
|
||||
void BatteryWidget::dealMessage(QDBusMessage)
|
||||
{
|
||||
mIconBtn->setIcon(QIcon::fromTheme(getBatteryIconName()));
|
||||
}
|
||||
|
|
|
@ -9,6 +9,13 @@
|
|||
#include <QPoint>
|
||||
#include "enginedevice.h"
|
||||
|
||||
#define FREEDESKTOP_UPOWER "org.freedesktop.DBus.Properties"
|
||||
#define UPOWER_INTERFACE "org.freedesktop.UPower"
|
||||
#define UPOWER_PATH "/org/freedesktop/UPower"
|
||||
#define UPOWER_SERVICE "org.freedesktop.UPower"
|
||||
#define UPOWER_DISPLAY_PATH "/org/freedesktop/UPower/devices/DisplayDevice"
|
||||
#define UPOWER_DIVICES_SERVICE "org.freedesktop.UPower.Device"
|
||||
|
||||
class BatteryWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
@ -18,6 +25,7 @@ public:
|
|||
void initUi();
|
||||
void setupComponent();
|
||||
void setPoint(QPoint point);
|
||||
QString getBatteryIconName();
|
||||
|
||||
protected:
|
||||
void showEvent(QShowEvent *event);
|
||||
|
@ -31,12 +39,15 @@ private:
|
|||
QPoint mPoint;
|
||||
|
||||
QDBusInterface *batInterface;
|
||||
QDBusInterface *iface;
|
||||
QDBusInterface *dface;
|
||||
|
||||
EngineDevice* ed;
|
||||
|
||||
private Q_SLOTS:
|
||||
void setBatteryIcon(QString icon);
|
||||
void onBatteryChanged(QStringList args);
|
||||
void dealMessage(QDBusMessage);
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#include <QImageReader>
|
||||
#include "plasma-shell-manager.h"
|
||||
#include <QX11Info>
|
||||
#include "lockwidget.h"
|
||||
#include <X11/Xatom.h>
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/Xutil.h>
|
||||
|
@ -50,7 +51,6 @@
|
|||
#include <sys/syslog.h>
|
||||
|
||||
#include <xcb/xcb.h>
|
||||
#include "lockwidget.h"
|
||||
#include "xeventmonitor.h"
|
||||
#include "monitorwatcher.h"
|
||||
#include "configuration.h"
|
||||
|
@ -211,21 +211,21 @@ FullBackgroundWidget::FullBackgroundWidget(QWidget *parent)
|
|||
qDebug() << "init - screenStatus: " << screenStatus;
|
||||
m_listWndIds.clear();
|
||||
setMouseTracking(true);
|
||||
// connect(monitorWatcher, &MonitorWatcher::monitorCountChanged,
|
||||
// this, &FullBackgroundWidget::onScreenCountChanged);
|
||||
// QDesktopWidget *desktop = QApplication::desktop();
|
||||
// connect(monitorWatcher, &MonitorWatcher::monitorCountChanged,
|
||||
// this, &FullBackgroundWidget::onScreenCountChanged);
|
||||
QDesktopWidget *desktop = QApplication::desktop();
|
||||
|
||||
// connect(desktop, &QDesktopWidget::resized,
|
||||
// this, &FullBackgroundWidget::onDesktopResized);
|
||||
connect(desktop, &QDesktopWidget::resized,
|
||||
this, &FullBackgroundWidget::onDesktopResized);
|
||||
// connect(desktop, &QDesktopWidget::workAreaResized,
|
||||
// this, &FullBackgroundWidget::onDesktopResized);
|
||||
// connect(desktop, &QDesktopWidget::primaryScreenChanged,
|
||||
// this, &FullBackgroundWidget::onDesktopResized);
|
||||
// connect(desktop, &QDesktopWidget::screenCountChanged,
|
||||
// this, &FullBackgroundWidget::onDesktopResized);
|
||||
connect(desktop, &QDesktopWidget::primaryScreenChanged,
|
||||
this, &FullBackgroundWidget::onDesktopResized);
|
||||
connect(desktop, &QDesktopWidget::screenCountChanged,
|
||||
this, &FullBackgroundWidget::onDesktopResized);
|
||||
|
||||
connect(QApplication::primaryScreen(),&QScreen::geometryChanged, this, &FullBackgroundWidget::onDesktopResized);
|
||||
connect(QApplication::screens().at(0), &QScreen::virtualGeometryChanged, this,&FullBackgroundWidget::onDesktopResized);
|
||||
// connect(QApplication::primaryScreen(),&QScreen::geometryChanged, this, &FullBackgroundWidget::onDesktopResized);
|
||||
// connect(QApplication::screens().at(0), &QScreen::virtualGeometryChanged, this,&FullBackgroundWidget::onDesktopResized);
|
||||
|
||||
QDBusInterface *iface = new QDBusInterface("org.freedesktop.login1",
|
||||
"/org/freedesktop/login1",
|
||||
|
@ -256,10 +256,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);
|
||||
|
@ -311,8 +307,8 @@ void FullBackgroundWidget::laterActivate()
|
|||
raiseOtherWnd();
|
||||
setFocus();
|
||||
if(lockWidget && lockWidget->isVisible()) {
|
||||
//lockWidget->setFocus();
|
||||
lockWidget->onActiveWindpw();//将焦点设置到密码框
|
||||
lockWidget->setFocus();
|
||||
lockWidget->onActiveLineedit();//将焦点设置到密码框
|
||||
}
|
||||
update();
|
||||
}
|
||||
|
@ -323,8 +319,8 @@ void FullBackgroundWidget::laterOtherActivate()
|
|||
raiseOtherWnd();
|
||||
//setFocus();
|
||||
if(lockWidget && lockWidget->isVisible()) {
|
||||
//lockWidget->setFocus();
|
||||
lockWidget->onActiveWindpw();//将焦点设置到密码框
|
||||
lockWidget->setFocus();
|
||||
lockWidget->onActiveLineedit();//将焦点设置到密码框
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -346,11 +342,13 @@ void FullBackgroundWidget::setLockState()
|
|||
|
||||
bool FullBackgroundWidget::eventFilter(QObject *obj, QEvent *event)
|
||||
{
|
||||
if (!QX11Info::isPlatformX11()) {
|
||||
if(event->type() == QEvent::MouseButtonPress || event->type() == QEvent::MouseMove || event->type() == 7){
|
||||
if(screenStatus & SCREEN_SAVER){
|
||||
if(screenStatus & SCREEN_SAVER && !isBlank){
|
||||
clearScreensavers();
|
||||
}
|
||||
}
|
||||
}
|
||||
if(event->type() == QEvent::WindowDeactivate){
|
||||
QTimer::singleShot(50,this,SLOT(laterActivate()));
|
||||
}else if(event->type() == QEvent::WindowActivate){
|
||||
|
@ -563,13 +561,13 @@ bool FullBackgroundWidget::nativeEventFilter(const QByteArray &eventType, void *
|
|||
return false;
|
||||
}
|
||||
} else if (responseType == XCB_KEY_PRESS) {
|
||||
//xcb_key_press_event_t *xc = reinterpret_cast<xcb_key_press_event_t*>(event);
|
||||
//qDebug()<<"---------------------XCB_KEY_PRESS:"<<xc->detail;
|
||||
// xcb_key_press_event_t *xc = reinterpret_cast<xcb_key_press_event_t*>(event);
|
||||
// qDebug()<<"---------------------XCB_KEY_PRESS:"<<xc->detail;
|
||||
//onGlobalKeyPress(xc->detail);
|
||||
} else if (responseType == XCB_KEY_RELEASE) {
|
||||
//xcb_key_release_event_t *xc = reinterpret_cast<xcb_key_release_event_t*>(event);
|
||||
//qDebug()<<"---------------------XCB_KEY_RELEASE:"<<xc->detail;
|
||||
//onGlobalKeyRelease(xc->detail);
|
||||
xcb_key_release_event_t *xc = reinterpret_cast<xcb_key_release_event_t*>(event);
|
||||
qDebug()<<"---------------------XCB_KEY_RELEASE:"<<xc->detail;
|
||||
onGlobalKeyRelease(xc->detail);
|
||||
} else if(responseType == XCB_GE_GENERIC){
|
||||
xcb_ge_generic_event_t *xc = reinterpret_cast<xcb_ge_generic_event_t*>(event);
|
||||
if(xc->event_type == XCB_BUTTON_PRESS){ //此处获取的是窗口内的点击事件,光标坐标不需要使用,就直接使用QCursor接口获取了
|
||||
|
@ -648,17 +646,6 @@ void FullBackgroundWidget::init()
|
|||
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()<<"----------------------------------------------------------------开始异步调用";
|
||||
|
@ -667,7 +654,7 @@ void FullBackgroundWidget::init()
|
|||
reader.setFileName(configuration->getBackground());
|
||||
reader.setAutoTransform(true);
|
||||
reader.setDecideFormatFromContent(true);
|
||||
reader.setScaledSize(QApplication::primaryScreen()->size());
|
||||
//reader.setScaledSize(QApplication::primaryScreen()->size());
|
||||
background = QPixmap::fromImageReader(&reader);
|
||||
|
||||
if(!background.isNull()){
|
||||
|
@ -715,11 +702,13 @@ void FullBackgroundWidget::onCursorMoved(const QPoint &pos)
|
|||
{
|
||||
return;
|
||||
}
|
||||
bool chkInOneScreen = false;
|
||||
for(auto screen : QGuiApplication::screens())
|
||||
{
|
||||
#ifdef USE_INTEL
|
||||
if(screen == qApp->primaryScreen()){
|
||||
lockWidget->setGeometry(screen->geometry());
|
||||
chkInOneScreen = true;
|
||||
break;
|
||||
}
|
||||
#else
|
||||
|
@ -732,10 +721,24 @@ void FullBackgroundWidget::onCursorMoved(const QPoint &pos)
|
|||
lockWidget->hide();
|
||||
lockWidget->setGeometry(screen->geometry());
|
||||
lockWidget->show();
|
||||
chkInOneScreen = true;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
if (!chkInOneScreen) {
|
||||
for(auto screen : QGuiApplication::screens()) {
|
||||
if(screen == qApp->primaryScreen()){
|
||||
/*避免切换时闪烁*/
|
||||
qInfo()<<"LockWidget:"<<screen->geometry()<<lockWidget->geometry();
|
||||
lockWidget->hide();
|
||||
lockWidget->setGeometry(screen->geometry());
|
||||
lockWidget->show();
|
||||
chkInOneScreen = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void FullBackgroundWidget::lock()
|
||||
|
@ -1080,8 +1083,12 @@ void FullBackgroundWidget::onGlobalKeyRelease(int key)
|
|||
// 键盘上的num_lock生效、不需要登录界面进行管理
|
||||
}
|
||||
#else
|
||||
if(key == Qt::Key_Escape && screenStatus == SCREEN_LOCK) // "escape"
|
||||
{
|
||||
if (key == 65) { // "Space"
|
||||
if (lockWidget && lockWidget->isVisible()) {/*keyReleaseEvent有时候监听不到Space的按键事件 原因未知
|
||||
把Space按键放到nativeEventFilter里面*/
|
||||
lockWidget->key_enter_release(Qt::Key_Space);
|
||||
}
|
||||
} else if (key == Qt::Key_Escape && screenStatus == SCREEN_LOCK) { // "escape"
|
||||
bool canShow = true;
|
||||
if (lockWidget && !lockWidget->exitSubWidget())
|
||||
canShow = false;
|
||||
|
@ -1091,9 +1098,7 @@ void FullBackgroundWidget::onGlobalKeyRelease(int key)
|
|||
canShow = false;
|
||||
if (canShow)
|
||||
showScreensaver();
|
||||
}
|
||||
else if(screenStatus & SCREEN_SAVER && !isBlank)
|
||||
{
|
||||
} else if (screenStatus & SCREEN_SAVER && !isBlank) {
|
||||
clearScreensavers();
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -68,6 +68,8 @@ IconEdit::IconEdit(QWidget *parent)
|
|||
m_capsIcon->load(QString(":/image/assets/capslock.svg"));
|
||||
|
||||
m_iconButton = new QPushButton(this);
|
||||
m_iconButton->setFixedSize(24, 24);
|
||||
m_iconButton->setIconSize(QSize(24, 24));
|
||||
m_iconButton->setObjectName(QStringLiteral("loginButton"));
|
||||
m_iconButton->setCursor(QCursor(Qt::PointingHandCursor));
|
||||
m_iconButton->installEventFilter(this);
|
||||
|
@ -186,17 +188,15 @@ void IconEdit::setFocusin(int target)
|
|||
switch (target) {
|
||||
case 0:
|
||||
m_edit->setFocus();
|
||||
m_iconButton->setStyleSheet("min-width: 24px; max-width: 24px; min-height: 24px; max-height: 24px;"
|
||||
"icon-size: 22px; background:#3D6BE5; border-radius:12px;");
|
||||
m_iconButton->setStyleSheet("border-radius:12px; border:2px solid #3D6BE5;");
|
||||
break;
|
||||
case 1:
|
||||
m_edit->clearFocus();
|
||||
m_iconButton->setStyleSheet("min-width: 24px; max-width: 24px; min-height: 24px; max-height: 24px;"
|
||||
"icon-size: 22px; background:#000000; border-radius:12px;");
|
||||
m_iconButton->setFocus();
|
||||
m_iconButton->setStyleSheet("border-radius:12px; border:2px solid #000000;");
|
||||
break;
|
||||
default:
|
||||
m_iconButton->setStyleSheet("min-width: 24px; max-width: 24px; min-height: 24px; max-height: 24px;"
|
||||
"icon-size: 22px; background:#3D6BE5; border-radius:12px;");
|
||||
m_iconButton->setStyleSheet("border-radius:12px; border:2px solid #3D6BE5;");
|
||||
m_edit->clearFocus();
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -109,7 +109,10 @@ bool Interface::GetSlpState()
|
|||
|
||||
bool Interface::GetLockState()
|
||||
{
|
||||
return ((process.state() != QProcess::NotRunning) && lockState);
|
||||
if(process.state() != QProcess::NotRunning)
|
||||
return lockState;
|
||||
else
|
||||
return checkScreenDialogRunning();
|
||||
}
|
||||
|
||||
bool Interface::GetBlankState()
|
||||
|
@ -125,11 +128,13 @@ void Interface::SetLockState()
|
|||
void Interface::emitLockState(bool val)
|
||||
{
|
||||
qDebug()<<"emitLockState state = "<<val;
|
||||
if (QString(qgetenv("XDG_SESSION_TYPE")) == "wayland") {
|
||||
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,
|
||||
|
@ -268,11 +273,14 @@ bool Interface::checkScreenDialogRunning()
|
|||
lock.l_whence = SEEK_SET;
|
||||
|
||||
if(fcntl(fd, F_GETLK, &lock) < 0) {
|
||||
close(fd);
|
||||
return false;
|
||||
} else {
|
||||
if (lock.l_type == F_UNLCK) {
|
||||
close(fd);
|
||||
return false;
|
||||
} else {
|
||||
close(fd);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,65 @@
|
|||
/*
|
||||
* Copyright 2022 KylinSoft Co., Ltd.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with thi1s program; if not, write to the Free Software Foundation, Inc.,
|
||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
#include "libinputswitchevent.h"
|
||||
|
||||
typedef std::function<void(Event*)> sendEvent;
|
||||
LibinputSwitchEvent::LibinputSwitchEvent(QObject *parent) : QObject(parent)
|
||||
{
|
||||
|
||||
sendEvent se = std::bind(&LibinputSwitchEvent::dealEvent, this, std::placeholders::_1);
|
||||
m_inputGatherClient = new UKUIInputGatherClient;
|
||||
m_inputGatherClient->setEventCallBack(se);
|
||||
m_inputGatherClient->startToReceiveEvent();
|
||||
|
||||
}
|
||||
LibinputSwitchEvent::~LibinputSwitchEvent()
|
||||
{
|
||||
delete m_inputGatherClient;
|
||||
}
|
||||
bool LibinputSwitchEvent::geInitDevicesStatus()
|
||||
{
|
||||
//0 非平板
|
||||
//1 平板
|
||||
//-1 不支持
|
||||
int status = m_inputGatherClient->libinputTabletSwitchState();
|
||||
qInfo() << __FILE__ << __LINE__<< "当前设备的状态:" << status;
|
||||
if(status == 1)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
void LibinputSwitchEvent::dealEvent(Event* e)
|
||||
{
|
||||
switch (e->type) {
|
||||
case LIBINPUT_EVENT_SWITCH_TOGGLE:
|
||||
qInfo() << __FILE__ << __LINE__ << "=LIBINPUT_EVENT_SWITCH_TOGGLE=";
|
||||
if(e->event.switchEventDate.switchType == LIBINPUT_SWITCH_TABLET_MODE) {
|
||||
qInfo() << __FILE__ << __LINE__ << "switch type" << e->event.switchEventDate.switchType;
|
||||
qInfo() << __FILE__ << __LINE__ << "switch status" << e->event.switchEventDate.switchState;
|
||||
if(e->event.switchEventDate.switchState == 1) {
|
||||
Q_EMIT tabletModeStatusChanged(1);
|
||||
}else {
|
||||
Q_EMIT tabletModeStatusChanged(0);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
/*
|
||||
* Copyright 2022 KylinSoft Co., Ltd.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify it under
|
||||
* the terms of the GNU General Public License as published by the Free Software
|
||||
* Foundation, either version 3 of the License, or (at your option) any later
|
||||
* version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef LIBINPUTSWITCHEVENT_H
|
||||
#define LIBINPUTSWITCHEVENT_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QDebug>
|
||||
#include <ukui/event.h>
|
||||
#include <ukui/ukuiinputgatherclient.h>
|
||||
//头文件以及顺序不可改,不可删
|
||||
class LibinputSwitchEvent : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit LibinputSwitchEvent(QObject *parent = nullptr);
|
||||
|
||||
~LibinputSwitchEvent();
|
||||
UKUIInputGatherClient * m_inputGatherClient = nullptr;
|
||||
bool geInitDevicesStatus();
|
||||
signals:
|
||||
void tabletModeStatusChanged(int tabletmode);
|
||||
private:
|
||||
void dealEvent(Event* e);
|
||||
};
|
||||
|
||||
#endif // LIBINPUTSWITCHEVENT_H
|
|
@ -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>
|
||||
|
@ -82,6 +85,8 @@ LockWidget::LockWidget(QWidget *parent)
|
|||
this,&LockWidget::onClickPassword);
|
||||
connect(authDialog,&AuthDialog::loginOptionClicked,
|
||||
this,&LockWidget::resetNavigation);
|
||||
connect(authDialog,&AuthDialog::showMessageBtn,
|
||||
this,&LockWidget::onShowMessageBtn);
|
||||
// connect(this, &LockWidget::capsLockChanged,
|
||||
// authDialog, &AuthDialog::onCapsLockChanged);
|
||||
|
||||
|
@ -96,12 +101,15 @@ LockWidget::LockWidget(QWidget *parent)
|
|||
is_switchBtn = false;
|
||||
ui->btnSwitchUser->hide();
|
||||
}
|
||||
|
||||
if(horAT != KEYBOARDBTN) {
|
||||
if(is_batteryBtn)
|
||||
horAT = BATTERYBTN;
|
||||
else if(!is_batteryBtn && is_switchBtn)
|
||||
horAT = SWITCHBTN;
|
||||
else
|
||||
horAT = NETWORKBTN;
|
||||
}
|
||||
}
|
||||
|
||||
LockWidget::~LockWidget()
|
||||
|
@ -120,11 +128,25 @@ 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(vKeyboard && obj == vKeyboard)
|
||||
return true;
|
||||
|
||||
if(obj == ui->btnPowerManager || obj == ui->btnSwitchUser || obj == btnNetworkManager || obj == ui->btnBatteryStatus || obj == ui->btnKeyboard) {
|
||||
authDialog->setFocusin(REMOVE);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(tabAt != LINEEDIT) {
|
||||
authDialog->setFocusin(REMOVE);
|
||||
if(tabAt == BOTTMBTN) {
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
tabAt = BOTTMBTN;
|
||||
}
|
||||
}
|
||||
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible()) {
|
||||
setCheckedSheet(BATTERYBTN, false);
|
||||
|
@ -149,21 +171,20 @@ bool LockWidget::eventFilter(QObject *obj, QEvent *event)
|
|||
if(powermanager && powermanager->isVisible()){
|
||||
authDialog->show();
|
||||
powermanager->hide();
|
||||
if(!authDialog->getLineeditStatus()) {
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
if(isTableMode && !(vKeyboard && vKeyboard->isVisible())) {
|
||||
showVirtualKeyboard();
|
||||
}
|
||||
} else {
|
||||
tabAt = MESSAGEBTN;
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
powermanager->clearStatus();
|
||||
at_power = false;
|
||||
}
|
||||
|
||||
if(tabAt != LINEEDIT) {
|
||||
authDialog->setFocusin(REMOVE);
|
||||
if(tabAt == BOTTMBTN) {
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
tabAt = BOTTMBTN;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (obj == scrollContents ){
|
||||
|
@ -172,24 +193,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 +259,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:
|
||||
|
@ -273,29 +295,40 @@ void LockWidget::key_tab_release(int key)
|
|||
authDialog->setFocusin(IN_LIGIN);
|
||||
tabAt = ENTERBTN;
|
||||
break;
|
||||
case ENTERBTN:
|
||||
if(authDialog->getBioNum() >1) {
|
||||
authDialog->setFocusin(BIO_RIGHT);
|
||||
tabAt = BIOBTN;
|
||||
} else {
|
||||
case MESSAGEBTN :
|
||||
tabAt = BOTTMBTN;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
if(is_batteryBtn) {
|
||||
horAT = BATTERYBTN;
|
||||
setBottomBtnSheet();
|
||||
} else if(users->getUsers().count() > 1){
|
||||
horAT = SWITCHBTN;
|
||||
setBottomBtnSheet();
|
||||
} else {
|
||||
horAT =NETWORKBTN;
|
||||
setBottomBtnSheet();
|
||||
}
|
||||
break;
|
||||
case ENTERBTN:
|
||||
if(authDialog->getBioNum() >1) {
|
||||
authDialog->setFocusin(BIO_RIGHT);
|
||||
tabAt = BIOBTN;
|
||||
} else {
|
||||
tabAt = BOTTMBTN;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
if(is_batteryBtn){
|
||||
horAT = BATTERYBTN;
|
||||
} else if(users->getUsers().count() > 1){
|
||||
horAT = SWITCHBTN;
|
||||
} else {
|
||||
horAT =NETWORKBTN;
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
}
|
||||
break;
|
||||
case BIOBTN:
|
||||
tabAt = BOTTMBTN;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
qDebug() << " is_batteryBtn = " << is_batteryBtn;
|
||||
if(is_batteryBtn){
|
||||
horAT = BATTERYBTN;
|
||||
} else if(users->getUsers().count() > 1){
|
||||
horAT = SWITCHBTN;
|
||||
} else {
|
||||
horAT =NETWORKBTN;
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
qDebug() << " horat = " << horAT;
|
||||
}
|
||||
break;
|
||||
case BIOBTN:
|
||||
tabAt = BOTTMBTN;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
qDebug() << " is_batteryBtn = " << is_batteryBtn;
|
||||
if(is_batteryBtn) {
|
||||
horAT = BATTERYBTN;
|
||||
setBottomBtnSheet();
|
||||
|
@ -306,12 +339,16 @@ void LockWidget::key_tab_release(int key)
|
|||
horAT =NETWORKBTN;
|
||||
setBottomBtnSheet();
|
||||
}
|
||||
qDebug() << " horat = " << horAT;
|
||||
break;
|
||||
case BOTTMBTN:
|
||||
if(!at_power) {
|
||||
if(!authDialog->getLineeditStatus()) {
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
tabAt = LINEEDIT;
|
||||
} else {
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
tabAt = MESSAGEBTN;
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
} else if (at_power) {
|
||||
powermanager->keyBdRelease(Qt::Key_Right);
|
||||
|
@ -360,6 +397,20 @@ void LockWidget::key_shiftTab_release()
|
|||
}
|
||||
setBottomBtnSheet();
|
||||
break;
|
||||
case MESSAGEBTN :
|
||||
tabAt = BOTTMBTN;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
if(is_batteryBtn) {
|
||||
horAT = BATTERYBTN;
|
||||
setBottomBtnSheet();
|
||||
} else if(users->getUsers().count() > 1){
|
||||
horAT = SWITCHBTN;
|
||||
setBottomBtnSheet();
|
||||
} else {
|
||||
horAT =NETWORKBTN;
|
||||
setBottomBtnSheet();
|
||||
}
|
||||
break;
|
||||
case ENTERBTN:
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
tabAt = LINEEDIT;
|
||||
|
@ -371,6 +422,7 @@ void LockWidget::key_shiftTab_release()
|
|||
break;
|
||||
case BOTTMBTN:
|
||||
if(!at_power) {
|
||||
if(!authDialog->getLineeditStatus()) {
|
||||
if(authDialog->getBioNum() >1) {
|
||||
authDialog->setFocusin(BIO_RIGHT);
|
||||
tabAt = BIOBTN;
|
||||
|
@ -378,6 +430,11 @@ void LockWidget::key_shiftTab_release()
|
|||
authDialog->setFocusin(IN_LIGIN);
|
||||
tabAt = ENTERBTN;
|
||||
}
|
||||
} else {
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
tabAt = MESSAGEBTN;
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
} else {
|
||||
powermanager->keyBdRelease(Qt::Key_Right);
|
||||
tabAt = POWERMANAGER;
|
||||
|
@ -422,7 +479,11 @@ void LockWidget::key_LR_release(int key)
|
|||
horAT = NETWORKBTN;
|
||||
break;
|
||||
case NETWORKBTN:
|
||||
horAT = POWERBTN;//KEYBOARDBTN;
|
||||
if (ui->btnKeyboard->isHidden()) {
|
||||
horAT = POWERBTN;
|
||||
} else {
|
||||
horAT = KEYBOARDBTN;
|
||||
}
|
||||
break;
|
||||
case KEYBOARDBTN:
|
||||
horAT = POWERBTN;
|
||||
|
@ -470,7 +531,11 @@ void LockWidget::key_LR_release(int key)
|
|||
horAT = NETWORKBTN;
|
||||
break;
|
||||
case POWERBTN:
|
||||
horAT = NETWORKBTN;//KEYBOARDBTN;
|
||||
if (ui->btnKeyboard->isHidden()) {
|
||||
horAT = NETWORKBTN;
|
||||
} else {
|
||||
horAT = KEYBOARDBTN;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -491,19 +556,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 +578,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 +598,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);
|
||||
|
@ -665,24 +730,38 @@ void LockWidget::initUI()
|
|||
ui->widgetTime->adjustSize();
|
||||
|
||||
//电池电量显示icon
|
||||
QDBusInterface *batInterface = new QDBusInterface(
|
||||
"org.ukui.upower", "/upower/BatteryInfo", "org.ukui.upower.battery", QDBusConnection::sessionBus(), this);
|
||||
batInterface = new QDBusInterface(
|
||||
"org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.DBus.Properties", QDBusConnection::systemBus(), this);
|
||||
|
||||
QDBusInterface *powerInterface = new QDBusInterface(
|
||||
"org.ukui.upower", "/upower", "org.ukui.upower", QDBusConnection::sessionBus(), this);
|
||||
if (batInterface->isValid()) {
|
||||
QDBusReply<int> reply = powerInterface->call("MachineType");
|
||||
QString batteryPath = "";
|
||||
dface = new QDBusInterface(UPOWER_SERVICE, UPOWER_PATH, UPOWER_INTERFACE, QDBusConnection::systemBus(), this);
|
||||
QDBusReply<QList<QDBusObjectPath>> reply = dface->call("EnumerateDevices");
|
||||
if (dface->isValid()) {
|
||||
for (QDBusObjectPath op : reply.value()) {
|
||||
if (op.path().contains("battery_")) {
|
||||
batteryPath = op.path();
|
||||
qDebug() << "battery path is :" << batteryPath;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
qDebug() << "Enumerate devices failed";
|
||||
}
|
||||
|
||||
iface = new QDBusInterface(UPOWER_SERVICE, batteryPath, FREEDESKTOP_UPOWER, QDBusConnection::systemBus());
|
||||
if (dface->isValid()) {
|
||||
QDBusReply<QVariant> reply = batInterface->call("Get", "org.freedesktop.UPower", "LidIsPresent");
|
||||
if (reply.isValid()) {
|
||||
if (1 == reply.value()) {
|
||||
QDBusReply<QString> iconreply = batInterface->call("IconName");
|
||||
setBatteryIcon(iconreply.value());
|
||||
QDBusConnection::sessionBus().connect(
|
||||
QString(), "/upower/BatteryInfo", "org.ukui.upower.battery", "BatteryIcon", this, SLOT(setBatteryIcon(QString)));
|
||||
if (true == reply.value().toBool()) {
|
||||
setBatteryIcon(getBatteryIconName());
|
||||
QDBusConnection::systemBus().connect(
|
||||
UPOWER_SERVICE, batteryPath, FREEDESKTOP_UPOWER, "PropertiesChanged", this, SLOT(dealMessage(QDBusMessage)));
|
||||
ui->btnBatteryStatus->setFixedSize(48,48);
|
||||
ui->btnBatteryStatus->setIconSize(QSize(24,24));
|
||||
ui->btnBatteryStatus->setFocusPolicy(Qt::NoFocus);
|
||||
ui->btnBatteryStatus->installEventFilter(this);
|
||||
ui->btnBatteryStatus->setCheckable(true);
|
||||
ui->btnBatteryStatus->raise();
|
||||
mBatteryWidget = new BatteryWidget(QPoint(ui->btnBatteryStatus->x(), ui->btnBatteryStatus->y()), this);
|
||||
mBatteryWidget->hide();
|
||||
connect(ui->btnBatteryStatus,&QPushButton::clicked
|
||||
|
@ -701,7 +780,7 @@ void LockWidget::initUI()
|
|||
}
|
||||
|
||||
//电源管理
|
||||
ui->btnPowerManager->setIcon(QIcon(":/image/assets/powerManager.png"));
|
||||
ui->btnPowerManager->setIcon(QIcon(":/image/assets/shutdown.svg"));
|
||||
ui->btnPowerManager->setFixedSize(48,48);
|
||||
ui->btnPowerManager->setIconSize(QSize(24,24));
|
||||
ui->btnPowerManager->setFocusPolicy(Qt::NoFocus);
|
||||
|
@ -711,19 +790,29 @@ 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);
|
||||
connect(btnNetworkManager,&QPushButton::clicked
|
||||
,this, [&,this](){
|
||||
this->showNetManager();
|
||||
this->setCursor(Qt::ArrowCursor);
|
||||
});
|
||||
|
||||
if(QX11Info::isPlatformX11()){
|
||||
//虚拟键盘
|
||||
|
@ -732,7 +821,6 @@ void LockWidget::initUI()
|
|||
ui->btnKeyboard->setIconSize(QSize(24, 24));
|
||||
ui->btnKeyboard->setFocusPolicy(Qt::NoFocus);
|
||||
ui->btnKeyboard->installEventFilter(this);
|
||||
ui->btnKeyboard->hide();
|
||||
|
||||
/* connect(ui->btnKeyboard, &QPushButton::clicked,
|
||||
this, [&]{
|
||||
|
@ -744,13 +832,15 @@ void LockWidget::initUI()
|
|||
|
||||
connect(ui->btnKeyboard, &QPushButton::clicked,
|
||||
this, &LockWidget::showVirtualKeyboard);
|
||||
} else {
|
||||
ui->btnKeyboard->hide();
|
||||
}
|
||||
|
||||
//用户切换
|
||||
if(displayManager->canSwitch())
|
||||
{
|
||||
//initUserMenu();
|
||||
ui->btnSwitchUser->setIcon(QIcon(":/image/assets/switchUser.png"));
|
||||
ui->btnSwitchUser->setIcon(QIcon(":/image/assets/switchuser.svg"));
|
||||
ui->btnSwitchUser->setIconSize(QSize(24, 24));
|
||||
ui->btnSwitchUser->setFixedSize(48, 48);
|
||||
ui->btnSwitchUser->setFocusPolicy(Qt::NoFocus);
|
||||
|
@ -760,17 +850,41 @@ void LockWidget::initUI()
|
|||
connect(ui->btnSwitchUser, &QPushButton::clicked,
|
||||
this, &LockWidget::showUserMenu);
|
||||
}
|
||||
//监听物理键盘插拔
|
||||
libswitch = new LibinputSwitchEvent;
|
||||
isTableMode = libswitch->geInitDevicesStatus();
|
||||
if(isTableMode && !(vKeyboard && vKeyboard->isVisible())) {
|
||||
showVirtualKeyboard();
|
||||
}
|
||||
connect(libswitch , &LibinputSwitchEvent::tabletModeStatusChanged, this, [ = ](int tablet_mode) {
|
||||
isTableMode = tablet_mode;
|
||||
if(isTableMode && tabAt == LINEEDIT && !(vKeyboard && vKeyboard->isVisible())) {
|
||||
showVirtualKeyboard();
|
||||
QTimer::singleShot(500, this, [&, this](){
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
void LockWidget::netInPutStatus()
|
||||
{
|
||||
if(isTableMode && !(vKeyboard && vKeyboard->isVisible()))
|
||||
showVirtualKeyboard();
|
||||
}
|
||||
|
||||
void LockWidget::showVirtualKeyboard()
|
||||
{
|
||||
if (!QX11Info::isPlatformX11()) {
|
||||
return ;
|
||||
}
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
tabAt = BOTTMBTN;
|
||||
horAT = KEYBOARDBTN;
|
||||
if(!vKeyboard){
|
||||
vKeyboard = new VirtualKeyboard(this);
|
||||
vKeyboard->installEventFilter(this);
|
||||
vKeyboard->hide();
|
||||
|
||||
connect(vKeyboard, &VirtualKeyboard::aboutToClose,
|
||||
|
@ -781,8 +895,18 @@ void LockWidget::showVirtualKeyboard()
|
|||
|
||||
if(!vKeyboard->isHidden()){
|
||||
vKeyboard->raise();
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
//authDialog->setFocusin(IN_LINEEDIT);
|
||||
at_plugins = true;
|
||||
if(m_kylinNM && m_kylinNM->isVisible()) {
|
||||
m_kylinNM->move(this->width() - m_kylinNM->width() - 20,
|
||||
this->height() - m_kylinNM->height() - vKeyboard->height());
|
||||
m_kylinNM->raise();
|
||||
} else
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
if(scrollArea && scrollArea->isVisible())
|
||||
setCheckedSheet(SWITCHBTN, false);
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible())
|
||||
setCheckedSheet(BATTERYBTN, false);
|
||||
}
|
||||
setVirkeyboardPos();
|
||||
}
|
||||
|
@ -801,10 +925,10 @@ void LockWidget::showUserMenu()
|
|||
setCheckedSheet(SWITCHBTN,false);
|
||||
at_plugins = false;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
setCheckedSheet(SWITCHBTN, true);
|
||||
at_plugins = true;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
if(m_kylinNM && m_kylinNM->isVisible())
|
||||
setCheckedSheet(NETWORKBTN, false);
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible())
|
||||
|
@ -852,16 +976,23 @@ void LockWidget::showPowerManager(bool keynavigation)
|
|||
if(powermanager->isVisible()){
|
||||
authDialog->show();
|
||||
powermanager->hide();
|
||||
if(!authDialog->getLineeditStatus()) {
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
if(isTableMode && !(vKeyboard && vKeyboard->isVisible())) {
|
||||
showVirtualKeyboard();
|
||||
}
|
||||
} else {
|
||||
tabAt = MESSAGEBTN;
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
powermanager->clearStatus();
|
||||
at_power = false;
|
||||
}
|
||||
else{
|
||||
authDialog->hide();
|
||||
powermanager->show();
|
||||
powermanager->setFocus();
|
||||
if(keynavigation){
|
||||
powermanager->keyBdRelease(Qt::Key_Right);
|
||||
tabAt = POWERMANAGER;
|
||||
|
@ -906,10 +1037,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:
|
||||
|
@ -931,7 +1062,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();
|
||||
|
@ -953,7 +1084,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();
|
||||
|
@ -967,7 +1098,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();
|
||||
|
@ -986,7 +1117,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();
|
||||
|
@ -1002,20 +1133,24 @@ 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);
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible())
|
||||
setCheckedSheet(BATTERYBTN, false);
|
||||
m_kylinNM->setGeometry(this->width() - m_kylinNM->width() - 20,
|
||||
this->height() - m_kylinNM->height() - 100,
|
||||
this->height() - m_kylinNM->height() - 72 - 8,
|
||||
m_kylinNM->width(),
|
||||
m_kylinNM->height());
|
||||
m_kylinNM->raise();
|
||||
|
@ -1024,14 +1159,16 @@ void LockWidget::showNetManager(bool keynavigation)
|
|||
* 这里只调用m_kylinNM->raise()仍会有问题,需要再调用一次authDialog->lower()才行,原因未知*/
|
||||
if(authDialog && authDialog->isVisible()){
|
||||
authDialog->lower();
|
||||
}
|
||||
authDialog->clearFocus();
|
||||
}
|
||||
|
||||
if(mBatteryWidget && mBatteryWidget->isVisible()) {
|
||||
mBatteryWidget->lower();
|
||||
mBatteryWidget->clearFocus();
|
||||
}
|
||||
at_plugins = true;
|
||||
m_kylinNM->updateWifiList();
|
||||
|
||||
//m_kylinNM->updateWifiList();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1055,9 +1192,21 @@ void LockWidget::onClickPassword()
|
|||
at_plugins = false;
|
||||
}
|
||||
|
||||
if(vKeyboard && vKeyboard->isVisible()) {
|
||||
vKeyboard->hide();
|
||||
at_plugins = false;
|
||||
if(isTableMode) {
|
||||
if(!(vKeyboard && vKeyboard->isVisible()))
|
||||
showVirtualKeyboard();
|
||||
}
|
||||
// if(vKeyboard && vKeyboard->isVisible()) {
|
||||
// vKeyboard->hide();
|
||||
// at_plugins = false;
|
||||
// }
|
||||
}
|
||||
|
||||
void LockWidget::onShowMessageBtn(bool is_show)
|
||||
{
|
||||
if(is_show) {
|
||||
tabAt = MESSAGEBTN;
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1084,9 +1233,6 @@ void LockWidget::showBattery()
|
|||
|
||||
void LockWidget::hideBottomPlugins()
|
||||
{
|
||||
if(m_kylinNM && m_kylinNM->isVisible())
|
||||
setCheckedSheet(NETWORKBTN, false);
|
||||
|
||||
if(scrollArea && scrollArea->isVisible())
|
||||
setCheckedSheet(SWITCHBTN, false);
|
||||
|
||||
|
@ -1094,7 +1240,18 @@ void LockWidget::hideBottomPlugins()
|
|||
vKeyboard->hide();
|
||||
at_plugins = false;
|
||||
}
|
||||
if(m_kylinNM && m_kylinNM->isVisible()) {
|
||||
m_kylinNM->move(this->width() - m_kylinNM->width() - 20,
|
||||
this->height() - m_kylinNM->height() - 72 - 8);
|
||||
tabAt = BOTTMBTN;
|
||||
horAT = NETWORKBTN;
|
||||
setCheckedSheet(NETWORKBTN, true);
|
||||
at_plugins = true;
|
||||
authDialog->setFocusin(REMOVE);
|
||||
return ;
|
||||
}
|
||||
//tabAt = EMPTY;
|
||||
if(!authDialog->getLineeditStatus())
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
}
|
||||
|
@ -1115,6 +1272,11 @@ void LockWidget::setBatteryIcon(QString str)
|
|||
ui->btnBatteryStatus->setIcon(QPixmap::fromImage(img));
|
||||
}
|
||||
|
||||
void LockWidget::dealMessage(QDBusMessage)
|
||||
{
|
||||
setBatteryIcon(getBatteryIconName());
|
||||
}
|
||||
|
||||
int LockWidget::getNetStatus()
|
||||
{
|
||||
int ret = -1;
|
||||
|
@ -1151,22 +1313,111 @@ 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,"");
|
||||
|
||||
// 平板模式输入状态下自动调出虚拟键盘
|
||||
connect(pluginInstance, SIGNAL(needShowVirtualKeyboard()), this, SLOT(netInPutStatus()));
|
||||
} 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() - 72 - 8,
|
||||
mkylinNM->width(),
|
||||
mkylinNM->height());
|
||||
|
||||
}
|
||||
|
||||
void LockWidget::switchToGreeter()
|
||||
{
|
||||
if(authDialog)
|
||||
|
@ -1305,7 +1556,7 @@ void LockWidget::initUserMenu()
|
|||
scrollArea->setFixedSize(usersMenu->width() + 16, height()/2);
|
||||
}
|
||||
scrollArea->move(ui->btnSwitchUser->geometry().x()- scrollArea->width()/2 + 24, \
|
||||
height() - 72 - scrollArea->height() - 5);
|
||||
height() - 72 - scrollArea->height() - 8);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1329,7 +1580,7 @@ void LockWidget::keyReleaseEvent(QKeyEvent *e)
|
|||
key_OB_release(e->key());
|
||||
} else if (e->key() == Qt::Key_Left || e->key() == Qt::Key_Right ) { // "Left" "Right"
|
||||
key_LR_release(e->key());
|
||||
} else if (e->key() == Qt::Key_Return || e->key() == Qt::Key_Enter || e->key() == Qt::Key_Space) { // "Return" "KP_Enter" "Space"
|
||||
} else if (e->key() == Qt::Key_Return || e->key() == Qt::Key_Enter) { // "Return" "KP_Enter"
|
||||
key_enter_release(e->key());
|
||||
}
|
||||
}
|
||||
|
@ -1351,11 +1602,14 @@ void LockWidget::resizeEvent(QResizeEvent *event)
|
|||
|
||||
//认证窗口
|
||||
//设置认证窗口左右居中
|
||||
if(scale >= 1)
|
||||
authDialog->setGeometry((width()-authDialog->geometry().width())/2,height()/(4-0.65*scale), \
|
||||
if(scale >= 1.3)
|
||||
authDialog->setGeometry((width()-authDialog->geometry().width())/2,height()/(4-0.7*scale), \
|
||||
authDialog->width(), (height()*3/4));
|
||||
else if(scale <= 0.9)
|
||||
authDialog->setGeometry((width()-authDialog->geometry().width())/2,height()/(4-0.9*scale), \
|
||||
authDialog->width(), (height()*3/4));
|
||||
else
|
||||
authDialog->setGeometry((width()-authDialog->geometry().width())/2,height()/(4+0.65*scale), \
|
||||
authDialog->setGeometry((width()-authDialog->geometry().width())/2,height()/(4-0.65*scale), \
|
||||
authDialog->width(), (height()*3/4));
|
||||
|
||||
if(scale > 1)
|
||||
|
@ -1366,13 +1620,13 @@ void LockWidget::resizeEvent(QResizeEvent *event)
|
|||
x = x + ui->btnPowerManager->width();
|
||||
ui->btnPowerManager->move(width() - x,height() - y);
|
||||
|
||||
if(ui->btnKeyboard->isVisible()){
|
||||
if(!ui->btnKeyboard->isHidden()){
|
||||
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;
|
||||
|
@ -1399,12 +1653,12 @@ void LockWidget::resizeEvent(QResizeEvent *event)
|
|||
scrollArea->setFixedSize(usersMenu->width() + 16, height()/2);
|
||||
}
|
||||
scrollArea->move(ui->btnSwitchUser->geometry().x()- scrollArea->width()/2 + 24, \
|
||||
height() - y - scrollArea->height() - 5);
|
||||
height() - y - scrollArea->height() - 8);
|
||||
}
|
||||
|
||||
if(m_kylinNM){
|
||||
m_kylinNM->setGeometry(this->width() - m_kylinNM->width() - 20,
|
||||
this->height() - m_kylinNM->height() - 100,
|
||||
this->height() - m_kylinNM->height() - y - 8,
|
||||
m_kylinNM->width(),
|
||||
m_kylinNM->height());
|
||||
}
|
||||
|
@ -1474,24 +1728,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())
|
||||
|
@ -1599,7 +1835,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();
|
||||
|
@ -1610,27 +1846,67 @@ bool LockWidget::exitSubWidget()
|
|||
} else if(powermanager && powermanager->isVisible()){
|
||||
authDialog->show();
|
||||
powermanager->hide();
|
||||
if(!authDialog->getLineeditStatus()) {
|
||||
tabAt = LINEEDIT;
|
||||
setBottomBtnSheet();
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
if(isTableMode && !(vKeyboard && vKeyboard->isVisible())) {
|
||||
showVirtualKeyboard();
|
||||
}
|
||||
} else {
|
||||
tabAt = MESSAGEBTN;
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
}
|
||||
setBottomBtnSheet();
|
||||
powermanager->clearStatus();
|
||||
at_power = false;
|
||||
allExited = false;
|
||||
return allExited;
|
||||
}
|
||||
if(tabAt != LINEEDIT)
|
||||
authDialog->setFocusin(REMOVE);
|
||||
// if (!is_keynavigation) {
|
||||
// resetNavigation();
|
||||
// }
|
||||
return allExited;
|
||||
}
|
||||
|
||||
void LockWidget::onActiveWindpw()
|
||||
void LockWidget::onActiveLineedit()
|
||||
{
|
||||
if(tabAt == LINEEDIT) {
|
||||
if(authDialog && authDialog->isVisible())
|
||||
if(tabAt == LINEEDIT || (tabAt == BOTTMBTN && horAT == KEYBOARDBTN)) { /*
|
||||
重启时session拉其他组件时会多次设置焦点
|
||||
这个时候如果是平板模式,因为已经弹出了虚拟键盘 tabAt就会是BOTTOM
|
||||
*/
|
||||
if(authDialog && authDialog->isVisible()) {
|
||||
if(!authDialog->getLineeditStatus()) {
|
||||
authDialog->setFocusin(IN_LINEEDIT);
|
||||
if(isTableMode && !(vKeyboard && vKeyboard->isVisible()))
|
||||
showVirtualKeyboard();
|
||||
} else {
|
||||
tabAt = MESSAGEBTN;
|
||||
authDialog->setFocusin(ON_MESSAGEBTN);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
QString LockWidget::getBatteryIconName()
|
||||
{
|
||||
if (iface->isValid() && dface->isValid()) {
|
||||
bool batteryState = false;
|
||||
QDBusReply<QVariant> reply = batInterface->call("Get", UPOWER_SERVICE, "OnBattery");
|
||||
if (reply.isValid()) {
|
||||
batteryState = reply.value().toBool();
|
||||
}
|
||||
double percentage = -1.0;
|
||||
QDBusReply<QVariant> percentage_reply = iface->call("Get", UPOWER_DIVICES_SERVICE, "Percentage");
|
||||
if (percentage_reply.isValid()) {
|
||||
percentage = percentage_reply.value().toDouble();
|
||||
}
|
||||
|
||||
if (true == batteryState) {
|
||||
return QString("battery-level-%1-symbolic").arg((int)percentage / 10 * 10);
|
||||
} else {
|
||||
return QString("battery-level-%1-charging-symbolic").arg((int)percentage / 10 * 10);
|
||||
}
|
||||
}
|
||||
return QString();
|
||||
}
|
||||
|
||||
int LockWidget::getLoginedNum()
|
||||
|
|
|
@ -25,10 +25,14 @@
|
|||
#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"
|
||||
#include "batterywidget.h"
|
||||
#include "libinputswitchevent.h"
|
||||
|
||||
namespace Ui {
|
||||
class LockWidget;
|
||||
|
@ -61,6 +65,7 @@ enum TABAT {
|
|||
BIOBTN,
|
||||
BOTTMBTN,
|
||||
POWERMANAGER,
|
||||
MESSAGEBTN,
|
||||
};
|
||||
|
||||
enum HORIZONBTN {
|
||||
|
@ -84,7 +89,9 @@ public:
|
|||
void setX11Focus();
|
||||
bool exitSubWidget();
|
||||
void setStartupMode(bool mode);
|
||||
void onActiveWindpw();
|
||||
void onActiveLineedit();
|
||||
QString getBatteryIconName();
|
||||
void key_enter_release(int key);
|
||||
|
||||
Q_SIGNALS:
|
||||
void closed();
|
||||
|
@ -98,13 +105,12 @@ 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 loadNetPlugin();
|
||||
void setBottomBtnSheet();
|
||||
void setCheckedSheet(int type, bool show);
|
||||
private Q_SLOTS:
|
||||
|
@ -112,6 +118,7 @@ private Q_SLOTS:
|
|||
void onUserDeleted(const UserItem &user);
|
||||
void onUserMenuTrigged(QAction *action);
|
||||
void showVirtualKeyboard();
|
||||
void netInPutStatus();
|
||||
void showPowerManager(bool keynavigation = false);
|
||||
void showUserMenu();
|
||||
void showNetManager(bool keynavigation = false);
|
||||
|
@ -125,6 +132,8 @@ private Q_SLOTS:
|
|||
void hideBottomPlugins();
|
||||
void resetNavigation();
|
||||
void setBatteryIcon(QString str);
|
||||
void dealMessage(QDBusMessage);
|
||||
void onShowMessageBtn(bool is_show);
|
||||
|
||||
protected:
|
||||
bool eventFilter(QObject *obj, QEvent *event);
|
||||
|
@ -147,14 +156,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;
|
||||
|
@ -163,6 +174,15 @@ private:
|
|||
int horAT = BATTERYBTN;
|
||||
int at_power = false;
|
||||
bool at_plugins = false;
|
||||
|
||||
QDBusInterface *batInterface = nullptr;
|
||||
QDBusInterface *iface = nullptr;
|
||||
QDBusInterface *dface = nullptr;
|
||||
|
||||
|
||||
// 监听键盘插拔
|
||||
LibinputSwitchEvent *libswitch = nullptr;
|
||||
bool isTableMode = false;
|
||||
};
|
||||
|
||||
#endif // LOCKWIDGET_H
|
||||
|
|
|
@ -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
|
|
@ -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);
|
||||
|
@ -197,7 +202,8 @@ void PowerManager::clearStatus()
|
|||
void::PowerManager::setButtonStyle(QString Style)
|
||||
{
|
||||
if(Style == "normal")
|
||||
listLabel.at(nowAt)->setStyleSheet("background-color: rgba(255, 255, 255, 15%);QLabel:hover{background-color:rgba(255,255,255,40%)};QLabel:pressed:!hover{background-color:rgba(255,255,255,30%)}");
|
||||
listLabel.at(nowAt)->setStyleSheet("background-color: rgba(255, 255, 255, 15%);\
|
||||
QPushButton:hover{background-color:rgba(255,255,255,40%)};QPushButton:pressed:!hover{background-color:rgba(255,255,255,30%)}");
|
||||
else if(Style == "focus")
|
||||
listLabel.at(nowAt)->setStyleSheet("background-color: rgba(255, 255, 255, 20%);border: 1px solid #296CD9; border-radius: 64px;");
|
||||
}
|
||||
|
@ -655,13 +661,14 @@ void PowerManager::initUI()
|
|||
rebootWidget->setObjectName("rebootWidget");
|
||||
QWidget *rbLabelWidget = new QWidget(this);
|
||||
rbLabelWidget->setFixedSize(130, 130);
|
||||
rebootFace = new QLabel(rbLabelWidget);
|
||||
rebootFace = new QPushButton(rbLabelWidget);
|
||||
rebootFace->setObjectName("rebootFace");
|
||||
QLabel *rebootLabel = new QLabel(this);
|
||||
rebootFace->setAlignment(Qt::AlignCenter);
|
||||
//rebootFace->setAlignment(Qt::AlignCenter);
|
||||
rebootFace->installEventFilter(this);
|
||||
rebootLabel->setAlignment(Qt::AlignCenter);
|
||||
rebootFace->setPixmap(QPixmap(":/image/assets/reboot.png").scaled(58,58));
|
||||
rebootFace->setIcon(QIcon(":/image/assets/reboot.svg"));
|
||||
rebootFace->setIconSize(QSize(48, 48));
|
||||
rebootLabel->setText(tr("Reboot"));
|
||||
rebootWidget->setFixedSize(ITEM_WIDTH,ITEM_HEIGHT);
|
||||
QVBoxLayout *rebootlayout = new QVBoxLayout(rebootWidget);
|
||||
|
@ -673,15 +680,16 @@ void PowerManager::initUI()
|
|||
shutdownWidget->setObjectName("shutdownWidget");
|
||||
QWidget *shLabelWidget = new QWidget(this);
|
||||
shLabelWidget->setFixedSize(130, 130);
|
||||
shutdownFace = new QLabel(shLabelWidget);
|
||||
shutdownFace = new QPushButton(shLabelWidget);
|
||||
shutdownFace->setObjectName("shutdownFace");
|
||||
QLabel *shutdownLabel = new QLabel(this);
|
||||
shutdownLabel->setAlignment(Qt::AlignCenter);
|
||||
shutdownFace->setAlignment(Qt::AlignCenter);
|
||||
//shutdownFace->setAlignment(Qt::AlignCenter);
|
||||
shutdownFace->installEventFilter(this);
|
||||
shutdownFace->setPixmap(QPixmap(":/image/assets/shutdown.png").scaled(58,58));
|
||||
shutdownFace->setIcon(QIcon(":/image/assets/shutdown.svg"));
|
||||
shutdownFace->setIconSize(QSize(48, 48));
|
||||
shutdownLabel->setText(tr("Shut Down"));
|
||||
shutdownWidget->setFixedSize(ITEM_WIDTH,ITEM_HEIGHT);
|
||||
shutdownWidget->setFixedSize(ITEM_WIDTH, ITEM_HEIGHT);
|
||||
QVBoxLayout *shutdownlayout = new QVBoxLayout(shutdownWidget);
|
||||
shutdownlayout->addWidget(shLabelWidget);
|
||||
shutdownlayout->addWidget(shutdownLabel);
|
||||
|
@ -699,13 +707,14 @@ void PowerManager::initUI()
|
|||
hibernateWidget->setObjectName("hibernateWidget");
|
||||
QWidget *hbLabelWidget = new QWidget(this);
|
||||
hbLabelWidget->setFixedSize(130, 130);
|
||||
hibernateFace = new QLabel(hbLabelWidget);
|
||||
hibernateFace = new QPushButton(hbLabelWidget);
|
||||
hibernateFace->setObjectName("hibernateFace");
|
||||
QLabel *hibernateLabel = new QLabel(this);
|
||||
hibernateLabel->setAlignment(Qt::AlignCenter);
|
||||
hibernateFace->setAlignment(Qt::AlignCenter);
|
||||
//hibernateFace->setAlignment(Qt::AlignCenter);
|
||||
hibernateFace->installEventFilter(this);
|
||||
hibernateFace->setPixmap(QPixmap(":/image/assets/hibernate.png").scaled(48,48));
|
||||
hibernateFace->setIcon(QIcon(":/image/assets/hibernate.svg"));
|
||||
hibernateFace->setIconSize(QSize(48, 48));
|
||||
hibernateLabel->setText(tr("Hibernate"));
|
||||
hibernateWidget->setFixedSize(ITEM_WIDTH,ITEM_HEIGHT);
|
||||
QVBoxLayout *hibernatelayout = new QVBoxLayout(hibernateWidget);
|
||||
|
@ -726,13 +735,14 @@ void PowerManager::initUI()
|
|||
suspendWidget->setObjectName("suspendWidget");
|
||||
QWidget *spLabelWidget = new QWidget(this);
|
||||
spLabelWidget->setFixedSize(130, 130);
|
||||
suspendFace = new QLabel(spLabelWidget);
|
||||
suspendFace = new QPushButton(spLabelWidget);
|
||||
suspendFace->setObjectName("suspendFace");
|
||||
QLabel *suspendLabel = new QLabel(this);
|
||||
suspendLabel->setAlignment(Qt::AlignCenter);
|
||||
suspendFace->setAlignment(Qt::AlignCenter);
|
||||
//suspendFace->setAlignment(Qt::AlignCenter);
|
||||
suspendFace->installEventFilter(this);
|
||||
suspendFace->setPixmap(QPixmap(":/image/assets/suspend.png").scaled(48,48));
|
||||
suspendFace->setIcon(QIcon(":/image/assets/suspend.svg"));
|
||||
suspendFace->setIconSize(QSize(48, 48));
|
||||
suspendLabel->setText(tr("Suspend"));
|
||||
suspendWidget->setFixedSize(ITEM_WIDTH,ITEM_HEIGHT);
|
||||
QVBoxLayout *suspendlayout = new QVBoxLayout(suspendWidget);
|
||||
|
|
|
@ -45,6 +45,7 @@ enum stateType {
|
|||
};
|
||||
|
||||
class QLabel;
|
||||
class QPushButton;
|
||||
class QListWidget;
|
||||
class QListWidgetItem;
|
||||
class QDBusInterface;
|
||||
|
@ -76,7 +77,7 @@ private:
|
|||
void setQSS();
|
||||
QWidget *list;
|
||||
#else
|
||||
QList<QLabel *> listLabel;
|
||||
QList<QPushButton *> listLabel;
|
||||
int nowAt = -1;
|
||||
QListWidget *list;
|
||||
QWidget *suspendWidget;
|
||||
|
@ -97,10 +98,10 @@ private:
|
|||
QWidget *rebootWidget;
|
||||
QWidget *shutdownWidget;
|
||||
QTime lasttime;
|
||||
QLabel *rebootFace;
|
||||
QLabel *shutdownFace;
|
||||
QLabel *hibernateFace;
|
||||
QLabel *suspendFace;
|
||||
QPushButton *rebootFace;
|
||||
QPushButton *shutdownFace;
|
||||
QPushButton *hibernateFace;
|
||||
QPushButton *suspendFace;
|
||||
int loginedNum = 0;
|
||||
bool m_isStartupMode = false;
|
||||
|
||||
|
|
|
@ -198,11 +198,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 +226,10 @@ int main(int argc, char *argv[])
|
|||
}
|
||||
|
||||
#ifndef USE_INTEL
|
||||
if (QString(qgetenv("XDG_SESSION_TYPE")) == "wayland")
|
||||
window->showFullScreen();
|
||||
else
|
||||
window->show();
|
||||
window->activateWindow();
|
||||
#endif
|
||||
if(parser.isSet(lockOption))
|
||||
|
|