!27 ukui4.10.0

Merge pull request !27 from xie_klve/upstream
This commit is contained in:
xie_klve 2023-11-15 12:11:40 +00:00 committed by Gitee
commit 8fd9f4e9d7
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
34 changed files with 1565 additions and 145 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 535 KiB

After

Width:  |  Height:  |  Size: 383 KiB

View File

@ -19,7 +19,7 @@ Bridge::Bridge()
void Bridge::getMdPathOther(QString attrStr)
{
qDebug() << "------------getMdPathOther";
qDebug() << Q_FUNC_INFO;
// 将appName、path、title传递过过去
QStringList attrList = attrStr.split(",");
QString appName,appPath,appTitle;
@ -41,7 +41,7 @@ void Bridge::getThemeColor(QString color){
void Bridge::getMdContent(QString attrStr)
{
qDebug() << "------------getMdContent"<<endl;
qDebug() << Q_FUNC_INFO;
// 将app、path、content传递过过去
QString appPath = this->js_getIndexMdFilePathOther(attrStr);
QString appContent = this->js_getIndexMdFileContent(appPath);
@ -53,7 +53,7 @@ void Bridge::getMdContent(QString attrStr)
QStringList Bridge::js_getIntoFilename()
{
qDebug() << "js_getIntoFilename";
qDebug() << Q_FUNC_INFO;
QStringList test=this->getDirAndPng();
qDebug() << test;
return test;
@ -61,7 +61,7 @@ QStringList Bridge::js_getIntoFilename()
QStringList Bridge::getDirAndPng()
{
qDebug() << "getDirAndPng";
qDebug() << Q_FUNC_INFO;
QStringList list;
QString PathForSystem;
QString NameForSystem=this->system_name();
@ -237,5 +237,5 @@ QString Bridge::converRGB2HexStr(QColor _rgb)
void Bridge::js_executeCommand(QString cmd)
{
qDebug() << Q_FUNC_INFO << cmd;
QProcess::startDetached(cmd);
QProcess::startDetached(cmd, QStringList());
}

View File

@ -41,6 +41,7 @@
#include <QGraphicsDropShadowEffect>
#include <QPixmap>
#include <QCompleter>
#include <QPainterPath>
//#include <QSvgRenderer>
//#include "guide-widget.h"

View File

@ -38,6 +38,8 @@
#define OS_RELEASE "/etc/os-release"
#define LSB_RELEASE "/etc/lsb-release"
#define QEVENT_KEYPRESS 6
#define LOCAL_FILE_PATH "/usr/share/kylin-user-guide/data/guide/"
#define LOCAL_URL_PATH "file://///usr/share/kylin-user-guide/web/"

View File

@ -40,6 +40,7 @@
#include "common-tool/comm_func.h"
#include "xatom-helper.h"
#include "kaboutdialog.h"
#include "kywebview.h"
using namespace kdk;
KAboutDialog *about_widget = nullptr;
@ -90,6 +91,12 @@ GuideWidget::GuideWidget(QWidget *parent) :QWidget(parent)
getDirAndPng();
}
GuideWidget::~GuideWidget()
{
delete m_pWebEngineView->page(); // 删除WebEnginePage对象
m_pWebEngineView->setPage(nullptr); // 确保不再使用已删除的WebEnginePage对象
}
void GuideWidget::paintEvent(QPaintEvent *event)
{
// QPainter painter(this);
@ -151,14 +158,9 @@ void GuideWidget::resizeEvent(QResizeEvent *e)
}
}
GuideWidget::~GuideWidget()
{
}
void GuideWidget::initUI()
{
m_pWebEngineView = new QWebEngineView(this);
m_pWebEngineView = new KyWebView(this);
m_pWebEngineView->installEventFilter(this);
// 注册通道
m_pWebChannel = new QWebChannel(this);
@ -166,6 +168,7 @@ void GuideWidget::initUI()
m_pWebChannel->registerObject("bridge", bridge);
m_pWebEngineView->page()->setWebChannel(m_pWebChannel);
// m_pWebEngineView->setContextMenuPolicy(Qt::NoContextMenu);
// 开发工具的调用
// QWebEngineView * pv = new QWebEngineView();
// m_pWebEngineView->page()->setDevToolsPage(pv->page());
@ -279,7 +282,7 @@ void GuideWidget::initUI()
menuOffButton->setProperty("isWindowButton", 0x1);
menuOffButton->setProperty("useIconHighlightEffect", 0x2);
menuOffButton->setFlat(true);
menuOffButton->setToolTip(tr("Menu"));
menuOffButton->setToolTip(tr("Option"));
menuOffButton->setCursor(QCursor(Qt::ArrowCursor));
//判断日间夜间按钮样式
// menuOffButton->setStyleSheet("background-color:#F5F5F5;");
@ -407,7 +410,7 @@ void GuideWidget::initUI()
about_widget = new KAboutDialog(this);
about_widget->setAppIcon(QIcon::fromTheme("kylin-user-guide"));
about_widget->setAppName(tr("Manual"));
about_widget->setAppVersion(qApp->applicationVersion());
about_widget->setAppVersion(tr("Version")+qApp->applicationVersion());
}
void GuideWidget::slot_webGoto(QUrl url)
@ -501,7 +504,7 @@ void GuideWidget::jump_app(QString appName)
void GuideWidget::js_executeCommand(QString cmd)
{
qDebug() << Q_FUNC_INFO << cmd;
QProcess::startDetached(cmd);
QProcess::startDetached(cmd,QStringList());
}
void GuideWidget::slot_javaScriptFromWinObject()
@ -837,14 +840,10 @@ QString GuideWidget::js_getFileSystemInformation(QString filePath)
bool GuideWidget::eventFilter(QObject *watched, QEvent *event)
{
// bool m_isSearching;
// m_isSearching = false;
// 添加搜索栏事件
if (watched == search_Line) {
// FocusOut
if (event->type() == 9) {
// fprintf(stderr,"8888888888888888888888888888888888888888\n");
if (search_Line->text().isEmpty()) {
QLocale localeNew;
if(localeNew.language()==QLocale::Chinese)
@ -855,59 +854,29 @@ bool GuideWidget::eventFilter(QObject *watched, QEvent *event)
m_queryIcon->setMargin(46);
search_Line->setTextMargins(66,0,0,0);
}
// m_animation->stop();
// m_animation->setStartValue(QRect((m_searchWidget->width()-(m_queryIcon->width()+m_queryText->width()+10))/2,0,
// m_queryIcon->width()+m_queryText->width()+30,(m_searchWidget->height()+32)/2));
// m_animation->setEndValue(QRect(8, 0, m_queryIcon->width() + 5,(m_searchWidget->height()+32)/2));
// m_animation->setEasingCurve(QEasingCurve::OutQuad);
// m_animation->start();
// m_searchWidget->setTextMargins(30, 1, 0, 1);
}else{
}
// m_isSearching = true;
}else if (event->type() == QEvent::MouseButtonPress) {
// fprintf(stderr,"99999999999999999999999999999999999\n");
search_Line->setTextMargins(26,0,0,0);
m_queryIcon->setMargin(0);
// search_Line->clear();
// if (search_Line->text().isEmpty()) {
// search_Line->addAction(QIcon::fromTheme("search-symbolic"),QLineEdit::LeadingPosition);
// }
// m_isSearching=false;
}
}
if (watched == m_pWebEngineView) {
if (event->type() == QEvent::ShortcutOverride) {
// 快捷键ctrl+E 搜索
QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event);
if (keyEvent->key() == Qt::Key_E && keyEvent->modifiers() == Qt::ControlModifier) {
search_Line->setFocus();
}
// 快捷键ctrl+A 全选
if (keyEvent->key() == Qt::Key_A && keyEvent->modifiers() == Qt::ControlModifier) {
m_pWebEngineView->page()->triggerAction(QWebEnginePage::SelectAll);
}
}
// if (watched == m_pWebView && event->type() == QEvent::Resize) {
// QPainterPath path;
// path.addRoundedRect(0, 0, this->width()-3, this->height()-47, 5, 5);
// m_pWebView->setMask(path.toFillPolygon().toPolygon());
// }
// if (watched == m_pWebView && event->type() == QEvent::Leave) {
// return true;
// }
// if (watched == m_pWebView && event->type() == QEvent::Leave) {
// return true;
// }
// if (event->type() == QEvent::MouseButtonPress) {
// QMouseEvent *mEvent = static_cast<QMouseEvent*>(event);
// QWidget *searchParentWid = static_cast<QWidget*>(search_Line);
// QPoint searchPoint = searchParentWid->mapFromGlobal(mEvent->globalPos());
//// //qDebug()<<m_searchWidget->geometry()<< mWindowGlobalPoint << mouseGlobalPoint << tPoint;
// if (!search_Line->geometry().contains(searchPoint)) {
//// if (search_Line->text().isEmpty()) {
// search_Line->setFocus();
// search_Line->clearFocus();
//// }
// }
// }
}
return false;
}

View File

@ -42,6 +42,7 @@
#include <QtDBus/QDBusInterface>
#include <QtDBus/QDBusReply>
#include "bridge.h"
#include <QPainterPath>
//#include "aboutwidget.h"
//#include <QtWebChannel/QtWebChannel>

38
src/kywebview.cpp Normal file
View File

@ -0,0 +1,38 @@
#include "kywebview.h"
#include <QDragEnterEvent>
#include <QDropEvent>
#include <QAction>
#include <QMenu>
KyWebView::KyWebView(QWidget *parent)
: QWebEngineView(parent)
{
}
void KyWebView::dragEnterEvent(QDragEnterEvent *event)
{
event->ignore();
}
void KyWebView::dropEvent(QDropEvent *event)
{
event->ignore();
}
void KyWebView::contextMenuEvent(QContextMenuEvent *event)
{
QMenu *menu = new QMenu(this);
QAction *copyAction = new QAction(QIcon::fromTheme("edit-copy-symbolic"), tr("Copy"), this);
copyAction->setShortcut(QKeySequence::Copy);
connect(copyAction, &QAction::triggered, [this]() { this->page()->triggerAction(QWebEnginePage::Copy); });
menu->addAction(copyAction);
QAction *copyAllAction = new QAction(tr("Select All"), this);
copyAllAction->setShortcut(QKeySequence::SelectAll);
connect(copyAllAction, &QAction::triggered, [this]() { this->page()->triggerAction(QWebEnginePage::SelectAll); this->page()->triggerAction(QWebEnginePage::Copy); });
menu->addAction(copyAllAction);
menu->exec(event->globalPos());
delete menu;
}

19
src/kywebview.h Normal file
View File

@ -0,0 +1,19 @@
#ifndef KYWEBVIEW_H
#define KYWEBVIEW_H
#include <QWebEngineView>
#include <QWebView>
class KyWebView : public QWebEngineView
{
Q_OBJECT
public:
explicit KyWebView(QWidget* parent = nullptr);
protected:
void dragEnterEvent(QDragEnterEvent *event) override;
void dropEvent(QDropEvent *event) override;
void contextMenuEvent(QContextMenuEvent *event) override;
};
#endif // KYWEBVIEW_H

View File

@ -93,6 +93,7 @@ static void crashHandler(int sig)
}
QString getAppVersion(){
qDebug()<< Q_FUNC_INFO;
QProcess process;
QString cmd = "dpkg-parsechangelog";
QStringList arg;
@ -106,7 +107,9 @@ QString getAppVersion(){
dpkg -l
*/
if( "" == result){
process.start("dpkg -l | grep kylin-user-guide");
QStringList options;
options << "-l" << "|" << "grep" << "kylin-user-guide";
process.start("dpkg", options);
process.waitForFinished();
QString retStr = QString::fromLocal8Bit(process.readAllStandardOutput());
QStringList retList = retStr.trimmed().split("\n");
@ -247,7 +250,9 @@ int main(int argc, char *argv[])
// QString locale = "bo_CN";
QTranslator translator;
QTranslator trans;
if(qm_name == "zh_CN" || qm_name == "zh_HK" || qm_name == "es" || qm_name == "fr" || qm_name == "de" || qm_name == "ru" || qm_name == "bo_CN") {//中文 西班牙语 法语 德语 俄语
if(qm_name == "zh_CN" || qm_name == "zh_HK" || qm_name == "es" || qm_name == "fr" || qm_name == "de" || qm_name == "ru" || qm_name == "bo_CN"
|| qm_name == "zh_HK" || qm_name == "mn" || qm_name == "kk" || qm_name == "ky" || qm_name == "ug"
) {//中文 西班牙语 法语 德语 俄语 蒙古语 哈萨克 维吾尔 柯尔克孜
// if(!translator.load("kylin-user-guide_" + qm_name + ".qm",
// ":/translation/"))
if(!translator.load("kylin-user-guide_" + qm_name + ".qm",

View File

@ -45,42 +45,22 @@ MainController* MainController::self()
MainController::MainController()
{
configFilePath = QDir::homePath()+"/.config/kylin-user-guide";
qDebug() << Q_FUNC_INFO << QString::fromLocal8Bit(qgetenv("XDG_RUNTIME_DIR"));
// 优化root权限下调用手册
// if((""!=QString::fromLocal8Bit(qgetenv("XDG_RUNTIME_DIR")))||(""!=QString::fromLocal8Bit(qgetenv("DBUS_SESSION_BUS_ADDRESS"))))
// {
ipcDbus = new IpcDbus;
qDebug() << "------------------" << configFilePath <<"\n";
ipcDbus->init();
guideWidget = new GuideWidget;
kdk::UkuiStyleHelper::self()->removeHeader(guideWidget);
ipcDbus = new IpcDbus;
ipcDbus->init();
guideWidget = new GuideWidget;
kdk::UkuiStyleHelper::self()->removeHeader(guideWidget);
startShowApp();
}
void MainController::startShowApp()
{
// if(isFirst){
// showGuide(gStartShowApp);
// QString cmd = "echo 0 > /tmp/first";
// QProcess process(this);
// process.start(cmd);
// isFirst = false;
// }
qDebug() << Q_FUNC_INFO;
uid_t user;
user = geteuid();
if(0 != user){
QFile file(configFilePath);
//判断是否首次打开
if (!file.exists()){
showGuide(gStartShowApp);
if(!file.open(QIODevice::WriteOnly)){
qDebug()<<"首次打开创建文件";
file.close();
}
}
if(0 == user){
showGuide(gStartShowApp);
}
// qDebug() << "------------------" << isFirst <<"\n";
QTimer::singleShot(800, this, SLOT(showGuide()));//消息循环起来后打通js和qt通信在执行跳转
}
@ -88,8 +68,7 @@ void MainController::showGuide(QString appName)
{
if(appName!="")
guideWidget->jump_app(appName);
// qDebug() << Q_FUNC_INFO << guideWidget->isMinimized() << guideWidget->size();
QList<QScreen *> list = QGuiApplication::screens();
if(guideWidget->isMinimized()){
if(guideWidget->size() == QSize(list.at(0)->availableGeometry().width(),list.at(0)->availableGeometry().height()))
@ -100,13 +79,6 @@ void MainController::showGuide(QString appName)
flags = guideWidget->windowFlags();
guideWidget->setWindowFlags(flags|Qt::WindowStaysOnTopHint);
// guideWidget->setStyleSheet("background-color:rgb(234,234,234)");;
// MotifWmHints hints;
// hints.flags = MWM_HINTS_FUNCTIONS|MWM_HINTS_DECORATIONS;
// hints.functions = MWM_FUNC_ALL;
// hints.decorations = MWM_DECOR_BORDER;
// XAtomHelper::getInstance()->setWindowMotifHint(guideWidget->winId(), hints);
QTimer::singleShot(10, this, SLOT(setwindowFlags()));
guideWidget->show();
}
@ -126,12 +98,6 @@ void MainController::showGuide()
void MainController::setwindowFlags()
{
guideWidget->setWindowFlags(flags);
// MotifWmHints hints;
// hints.flags = MWM_HINTS_FUNCTIONS|MWM_HINTS_DECORATIONS;
// hints.functions = MWM_FUNC_ALL;
// hints.decorations = MWM_DECOR_BORDER;
// XAtomHelper::getInstance()->setWindowMotifHint(guideWidget->winId(), hints);
// XAtomHelper::getInstance()->setWindowBorderRadius(guideWidget->winId(), 6, 6, 6, 6);
guideWidget->show();
}

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="de">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation>Schließen</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation>VERSION</translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>Android-Anwendungen können auch auf Computern verwendet werden</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation>Unbegrenztes Arbeiten und Unterhaltung</translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation>Neuer Software-Store</translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>Übersichtliche Klassifizierung und komfortablere Synchronisation</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>5 Apps neu gestalten</translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>Es ist bequemer, zu chatten, Bilder anzuschauen, Dokumente zu finden und das Wetter zu sehen. Sie können sich auch jederzeit über den Status Ihres Computers informieren</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>Neuer Stil und mehrere Modi
Das visuelle Erlebnis ist sehr unterschiedlich</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>Themenwechsel
Mehrere Themes, freie Wahl</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation>Maximieren</translation>
</message>
<message>
<source>Reduction</source>
<translation>Reduktion</translation>
</message>
<message>
<source>Manual</source>
<translation>Manuell</translation>
</message>
<message>
<source>Go back</source>
<translation>Zurück</translation>
</message>
<message>
<source>Minimize</source>
<translation>Minimieren</translation>
</message>
<message>
<source>Close</source>
<translation>Schließen</translation>
</message>
<message>
<source>Option</source>
<translation>Option</translation>
</message>
<message>
<source>About</source>
<translation>Über</translation>
</message>
<message>
<source>Quit</source>
<translation>Verlassen</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation>Weitere neue Funktionen sind da</translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation>Ok, ich hab&apos;s verstanden.</translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>Kirin-ID registrieren
Synchronisieren Sie wichtige Inhalte</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation>Synchronisieren Sie Ihre Konfigurations- und App-Download-Datensätze</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>kylin-neue-funktion-einführung</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation>Einführung in neue Funktionen</translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>Bedienfeld, übersichtlichere Klassifizierung
Mitteilungszentrale, keine fehlenden Nachrichten mehr</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>Hallo
Für Sie entwickelt, neuer Desktop</translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="es">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation>Cerrar</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Servicio y soporte: &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Servicio y soporte: &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation>VERSIÓN</translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>Las aplicaciones de Android también se pueden usar en computadoras</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation>Trabajo y entretenimiento ilimitados</translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation>Nueva tienda de software</translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>Clasificación clara y sincronización más cómoda</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>Rediseño de 5 aplicaciones</translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>Es más conveniente chatear, mirar fotos, encontrar documentos y ver el clima. También puede conocer el estado de su computadora en cualquier momento</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>Nuevo estilo y múltiples modos
La experiencia visual es muy diferente</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>Cambio de tema
Múltiples temas, libre elección</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation>Maximizar</translation>
</message>
<message>
<source>Reduction</source>
<translation>Reducción</translation>
</message>
<message>
<source>Manual</source>
<translation>Manual</translation>
</message>
<message>
<source>Go back</source>
<translation>Volver</translation>
</message>
<message>
<source>Minimize</source>
<translation>Minimizar</translation>
</message>
<message>
<source>Close</source>
<translation>Cerrar</translation>
</message>
<message>
<source>Option</source>
<translation>Opción</translation>
</message>
<message>
<source>About</source>
<translation>Acerca de</translation>
</message>
<message>
<source>Quit</source>
<translation>Renunciar</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation>Más funciones nuevas están aquí</translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation>Vale, lo tengo.</translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>Registrar el ID de Kirin
Sincronizar contenido importante</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation>Sincronizar la configuración y los registros de descarga de aplicaciones</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>kylin-new-function-introduction</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation>Introducción a las nuevas funciones</translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>Panel de control, clasificación más clara
Centro de notificaciones, no más mensajes perdidos</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>Hola
Diseñado para ti, nuevo escritorio</translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="fr">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation>Fermer</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Service &amp; Support : &lt;a style=&apos;color&#xa0;: white&#xa0;;&apos; href=&apos;mailto&#xa0;://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Service &amp; Support : &lt;a style=&apos;color&#xa0;: black&#xa0;;&apos; href=&apos;mailto&#xa0;://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation>VERSION</translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>Les applications Android peuvent également être utilisées sur les ordinateurs</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation>Travail et divertissement illimités</translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation>Nouvelle boutique de logiciels</translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>Une classification claire et une synchronisation plus pratique</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>Refonte de 5 applications</translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>Il est plus pratique de discuter, de regarder des photos, de trouver des documents et de voir la météo. Vous pouvez également connaître létat de votre ordinateur à tout moment</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>Nouveau style et modes multiples
Lexpérience visuelle est très différente</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>Changement de sujet
Thèmes multiples, libre choix</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation>Maximiser</translation>
</message>
<message>
<source>Reduction</source>
<translation>Réduction</translation>
</message>
<message>
<source>Manual</source>
<translation>Manuelle</translation>
</message>
<message>
<source>Go back</source>
<translation>Retour</translation>
</message>
<message>
<source>Minimize</source>
<translation>Minimiser</translation>
</message>
<message>
<source>Close</source>
<translation>Fermer</translation>
</message>
<message>
<source>Option</source>
<translation>Option</translation>
</message>
<message>
<source>About</source>
<translation>Environ</translation>
</message>
<message>
<source>Quit</source>
<translation>Démissionner</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation>Dautres nouvelles fonctions sont disponibles</translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation>Ok, jai compris.</translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>Enregistrer Kirin ID
Synchroniser le contenu important</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation>Synchronisez vos enregistrements de configuration et de téléchargement dapplications</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>Présentation de kylin-new-function</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation>Introduction à de nouvelles fonctions</translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>Panneau de contrôle, classification plus claire
Centre de notifications, plus de messages manquants</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>Bonjour
Conçu pour vous, un nouvel ordinateur de bureau</translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="kk">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation>Жабу</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Қызмет көрсету және қолдау: &lt;а стиль=&apos;түс: ақ;&apos; href=&apos;mailto:/support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Қызмет көрсету және қолдау: &lt;а стиль=&apos;түс: қара;&apos; href=&apos;mailto:/support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation>НҰСҚА</translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>Android қосымшаларын компьютерлерде де пайдалануға болады</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation>Шексіз жұмыс және ойын-сауық</translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation>Жаңа бағдарламалық жасақтама дүкені</translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>Анық жіктеу және неғұрлым ыңғайлы синхрондау</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>5 бағдарламаны қайта құрастыру</translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>Сөйлесіп, суреттерді қарап, құжаттарды тауып, ауа райын көру ыңғайлырақ. Сондай-ақ, компьютер күйін кез келген уақытта білуге болады</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>Жаңа стиль және бірнеше режим
Көру тәжірибесі өте өзгеше</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>Тақырып ауыстырып қосқышы
Бірнеше тақырып, еркін таңдау</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation>Барынша көбейту</translation>
</message>
<message>
<source>Reduction</source>
<translation>Қысқарту</translation>
</message>
<message>
<source>Manual</source>
<translation>Қолмен</translation>
</message>
<message>
<source>Go back</source>
<translation>Қайтып бар</translation>
</message>
<message>
<source>Minimize</source>
<translation>Кішірейту</translation>
</message>
<message>
<source>Close</source>
<translation>Жабу</translation>
</message>
<message>
<source>Option</source>
<translation>Опция</translation>
</message>
<message>
<source>About</source>
<translation>Шамамен</translation>
</message>
<message>
<source>Quit</source>
<translation>Шығу</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation>Қосымша жаңа функциялар осында</translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation>Жарайды, мен оны алдым.</translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>Кирин идентифика- тір- кеуін тіркеу
Маңызды мазмұнды синхрондау</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation>Конфигурация мен бағдарламаны жүктеу жазбаларын синхрондау</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>Кайлин-нов- функ- цион- дық интродукция</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation>Жаңа функцияларға кіріспе</translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>Басқару пульті, нақтырақ жіктеу
Хабарлама орталығы, хабарлар жоқ</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>Сәлеметсіз бе
Сізге арналған, жаңа жұмыс үстелі</translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ky">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation>Жабуу</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Кызмат &amp; колдоо : &lt;a стили =&apos;түс: white;&apos; href=&apos;mailto:///support@kylinos.cn&apos;s &gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>Кызмат &amp; колдоо : &lt;a стили =&apos;түс: black&amp;&apos;&apos;s href=mailto:///support@kylinos.cn&apos;s &gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation>ВЕРСИЯСЫ</translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>Android тиркемелерин компьютерлерде да колдонууга болот</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation>Чексиз иш жана көңүл ачуу</translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation>Жаңы программалык дүкөн</translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>Так классификациялоо жана ыңгайлуураак синхрондоо</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>Кайра долбоорлоо 5 тиркемелери</translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>Маектешүүгө, сүрөттөрдү кароого, документтерди табууга жана аба ырайын көрүүгө ыңгайлуураак. Ошондой эле каалаган убакта компьютер абалын биле аласыз</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>Жаңы стили жана бир нече режимдер
Көрүү тажрыйбасы таптакыр башкача</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>Тема которуу
Бир нече темалар, эркин тандоо</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation>Максималдуу</translation>
</message>
<message>
<source>Reduction</source>
<translation>Кыскартуу</translation>
</message>
<message>
<source>Manual</source>
<translation>Колдонмо</translation>
</message>
<message>
<source>Go back</source>
<translation>Артка кайрыл</translation>
</message>
<message>
<source>Minimize</source>
<translation>Минималдуу</translation>
</message>
<message>
<source>Close</source>
<translation>Жабуу</translation>
</message>
<message>
<source>Option</source>
<translation>Опция</translation>
</message>
<message>
<source>About</source>
<translation>Жөнүндө</translation>
</message>
<message>
<source>Quit</source>
<translation>Чыгуу</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation>Дагы жаңы функциялар бул жерде</translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation>Жакшы, мен аны алдым.</translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>Кирин идентификатун каттоо
Маанилүү мазмунду синхрондоо</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation>Конфигурацияңызды жана иштемени жүктөө жазууларыңызды синхрондоо</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>килин-жаңы-функция-киргизүү</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation>Жаңы функциялар менен тааныштыруу</translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>Контролдук панель, так классификациялоо
Эскертүү борбору, мындан ары жок билдирүүлөр</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>Салам
Сиз үчүн иштелип чыккан, жаңы иш столу</translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,177 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="mn">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation> </translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation> p astyle= (color: white ; shref = mailto : / / support@kylinos . cn &apos; support@kylinos . cn/ a / p </translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation> p astyle=color: black ; shref = mailto : / / support@kylinos . cn &apos; support@kylinos . cn/ a / p </translation>
</message>
<message>
<source>VERSION</source>
<translation> </translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>
</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation> </translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation> </translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation> </translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>5 </translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>
</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>
</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>
</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation> </translation>
</message>
<message>
<source>Reduction</source>
<translation></translation>
</message>
<message>
<source>Manual</source>
<translation> </translation>
</message>
<message>
<source>Go back</source>
<translation></translation>
</message>
<message>
<source>Minimize</source>
<translation> </translation>
</message>
<message>
<source>Close</source>
<translation> </translation>
</message>
<message>
<source>Option</source>
<translation></translation>
</message>
<message>
<source>About</source>
<translation></translation>
</message>
<message>
<source>Quit</source>
<translation></translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation> </translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation> </translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation> ID
</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation> </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation> </translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation> </translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>
</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation> ?
</translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ug">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation>ياپ</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>مۇلازىمەت &gt; قوللاش : &lt;a style=&apos;color: white;&apos;href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>مۇلازىمەت &gt; قوللاش : &lt;a style=&apos;color: black;&apos;href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation>نەشرى</translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>ئاندىرويىد ئەپلىرىنى كومپىيۇتېردىمۇ ئىشلەتكىلى بولىدۇ</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation>چەكسىز خىزمەت ۋە كۆڭۈل ئېچىش</translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation>يېڭى يۇمشاق دېتال دۇكىنى</translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>تۈرگە ئايرىپ ئېنىقلاش ۋە تېخىمۇ قولايلاشتۇرۇش</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation>قايتا 5 ئەپ نۇسخسى</translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>پاراڭلىشىش، رەسىمگە قاراش، ھۆججەت تېپىش ۋە ھاۋارايىنى كۆرۈش تېخىمۇ قولايلىق. كومپىيۇتېر ھالىتىڭىزنى خالىغان ۋاقىتتا بىلەلەيسىز</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>يېڭى ئۇسلۇب ۋە كۆپ خىل شەكىل
كۆرۈش تەجىربىسى بەك ئوخشىمايدۇ</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>Topic Switch
كۆپ خىل ئۇسلۇب، ئەركىن تاللاش</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation>ئەڭ چوڭ چەككە</translation>
</message>
<message>
<source>Reduction</source>
<translation>ئازايتىش</translation>
</message>
<message>
<source>Manual</source>
<translation>قوللانما</translation>
</message>
<message>
<source>Go back</source>
<translation>قايت</translation>
</message>
<message>
<source>Minimize</source>
<translation>كىچىكلىتىش</translation>
</message>
<message>
<source>Close</source>
<translation>ياپ</translation>
</message>
<message>
<source>Option</source>
<translation>تاللانما</translation>
</message>
<message>
<source>About</source>
<translation>ھەققىدە</translation>
</message>
<message>
<source>Quit</source>
<translation>چېكىنىش</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation>تېخىمۇ كۆپ يېڭى ئىقتىدارلار بۇ يەردە</translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation>ماقۇل، مەن تاپتىم.</translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>Kirin ID نى تىزىملىتىڭ
مۇھىم مەزمۇنلارنى ماس قەدەمدە ماس قەدەمدە</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation>سەپلىمىسىڭىز ۋە ئەپ چۈشۈرۈش خاتىرىلىرىڭىزنى ماس قەدەمدە سىزىش پروگراممىسى</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>kylin-يېڭى ئىقتىدار-تونۇشتۇرۇش</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation>يېڭى ئىقتىدارلارنى تونۇشتۇرۇش</translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>كونترول تاختىسى، تېخىمۇ ئېنىق تۈرگە ئايرىش
ئۇقتۇرۇش مەركىزى، يوقاپ كەتكەن ئۇچۇر يوق</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>ياخشىمۇ سەن
سىز ئۈچۈن لايىھەلەنگەن، يېڭى ئۈستەل يۈزى</translation>
</message>
</context>
</TS>

View File

@ -4,24 +4,24 @@
<context>
<name>AboutWidget</name>
<message>
<location filename="../aboutwidget.cpp" line="44"/>
<location filename="../aboutwidget.cpp" line="45"/>
<source>Close</source>
<translation></translation>
</message>
<message>
<location filename="../aboutwidget.cpp" line="84"/>
<location filename="../aboutwidget.cpp" line="143"/>
<location filename="../aboutwidget.cpp" line="86"/>
<location filename="../aboutwidget.cpp" line="145"/>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>&lt;p&gt; : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
<message>
<location filename="../aboutwidget.cpp" line="88"/>
<location filename="../aboutwidget.cpp" line="147"/>
<location filename="../aboutwidget.cpp" line="90"/>
<location filename="../aboutwidget.cpp" line="149"/>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation>&lt;p&gt; : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
<message>
<location filename="../aboutwidget.cpp" line="127"/>
<location filename="../aboutwidget.cpp" line="129"/>
<source>VERSION</source>
<translation></translation>
</message>
@ -29,62 +29,83 @@
<context>
<name>GuideWidget</name>
<message>
<location filename="../guide-widget.cpp" line="141"/>
<location filename="../guide-widget.cpp" line="236"/>
<location filename="../guide-widget.cpp" line="470"/>
<location filename="../guide-widget.cpp" line="928"/>
<location filename="../guide-widget.cpp" line="150"/>
<location filename="../guide-widget.cpp" line="269"/>
<location filename="../guide-widget.cpp" line="647"/>
<location filename="../guide-widget.cpp" line="1208"/>
<source>Maximize</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="147"/>
<location filename="../guide-widget.cpp" line="470"/>
<location filename="../guide-widget.cpp" line="928"/>
<location filename="../guide-widget.cpp" line="285"/>
<source>Option</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="413"/>
<source>Version</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="156"/>
<location filename="../guide-widget.cpp" line="647"/>
<location filename="../guide-widget.cpp" line="1208"/>
<source>Reduction</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="194"/>
<location filename="../guide-widget.cpp" line="343"/>
<location filename="../guide-widget.cpp" line="239"/>
<location filename="../guide-widget.cpp" line="412"/>
<source>Manual</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="210"/>
<location filename="../guide-widget.cpp" line="251"/>
<source>Go back</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="228"/>
<location filename="../guide-widget.cpp" line="261"/>
<source>Minimize</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="244"/>
<location filename="../guide-widget.cpp" line="277"/>
<source>Close</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="252"/>
<source>Menu</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="258"/>
<location filename="../guide-widget.cpp" line="357"/>
<location filename="../guide-widget.cpp" line="292"/>
<location filename="../guide-widget.cpp" line="425"/>
<source>About</source>
<translation></translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="259"/>
<location filename="../guide-widget.cpp" line="360"/>
<location filename="../guide-widget.cpp" line="293"/>
<location filename="../guide-widget.cpp" line="428"/>
<source>Quit</source>
<translation>退</translation>
</message>
<message>
<location filename="../guide-widget.cpp" line="345"/>
<source>Manual one-stop help for the use of this machine software</source>
<translation>使</translation>
<translation type="vanished">使</translation>
</message>
</context>
<context>
<name>KyWebView</name>
<message>
<location filename="../kywebview.cpp" line="26"/>
<source>Copy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../kywebview.cpp" line="31"/>
<source>Select All</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

Binary file not shown.

View File

@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="zh_Hant">
<context>
<name>AboutWidget</name>
<message>
<source>Close</source>
<translation></translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: white;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation> &lt;a style=&apos;color white;&apos; href=&apos;mailto//support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: black;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation> &lt;a style=&apos;color black;&apos; href=&apos;mailto//support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</translation>
</message>
<message>
<source>VERSION</source>
<translation></translation>
</message>
</context>
<context>
<name>AndroidTextWidget</name>
<message>
<source>Android applications can also be used on computers</source>
<translation>使</translation>
</message>
<message>
<source>Unlimited work and entertainment</source>
<translation></translation>
</message>
</context>
<context>
<name>AppStoreTextWidget</name>
<message>
<source>New Software Store</source>
<translation></translation>
</message>
<message>
<source>Clear classification and more convenient synchronization</source>
<translation>便</translation>
</message>
</context>
<context>
<name>ApplicationTextWidget</name>
<message>
<source>Redesign 5 apps</source>
<translation> 5 </translation>
</message>
<message>
<source>It is more convenient to chat, look at pictures, find documents and see the weather. You can also know your computer status at any time</source>
<translation>便</translation>
</message>
</context>
<context>
<name>ClickSwitchTextWidget</name>
<message>
<source>New style and multiple modes
The visual experience is very different</source>
<translation>
</translation>
</message>
<message>
<source>Topic Switch
Multiple themes, free choice</source>
<translation>
</translation>
</message>
</context>
<context>
<name>GuideWidget</name>
<message>
<source>Maximize</source>
<translation></translation>
</message>
<message>
<source>Reduction</source>
<translation></translation>
</message>
<message>
<source>Manual</source>
<translation></translation>
</message>
<message>
<source>Go back</source>
<translation></translation>
</message>
<message>
<source>Minimize</source>
<translation></translation>
</message>
<message>
<source>Close</source>
<translation></translation>
</message>
<message>
<source>Option</source>
<translation></translation>
</message>
<message>
<source>About</source>
<translation></translation>
</message>
<message>
<source>Quit</source>
<translation>退</translation>
</message>
<message>
<source>Manual one-stop help for the use of this machine software</source>
<translation type="vanished">使</translation>
</message>
<message>
<source>Service &amp; Support : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;</source>
<translation type="obsolete">&lt;p&gt; : &lt;a style=&apos;color: #464646;&apos; href=&apos;mailto://support@kylinos.cn&apos;&gt;support@kylinos.cn&lt;/a&gt;&lt;/p&gt;</translation>
</message>
</context>
<context>
<name>HandBookTextWidget</name>
<message>
<source>More new functions are here</source>
<translation></translation>
</message>
<message>
<source>Ok, I got it.</source>
<translation></translation>
</message>
</context>
<context>
<name>KylinIdTextWidget</name>
<message>
<source>Register Kirin ID
Synchronize important content</source>
<translation>
</translation>
</message>
<message>
<source>Sync your configuration and app download records</source>
<translation></translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>kylin-new-function-introduction</source>
<translation>--</translation>
</message>
</context>
<context>
<name>TitleWidget</name>
<message>
<source></source>
<translation></translation>
</message>
<message>
<source>Introduction to new functions</source>
<translation></translation>
</message>
</context>
<context>
<name>WelcomeTextWidget</name>
<message>
<source>Control panel, more clear classification
Notification center, no more missing messages</source>
<translation>
</translation>
</message>
<message>
<source>Hello
Designed for you, new desktop</source>
<translation>
</translation>
</message>
</context>
</TS>

View File

@ -2,9 +2,9 @@
background:#262626;
margin:0;padding:0;
/* 禁用图片选中 */
-moz-user-select:none;
-webkit-user-select:none;
user-select:none;
/* -moz-user-select:none;
-webkit-user-select:none; */
/* user-select:none; */
}
::-webkit-scrollbar

View File

@ -2,9 +2,9 @@
background:white;
margin:0;padding:0;
/* 禁用图片选中 */
-moz-user-select:none;
-webkit-user-select:none;
user-select:none;
/* -moz-user-select:none;
-webkit-user-select:none; */
/* user-select:none; */
}
::-webkit-scrollbar

View File

@ -1,8 +1,7 @@
<!DOCTYPE HTML>
<html>
<body ondragstart="return false" onselectstart="return false" οnselect="document.selection.empty()"
οncοntextmenu="return false" oncontextmenu="doNothing()">
<body ondragstart="return false">
<meta charset="utf-8">
<head>

View File

@ -1,8 +1,7 @@
<!DOCTYPE HTML>
<html>
<body ondragstart="return false" onselectstart="return false" οnselect="document.selection.empty()"
οncοntextmenu="return false" oncontextmenu="doNothing()">
<body ondragstart="return false">
<meta charset="utf-8">
<head>

View File

@ -1,8 +1,7 @@
<!DOCTYPE HTML>
<html>
<body ondragstart="return false" onselectstart="return false" οnselect="document.selection.empty()"
οncοntextmenu="return false" oncontextmenu="doNothing()">
<body ondragstart="return false">
<meta charset="utf-8">
<head>

View File

@ -1,8 +1,7 @@
<!DOCTYPE HTML>
<html>
<body ondragstart="return false" onselectstart="return false" οnselect="document.selection.empty()"
οncοntextmenu="return false" oncontextmenu="doNothing()">
<body ondragstart="return false">
<meta charset="utf-8">
<head>