!10 update to upstream 5.4.8-1
From: @xzyangha Reviewed-by: @weidongkl Signed-off-by: @weidongkl
This commit is contained in:
commit
2d30bb53cb
@ -1,7 +1,52 @@
|
|||||||
diff --color -Naur a/3rdparty/terminalwidget/lib/Filter.cpp b/3rdparty/terminalwidget/lib/Filter.cpp
|
From c96f6f7f9f125d56c8d97898d2734b05c321995c Mon Sep 17 00:00:00 2001
|
||||||
--- a/3rdparty/terminalwidget/lib/Filter.cpp 2022-02-08 16:21:57.110358654 +0800
|
From: loong_C <loong_c@yeah.net>
|
||||||
+++ b/3rdparty/terminalwidget/lib/Filter.cpp 2022-02-09 09:50:21.961364713 +0800
|
Date: Wed, 20 Jul 2022 14:29:49 +0800
|
||||||
@@ -139,7 +139,7 @@
|
Subject: [PATCH] fix-qtbase-QLatin1String-QLatin1Char
|
||||||
|
|
||||||
|
---
|
||||||
|
3rdparty/terminalwidget/lib/Emulation.cpp | 8 +-
|
||||||
|
3rdparty/terminalwidget/lib/Filter.cpp | 12 +-
|
||||||
|
3rdparty/terminalwidget/lib/HistorySearch.cpp | 4 +-
|
||||||
|
3rdparty/terminalwidget/lib/Pty.cpp | 104 +++++++++---------
|
||||||
|
3rdparty/terminalwidget/lib/Session.cpp | 12 +-
|
||||||
|
.../terminalwidget/lib/TerminalDisplay.cpp | 6 +-
|
||||||
|
3rdparty/terminalwidget/lib/qtermwidget.cpp | 2 +-
|
||||||
|
7 files changed, 74 insertions(+), 74 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/3rdparty/terminalwidget/lib/Emulation.cpp b/3rdparty/terminalwidget/lib/Emulation.cpp
|
||||||
|
index 82bacde..3505438 100644
|
||||||
|
--- a/3rdparty/terminalwidget/lib/Emulation.cpp
|
||||||
|
+++ b/3rdparty/terminalwidget/lib/Emulation.cpp
|
||||||
|
@@ -301,9 +301,9 @@ void Emulation::receiveData(const char *text, int length, bool isCommandExec)
|
||||||
|
* U+10FFFF
|
||||||
|
* https://unicodebook.readthedocs.io/unicode_encodings.html#surrogates
|
||||||
|
*/
|
||||||
|
- QString utf16Text = "";
|
||||||
|
+ QString utf16Text = QLatin1String("");
|
||||||
|
|
||||||
|
- if (QString(_codec->name()).toUpper().startsWith("GB") && !isCommandExec) {
|
||||||
|
+ if (QString(QLatin1String(_codec->name())).toUpper().startsWith(QLatin1String("GB")) && !isCommandExec) {
|
||||||
|
if (_decoder != nullptr) {
|
||||||
|
delete _decoder;
|
||||||
|
}
|
||||||
|
@@ -327,10 +327,10 @@ void Emulation::receiveData(const char *text, int length, bool isCommandExec)
|
||||||
|
|
||||||
|
//fix bug 67102 打开超长名称的文件夹,终端界面光标位置不在最后一位
|
||||||
|
//bash 提示符很长的情况下,会有较大概率以五个\b字符结尾,导致光标错位
|
||||||
|
- if (utf16Text.startsWith("\u001B]0;") && utf16Text.endsWith("\b\b\b\b\b")) {
|
||||||
|
+ if (utf16Text.startsWith(QLatin1String("\u001B]0;")) && utf16Text.endsWith(QLatin1String("\b\b\b\b\b"))) {
|
||||||
|
Session *currSession = SessionManager::instance()->idToSession(_sessionId);
|
||||||
|
if (currSession && (QStringLiteral("bash") == currSession->foregroundProcessName())) {
|
||||||
|
- utf16Text.replace("\b\b\b\b\b", "");
|
||||||
|
+ utf16Text.replace(QLatin1String("\b\b\b\b\b"), QLatin1String(""));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/3rdparty/terminalwidget/lib/Filter.cpp b/3rdparty/terminalwidget/lib/Filter.cpp
|
||||||
|
index 071d70d..67bce5d 100644
|
||||||
|
--- a/3rdparty/terminalwidget/lib/Filter.cpp
|
||||||
|
+++ b/3rdparty/terminalwidget/lib/Filter.cpp
|
||||||
|
@@ -139,7 +139,7 @@ TerminalImageFilterChain::~TerminalImageFilterChain()
|
||||||
bool isContainOtherPromptEnd(QString promptLine, QString currPromptEnd)
|
bool isContainOtherPromptEnd(QString promptLine, QString currPromptEnd)
|
||||||
{
|
{
|
||||||
//四不同类型的提示符结尾字符
|
//四不同类型的提示符结尾字符
|
||||||
@ -10,7 +55,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Filter.cpp b/3rdparty/terminalw
|
|||||||
promptEnds.remove(currPromptEnd);
|
promptEnds.remove(currPromptEnd);
|
||||||
|
|
||||||
for (int i=0; i<promptEnds.length(); i++)
|
for (int i=0; i<promptEnds.length(); i++)
|
||||||
@@ -178,7 +178,7 @@
|
@@ -178,7 +178,7 @@ void TerminalImageFilterChain::setImage(const Character *const image, int lines,
|
||||||
QTextStream lineStream(_buffer);
|
QTextStream lineStream(_buffer);
|
||||||
decoder.begin(&lineStream);
|
decoder.begin(&lineStream);
|
||||||
|
|
||||||
@ -19,7 +64,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Filter.cpp b/3rdparty/terminalw
|
|||||||
for (int i = 0 ; i < lines ; i++) {
|
for (int i = 0 ; i < lines ; i++) {
|
||||||
_linePositions->append(_buffer->length());
|
_linePositions->append(_buffer->length());
|
||||||
decoder.decodeLine(image + i * columns, columns, LINE_DEFAULT);
|
decoder.decodeLine(image + i * columns, columns, LINE_DEFAULT);
|
||||||
@@ -208,7 +208,7 @@
|
@@ -208,7 +208,7 @@ void TerminalImageFilterChain::setImage(const Character *const image, int lines,
|
||||||
if (lastLine.length() > 0) {
|
if (lastLine.length() > 0) {
|
||||||
//优化了截取并保存当前shell提示符的判断,暂时没有考虑PS1被修改的情况(若考虑的话实现起来太复杂)
|
//优化了截取并保存当前shell提示符的判断,暂时没有考虑PS1被修改的情况(若考虑的话实现起来太复杂)
|
||||||
//目前针对sh/bash/csh/tcsh/ksh/zsh这几种类型的shell做了处理
|
//目前针对sh/bash/csh/tcsh/ksh/zsh这几种类型的shell做了处理
|
||||||
@ -28,7 +73,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Filter.cpp b/3rdparty/terminalw
|
|||||||
for (int i=0; i<promptEnds.length(); i++) {
|
for (int i=0; i<promptEnds.length(); i++) {
|
||||||
QString promptEnd = promptEnds.at(i);
|
QString promptEnd = promptEnds.at(i);
|
||||||
|
|
||||||
@@ -223,15 +223,15 @@
|
@@ -223,15 +223,15 @@ void TerminalImageFilterChain::setImage(const Character *const image, int lines,
|
||||||
|
|
||||||
QString strShellPrompt = SessionManager::instance()->getCurrShellPrompt(_sessionId);
|
QString strShellPrompt = SessionManager::instance()->getCurrShellPrompt(_sessionId);
|
||||||
|
|
||||||
@ -47,10 +92,11 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Filter.cpp b/3rdparty/terminalw
|
|||||||
}
|
}
|
||||||
SessionManager::instance()->saveCurrShellCommand(_sessionId, strCommand);
|
SessionManager::instance()->saveCurrShellCommand(_sessionId, strCommand);
|
||||||
} else {
|
} else {
|
||||||
diff --color -Naur a/3rdparty/terminalwidget/lib/HistorySearch.cpp b/3rdparty/terminalwidget/lib/HistorySearch.cpp
|
diff --git a/3rdparty/terminalwidget/lib/HistorySearch.cpp b/3rdparty/terminalwidget/lib/HistorySearch.cpp
|
||||||
--- a/3rdparty/terminalwidget/lib/HistorySearch.cpp 2022-02-08 16:21:57.110358654 +0800
|
index d1b66be..9d36772 100644
|
||||||
+++ b/3rdparty/terminalwidget/lib/HistorySearch.cpp 2022-02-09 10:43:27.025143314 +0800
|
--- a/3rdparty/terminalwidget/lib/HistorySearch.cpp
|
||||||
@@ -144,11 +144,11 @@
|
+++ b/3rdparty/terminalwidget/lib/HistorySearch.cpp
|
||||||
|
@@ -278,11 +278,11 @@ bool HistorySearch::search(int startColumn, int startLine, int endColumn, int en
|
||||||
存在特殊情况:一个完整的物理行显示在终端被分成多个逻辑行
|
存在特殊情况:一个完整的物理行显示在终端被分成多个逻辑行
|
||||||
*/
|
*/
|
||||||
//中文字符正则表达式
|
//中文字符正则表达式
|
||||||
@ -64,10 +110,11 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/HistorySearch.cpp b/3rdparty/te
|
|||||||
//qDebug() << "loseStart" << loseStart << "loseEnd" << loseEnd ;
|
//qDebug() << "loseStart" << loseStart << "loseEnd" << loseEnd ;
|
||||||
|
|
||||||
// if (loseStart < 0 || loseStart > loseEnd) {
|
// if (loseStart < 0 || loseStart > loseEnd) {
|
||||||
diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidget/lib/Pty.cpp
|
diff --git a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidget/lib/Pty.cpp
|
||||||
--- a/3rdparty/terminalwidget/lib/Pty.cpp 2022-02-08 16:21:57.110358654 +0800
|
index 165b2f7..62c8493 100644
|
||||||
+++ b/3rdparty/terminalwidget/lib/Pty.cpp 2022-02-09 10:42:26.384994711 +0800
|
--- a/3rdparty/terminalwidget/lib/Pty.cpp
|
||||||
@@ -280,7 +280,7 @@
|
+++ b/3rdparty/terminalwidget/lib/Pty.cpp
|
||||||
|
@@ -282,7 +282,7 @@ Pty::~Pty()
|
||||||
|
|
||||||
bool Pty::isTerminalRemoved()
|
bool Pty::isTerminalRemoved()
|
||||||
{
|
{
|
||||||
@ -76,7 +123,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
if (terminalExecFile.exists()) {
|
if (terminalExecFile.exists()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -305,13 +305,13 @@
|
@@ -307,13 +307,13 @@ bool isPatternAcceptable(QString strCommand, QString strPattern)
|
||||||
//判断当前命令是否是要删除终端
|
//判断当前命令是否是要删除终端
|
||||||
bool Pty::bWillRemoveTerminal(QString strCommand)
|
bool Pty::bWillRemoveTerminal(QString strCommand)
|
||||||
{
|
{
|
||||||
@ -93,18 +140,18 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
for (int i = 0; i < cmdList.size(); i++) {
|
for (int i = 0; i < cmdList.size(); i++) {
|
||||||
QString currCmd = cmdList.at(i).trimmed();
|
QString currCmd = cmdList.at(i).trimmed();
|
||||||
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
||||||
@@ -320,8 +320,8 @@
|
@@ -322,8 +322,8 @@ bool Pty::bWillRemoveTerminal(QString strCommand)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- if (strCommand.contains(";")) {
|
- if (strCommand.contains(";")) {
|
||||||
- QStringList cmdList = strCommand.split(";");
|
- QStringList cmdList = strCommand.split(";");
|
||||||
+ if (strCommand.contains(QLatin1String(";"))) {
|
+ if (strCommand.contains(QLatin1String(";"))) {
|
||||||
+ QStringList cmdList = strCommand.split(QLatin1String(";"));
|
+ QStringList cmdList = strCommand.split((QLatin1String(";")));
|
||||||
for (int i = 0; i < cmdList.size(); i++) {
|
for (int i = 0; i < cmdList.size(); i++) {
|
||||||
QString currCmd = cmdList.at(i).trimmed();
|
QString currCmd = cmdList.at(i).trimmed();
|
||||||
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
||||||
@@ -339,23 +339,23 @@
|
@@ -341,23 +341,23 @@ bool Pty::bWillRemoveTerminal(QString strCommand)
|
||||||
QString strCurrCommand = strCommandList.at(i);
|
QString strCurrCommand = strCommandList.at(i);
|
||||||
for (int j = 0; j < packageNameList.size(); j++) {
|
for (int j = 0; j < packageNameList.size(); j++) {
|
||||||
QString packageName = packageNameList.at(j);
|
QString packageName = packageNameList.at(j);
|
||||||
@ -133,7 +180,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
acceptableList << isPatternAcceptable(strCurrCommand, removePattern);
|
acceptableList << isPatternAcceptable(strCurrCommand, removePattern);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -366,13 +366,13 @@
|
@@ -368,13 +368,13 @@ bool Pty::bWillRemoveTerminal(QString strCommand)
|
||||||
/******** Add by nt001000 renfeixiang 2020-05-27:增加 Purge卸载命令的判断,显示不同的卸载提示框 Begin***************/
|
/******** Add by nt001000 renfeixiang 2020-05-27:增加 Purge卸载命令的判断,显示不同的卸载提示框 Begin***************/
|
||||||
bool Pty::bWillPurgeTerminal(QString strCommand)
|
bool Pty::bWillPurgeTerminal(QString strCommand)
|
||||||
{
|
{
|
||||||
@ -150,7 +197,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
for (int i = 0; i < cmdList.size(); i++) {
|
for (int i = 0; i < cmdList.size(); i++) {
|
||||||
QString currCmd = cmdList.at(i).trimmed();
|
QString currCmd = cmdList.at(i).trimmed();
|
||||||
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
||||||
@@ -381,8 +381,8 @@
|
@@ -383,8 +383,8 @@ bool Pty::bWillPurgeTerminal(QString strCommand)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -161,7 +208,7 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
for (int i = 0; i < cmdList.size(); i++) {
|
for (int i = 0; i < cmdList.size(); i++) {
|
||||||
QString currCmd = cmdList.at(i).trimmed();
|
QString currCmd = cmdList.at(i).trimmed();
|
||||||
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
if (currCmd.length() > 0 && currCmd.contains(packageName)) {
|
||||||
@@ -400,31 +400,31 @@
|
@@ -402,31 +402,31 @@ bool Pty::bWillPurgeTerminal(QString strCommand)
|
||||||
QString strCurrCommand = strCommandList.at(i);
|
QString strCurrCommand = strCommandList.at(i);
|
||||||
for (int j = 0; j < packageNameList.size(); j++) {
|
for (int j = 0; j < packageNameList.size(); j++) {
|
||||||
QString packageName = packageNameList.at(j);
|
QString packageName = packageNameList.at(j);
|
||||||
@ -202,8 +249,8 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
acceptableList << isPatternAcceptable(strCurrCommand, removePattern);
|
acceptableList << isPatternAcceptable(strCurrCommand, removePattern);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -441,7 +441,7 @@
|
@@ -446,7 +446,7 @@ void Pty::sendData(const char *data, int length, const QTextCodec *codec)
|
||||||
|
//判断是否是点了自定义命令面板列表项触发的命令
|
||||||
bool isCustomCommand = false;
|
bool isCustomCommand = false;
|
||||||
QString currCommand = QString::fromLatin1(data);
|
QString currCommand = QString::fromLatin1(data);
|
||||||
- if (currCommand.length() > 0 && currCommand.endsWith('\n')) {
|
- if (currCommand.length() > 0 && currCommand.endsWith('\n')) {
|
||||||
@ -211,7 +258,16 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
isCustomCommand = true;
|
isCustomCommand = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -457,9 +457,9 @@
|
@@ -462,7 +462,7 @@ void Pty::sendData(const char *data, int length, const QTextCodec *codec)
|
||||||
|
|
||||||
|
//检测到当前命令是代码中通过sendText发给终端的(而不是用户手动输入的命令)
|
||||||
|
bool isSendByRemoteManage = this->property("isSendByRemoteManage").toBool();
|
||||||
|
- if (isSendByRemoteManage && strCurrCommand.startsWith("expect -f")) {
|
||||||
|
+ if (isSendByRemoteManage && strCurrCommand.startsWith(QLatin1String("expect -f"))) {
|
||||||
|
_bNeedBlockCommand = true;
|
||||||
|
//立即修改回false,防止误认其他命令
|
||||||
|
this->setProperty("isSendByRemoteManage", QVariant(false));
|
||||||
|
@@ -473,9 +473,9 @@ void Pty::sendData(const char *data, int length, const QTextCodec *codec)
|
||||||
bool bRemoveTerminal = bWillRemoveTerminal(strCurrCommand);
|
bool bRemoveTerminal = bWillRemoveTerminal(strCurrCommand);
|
||||||
|
|
||||||
if (!isTerminalRemoved() && (bPurgeTerminal || bRemoveTerminal)) {
|
if (!isTerminalRemoved() && (bPurgeTerminal || bRemoveTerminal)) {
|
||||||
@ -223,13 +279,79 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
}
|
}
|
||||||
QMetaObject::invokeMethod(this, "ptyUninstallTerminal", Qt::AutoConnection, Q_RETURN_ARG(bool, _bUninstall), Q_ARG(QString, strname));
|
QMetaObject::invokeMethod(this, "ptyUninstallTerminal", Qt::AutoConnection, Q_RETURN_ARG(bool, _bUninstall), Q_ARG(QString, strname));
|
||||||
/******** Modify by nt001000 renfeixiang 2020-05-27:修改 根据remove和purge卸载命令,发送信号不同参数值 End***************/
|
/******** Modify by nt001000 renfeixiang 2020-05-27:修改 根据remove和purge卸载命令,发送信号不同参数值 End***************/
|
||||||
@@ -494,25 +494,25 @@
|
@@ -501,7 +501,7 @@ void Pty::sendData(const char *data, int length, const QTextCodec *codec)
|
||||||
|
}
|
||||||
|
|
||||||
|
//为GBK/GB2312/GB18030编码,且不是输入命令执行的情况(没有按回车)
|
||||||
|
- if (QString(codec->name()).toUpper().startsWith("GB") && !_isCommandExec) {
|
||||||
|
+ if (QString(QLatin1String(codec->name())).toUpper().startsWith(QLatin1String("GB")) && !_isCommandExec) {
|
||||||
|
QTextCodec *utf8Codec = QTextCodec::codecForName("UTF-8");
|
||||||
|
QString unicodeData = codec->toUnicode(data);
|
||||||
|
QByteArray unicode = utf8Codec->fromUnicode(unicodeData);
|
||||||
|
@@ -524,19 +524,19 @@ void Pty::dataReceived()
|
||||||
{
|
{
|
||||||
QByteArray data = pty()->readAll();
|
QByteArray data = pty()->readAll();
|
||||||
|
|
||||||
- QString recvData = QString(data);
|
- QString recvData = QString(data);
|
||||||
+ QString recvData = QString(QLatin1String(data));
|
+ QString recvData = QString(QLatin1String(data));
|
||||||
|
|
||||||
|
if (_bNeedBlockCommand) {
|
||||||
|
QString judgeData = recvData;
|
||||||
|
if (recvData.length() > 1) {
|
||||||
|
- judgeData = recvData.replace("\r", "");
|
||||||
|
- judgeData = judgeData.replace("\n", "");
|
||||||
|
+ judgeData = recvData.replace(QLatin1String("\r"), QLatin1String(""));
|
||||||
|
+ judgeData = judgeData.replace(QLatin1String("\n"), QLatin1String(""));
|
||||||
|
}
|
||||||
|
|
||||||
|
//使用zsh的时候,发送过来的字符会残留一个字母"e",需要特殊处理下
|
||||||
|
- if (_program.endsWith("/zsh")
|
||||||
|
+ if (_program.endsWith(QLatin1String("/zsh"))
|
||||||
|
&& 1 == judgeData.length()
|
||||||
|
- && judgeData.startsWith("e")
|
||||||
|
+ && judgeData.startsWith(QLatin1String("e"))
|
||||||
|
&& -1 == _receiveDataIndex) {
|
||||||
|
_receiveDataIndex = 0;
|
||||||
|
return;
|
||||||
|
@@ -544,27 +544,27 @@ void Pty::dataReceived()
|
||||||
|
|
||||||
|
//不显示远程登录时候的敏感信息(主要是expect -f命令跟随的明文密码)
|
||||||
|
//同时考虑了zsh的情况
|
||||||
|
- if (judgeData.startsWith("expect -f")
|
||||||
|
- || judgeData.startsWith("\bexpect")
|
||||||
|
- || judgeData.startsWith("\be")
|
||||||
|
- || judgeData.startsWith("e\bexpect")
|
||||||
|
- || judgeData.startsWith("e\be")) {
|
||||||
|
+ if (judgeData.startsWith(QLatin1String("expect -f"))
|
||||||
|
+ || judgeData.startsWith(QLatin1String("\bexpect"))
|
||||||
|
+ || judgeData.startsWith(QLatin1String("\be"))
|
||||||
|
+ || judgeData.startsWith(QLatin1String("e\bexpect"))
|
||||||
|
+ || judgeData.startsWith(QLatin1String("e\be"))) {
|
||||||
|
_receiveDataIndex = 1;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_receiveDataIndex >= 1) {
|
||||||
|
- if (judgeData.contains("Press")) {
|
||||||
|
+ if (judgeData.contains(QLatin1String("Press"))) {
|
||||||
|
//这里需要置回false,否则后面其他命令也会被拦截
|
||||||
|
_bNeedBlockCommand = false;
|
||||||
|
|
||||||
|
_receiveDataIndex = -1;
|
||||||
|
- int pressStringIndex = recvData.indexOf("Press");
|
||||||
|
+ int pressStringIndex = recvData.indexOf(QLatin1String("Press"));
|
||||||
|
if (pressStringIndex > 0) {
|
||||||
|
recvData = recvData.mid(pressStringIndex);
|
||||||
|
}
|
||||||
|
- QString helpData = recvData.replace("\n", "");
|
||||||
|
- recvData = "\r\n" + helpData + "\r\n";
|
||||||
|
+ QString helpData = recvData.replace(QLatin1String("\n"), QLatin1String(""));
|
||||||
|
+ recvData = QLatin1String("\r\n") + helpData + QLatin1String("\r\n");
|
||||||
|
data = recvData.toUtf8();
|
||||||
|
emit receivedData(data.constData(), data.count(), _textCodec);
|
||||||
|
}
|
||||||
|
@@ -577,21 +577,21 @@ void Pty::dataReceived()
|
||||||
|
|
||||||
/******** Modify by m000714 daizhengwen 2020-04-30: 处理上传下载时乱码显示命令不执行****************/
|
/******** Modify by m000714 daizhengwen 2020-04-30: 处理上传下载时乱码显示命令不执行****************/
|
||||||
// 乱码提示信息不显示
|
// 乱码提示信息不显示
|
||||||
- if (recvData.contains("bash: $'\\212")
|
- if (recvData.contains("bash: $'\\212")
|
||||||
@ -258,21 +380,28 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Pty.cpp b/3rdparty/terminalwidg
|
|||||||
data = recvData.toUtf8();
|
data = recvData.toUtf8();
|
||||||
}
|
}
|
||||||
/********************* Modify by m000714 daizhengwen End ************************/
|
/********************* Modify by m000714 daizhengwen End ************************/
|
||||||
diff --color -Naur a/3rdparty/terminalwidget/lib/Session.cpp b/3rdparty/terminalwidget/lib/Session.cpp
|
diff --git a/3rdparty/terminalwidget/lib/Session.cpp b/3rdparty/terminalwidget/lib/Session.cpp
|
||||||
--- a/3rdparty/terminalwidget/lib/Session.cpp 2022-02-08 16:21:57.114358607 +0800
|
index dc64a18..cba8d3e 100644
|
||||||
+++ b/3rdparty/terminalwidget/lib/Session.cpp 2022-02-09 10:09:17.013232912 +0800
|
--- a/3rdparty/terminalwidget/lib/Session.cpp
|
||||||
@@ -320,8 +320,8 @@
|
+++ b/3rdparty/terminalwidget/lib/Session.cpp
|
||||||
|
@@ -397,12 +397,12 @@ void Session::run()
|
||||||
if (result < 0) {
|
if (result < 0) {
|
||||||
//qDebug() << "CRASHED! result: " << result<<arguments;
|
//qDebug() << "CRASHED! result: " << result<<arguments;
|
||||||
- QString infoText = QString("There was an error ctreating the child processfor this teminal. \n"
|
QString processError = _shellProcess->errorString();
|
||||||
- "Faild to execute child process \"%1\"(No such file or directory)!").arg(exec);
|
- processError = processError.mid(processError.indexOf(":") + 1).trimmed();
|
||||||
+ QString infoText = QString(QLatin1String("There was an error ctreating the child processfor this teminal. \n"
|
+ processError = processError.mid(processError.indexOf(QLatin1String(":")) + 1).trimmed();
|
||||||
+ "Faild to execute child process \"%1\"(No such file or directory)!")).arg(exec);
|
if(!processError.isEmpty())
|
||||||
|
- processError = "(" +processError + ")";
|
||||||
|
+ processError = QLatin1String("(") + processError + QLatin1String(")");
|
||||||
|
|
||||||
|
- QString infoText = QString("There was an error creating the child process for this terminal. \n"
|
||||||
|
- "Failed to execute child process \"%1\"%2!")
|
||||||
|
+ QString infoText = QString(QLatin1String("There was an error creating the child process for this terminal. \n"
|
||||||
|
+ "Failed to execute child process \"%1\"%2!"))
|
||||||
|
.arg(exec)
|
||||||
|
.arg(processError);
|
||||||
sendText(infoText);
|
sendText(infoText);
|
||||||
_userTitle = QString::fromLatin1("Session crashed");
|
@@ -556,7 +556,7 @@ void Session::monitorTimerDone()
|
||||||
emit titleChanged();
|
|
||||||
@@ -468,7 +468,7 @@
|
|
||||||
void Session::activityStateSet(int state)
|
void Session::activityStateSet(int state)
|
||||||
{
|
{
|
||||||
if (state==NOTIFYBELL) {
|
if (state==NOTIFYBELL) {
|
||||||
@ -281,19 +410,20 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/Session.cpp b/3rdparty/terminal
|
|||||||
} else if (state==NOTIFYACTIVITY) {
|
} else if (state==NOTIFYACTIVITY) {
|
||||||
if (_monitorSilence) {
|
if (_monitorSilence) {
|
||||||
_monitorTimer->start(_silenceSeconds*1000);
|
_monitorTimer->start(_silenceSeconds*1000);
|
||||||
@@ -642,7 +642,7 @@
|
@@ -738,7 +738,7 @@ void Session::done(int exitStatus)
|
||||||
if (exitStatus == -1){
|
if (exitStatus == -1){
|
||||||
infoText.sprintf("There was an error ctreating the child processfor this teminal. \n"
|
infoText.sprintf("There was an error creating the child process for this terminal. \n"
|
||||||
"Faild to execute child process \"%s\"(No such file or directory)!", _program.toUtf8().data());
|
"Failed to execute child process \"%s\"(No such file or directory)!", _program.toUtf8().data());
|
||||||
- message = "Session crashed.";
|
- message = "Session crashed.";
|
||||||
+ message = QLatin1String("Session crashed.");
|
+ message = QLatin1String("Session crashed.");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
infoText.sprintf("The child process exit normally with status %d.", exitStatus);
|
infoText.sprintf("The child process exited normally with status %d.", exitStatus);
|
||||||
diff --color -Naur a/3rdparty/terminalwidget/lib/TerminalDisplay.cpp b/3rdparty/terminalwidget/lib/TerminalDisplay.cpp
|
diff --git a/3rdparty/terminalwidget/lib/TerminalDisplay.cpp b/3rdparty/terminalwidget/lib/TerminalDisplay.cpp
|
||||||
--- a/3rdparty/terminalwidget/lib/TerminalDisplay.cpp 2022-02-08 16:21:57.114358607 +0800
|
index 3a127dc..d12541f 100644
|
||||||
+++ b/3rdparty/terminalwidget/lib/TerminalDisplay.cpp 2022-02-09 10:07:31.376887287 +0800
|
--- a/3rdparty/terminalwidget/lib/TerminalDisplay.cpp
|
||||||
@@ -447,7 +447,7 @@
|
+++ b/3rdparty/terminalwidget/lib/TerminalDisplay.cpp
|
||||||
|
@@ -493,7 +493,7 @@ TerminalDisplay::TerminalDisplay(QWidget *parent)
|
||||||
/******** Modify by ut000439 wangpeili 2020-06-24: 适应窗口特效圆角 ****************/
|
/******** Modify by ut000439 wangpeili 2020-06-24: 适应窗口特效圆角 ****************/
|
||||||
//qDebug()<<"_scrollBar->width()"<<_scrollBar->width();
|
//qDebug()<<"_scrollBar->width()"<<_scrollBar->width();
|
||||||
// 设置15px宽度=6?
|
// 设置15px宽度=6?
|
||||||
@ -302,3 +432,30 @@ diff --color -Naur a/3rdparty/terminalwidget/lib/TerminalDisplay.cpp b/3rdparty/
|
|||||||
//qDebug()<<"_scrollBar->width()"<<_scrollBar->width();
|
//qDebug()<<"_scrollBar->width()"<<_scrollBar->width();
|
||||||
/********************* Modify by n014361 wangpeili End ************************/
|
/********************* Modify by n014361 wangpeili End ************************/
|
||||||
|
|
||||||
|
@@ -3534,8 +3534,8 @@ void TerminalDisplay::dropEvent(QDropEvent* event)
|
||||||
|
}
|
||||||
|
|
||||||
|
/***add begin by ut001121 zhangmeng 20201030 for SP4.1 拖拽文件到工作区文件路径加引号***/
|
||||||
|
- dropText.insert(0, '\'');
|
||||||
|
- dropText.append('\'');
|
||||||
|
+ dropText.insert(0, QLatin1Char('\''));
|
||||||
|
+ dropText.append(QLatin1Char('\''));
|
||||||
|
/***add end ut001121***/
|
||||||
|
|
||||||
|
emit sendStringToEmu(dropText.toLocal8Bit().constData());
|
||||||
|
diff --git a/3rdparty/terminalwidget/lib/qtermwidget.cpp b/3rdparty/terminalwidget/lib/qtermwidget.cpp
|
||||||
|
index 44d9752..7060051 100644
|
||||||
|
--- a/3rdparty/terminalwidget/lib/qtermwidget.cpp
|
||||||
|
+++ b/3rdparty/terminalwidget/lib/qtermwidget.cpp
|
||||||
|
@@ -641,7 +641,7 @@ void QTermWidget::setColorScheme(const QString &origName, bool needReloadTheme)
|
||||||
|
cs = ColorSchemeManager::instance()->defaultColorScheme();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
- if (name == "customTheme" && needReloadTheme) {
|
||||||
|
+ if (name == QLatin1String("customTheme") && needReloadTheme) {
|
||||||
|
ColorSchemeManager::instance()->realodColorScheme(origName);
|
||||||
|
}
|
||||||
|
cs = ColorSchemeManager::instance()->findColorScheme(name);
|
||||||
|
--
|
||||||
|
2.20.1
|
||||||
|
|
||||||
Binary file not shown.
BIN
deepin-terminal-5.4.8.tar.gz
Normal file
BIN
deepin-terminal-5.4.8.tar.gz
Normal file
Binary file not shown.
@ -1,13 +1,18 @@
|
|||||||
|
%define specrelease 1%{?dist}
|
||||||
|
%if 0%{?openeuler}
|
||||||
|
%define specrelease 1
|
||||||
|
%endif
|
||||||
|
|
||||||
%define libname libqtermwidget5
|
%define libname libqtermwidget5
|
||||||
|
|
||||||
Name: deepin-terminal
|
Name: deepin-terminal
|
||||||
Version: 5.2.36
|
Version: 5.4.8
|
||||||
Release: 2
|
Release: %{specrelease}
|
||||||
Summary: Default terminal emulation application for Deepin
|
Summary: Default terminal emulation application for Deepin
|
||||||
License: GPLv3+
|
License: GPLv3+
|
||||||
URL: https://github.com/linuxdeepin/%{name}
|
URL: https://github.com/linuxdeepin/%{name}
|
||||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||||
Patch0: fix-qtbase-QLatin1String-QLatin1Char.patch
|
Patch0: 0001-fix-qtbase-QLatin1String-QLatin1Char.patch
|
||||||
|
|
||||||
Provides: deepin-terminal-data
|
Provides: deepin-terminal-data
|
||||||
Obsoletes: deepin-terminal-data
|
Obsoletes: deepin-terminal-data
|
||||||
@ -29,7 +34,10 @@ BuildRequires: pkgconfig(Qt5Core)
|
|||||||
BuildRequires: pkgconfig(Qt5Gui)
|
BuildRequires: pkgconfig(Qt5Gui)
|
||||||
BuildRequires: pkgconfig(Qt5DBus)
|
BuildRequires: pkgconfig(Qt5DBus)
|
||||||
BuildRequires: pkgconfig(Qt5Network)
|
BuildRequires: pkgconfig(Qt5Network)
|
||||||
BuildRequires: lxqt-build-tools
|
BuildRequires: lxqt-build-tools >= 0.6.0~
|
||||||
|
BuildRequires: utf8proc-devel
|
||||||
|
BuildRequires: gtest-devel
|
||||||
|
BuildRequires: gmock-devel
|
||||||
BuildRequires: qt5-qtbase-private-devel
|
BuildRequires: qt5-qtbase-private-devel
|
||||||
|
|
||||||
Requires: libqtermwidget5
|
Requires: libqtermwidget5
|
||||||
@ -79,7 +87,6 @@ popd
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install -C build INSTALL_ROOT="%buildroot"
|
%make_install -C build INSTALL_ROOT="%buildroot"
|
||||||
rm %buildroot/%{getenv:HOME}/.config/deepin/%{name}/install_flag
|
|
||||||
|
|
||||||
%post -n %{libname}
|
%post -n %{libname}
|
||||||
ldconfig
|
ldconfig
|
||||||
@ -94,6 +101,7 @@ ldconfig
|
|||||||
%{_datadir}/%{name}/translations/*.qm
|
%{_datadir}/%{name}/translations/*.qm
|
||||||
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
|
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
|
||||||
%{_datadir}/applications/%{name}.desktop
|
%{_datadir}/applications/%{name}.desktop
|
||||||
|
%{_datadir}/deepin-manual/manual-assets/application/deepin-terminal/terminal/
|
||||||
|
|
||||||
%files -n %{libname}
|
%files -n %{libname}
|
||||||
%{_libdir}/libterminalwidget5.so.0.14.1
|
%{_libdir}/libterminalwidget5.so.0.14.1
|
||||||
@ -114,6 +122,9 @@ ldconfig
|
|||||||
%{_datadir}/terminalwidget5/translations/*.qm
|
%{_datadir}/terminalwidget5/translations/*.qm
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jul 19 2022 konglidong <konglidong@uniontech.com> - 5.4.8-1
|
||||||
|
- update to 5.4.8
|
||||||
|
|
||||||
* Tue Feb 08 2022 liweigang <liweiganga@uniontech.com> - 5.2.36-2
|
* Tue Feb 08 2022 liweigang <liweiganga@uniontech.com> - 5.2.36-2
|
||||||
- fix build error
|
- fix build error
|
||||||
|
|
||||||
@ -122,4 +133,3 @@ ldconfig
|
|||||||
|
|
||||||
* Thu Jul 30 2020 openEuler Buildteam <buildteam@openeuler.org> - 5.0.4.1-1
|
* Thu Jul 30 2020 openEuler Buildteam <buildteam@openeuler.org> - 5.0.4.1-1
|
||||||
- Package init
|
- Package init
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user