Merge remote-tracking branch 'origin/v1.7.4-stable'
This commit is contained in:
commit
8a026e06bd
|
@ -7,7 +7,7 @@
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>368</width>
|
<width>368</width>
|
||||||
<height>377</height>
|
<height>439</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
|
@ -208,11 +208,6 @@
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1" colspan="2">
|
<item row="0" column="1" colspan="2">
|
||||||
<widget class="QComboBox" name="m_pComboLogLevel">
|
<widget class="QComboBox" name="m_pComboLogLevel">
|
||||||
<item>
|
|
||||||
<property name="text">
|
|
||||||
<string>Notify</string>
|
|
||||||
</property>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Info</string>
|
<string>Info</string>
|
||||||
|
|
|
@ -37,7 +37,6 @@ const char AppConfig::m_SynergyLogDir[] = "/var/log/";
|
||||||
|
|
||||||
static const char* logLevelNames[] =
|
static const char* logLevelNames[] =
|
||||||
{
|
{
|
||||||
"NOTIFY",
|
|
||||||
"INFO",
|
"INFO",
|
||||||
"DEBUG",
|
"DEBUG",
|
||||||
"DEBUG1",
|
"DEBUG1",
|
||||||
|
@ -117,7 +116,7 @@ void AppConfig::loadSettings()
|
||||||
m_ScreenName = settings().value("screenName", QHostInfo::localHostName()).toString();
|
m_ScreenName = settings().value("screenName", QHostInfo::localHostName()).toString();
|
||||||
m_Port = settings().value("port", 24800).toInt();
|
m_Port = settings().value("port", 24800).toInt();
|
||||||
m_Interface = settings().value("interface").toString();
|
m_Interface = settings().value("interface").toString();
|
||||||
m_LogLevel = settings().value("logLevel", 1).toInt(); // level 1: INFO
|
m_LogLevel = settings().value("logLevel", 0).toInt(); // level 0: INFO
|
||||||
m_LogToFile = settings().value("logToFile", false).toBool();
|
m_LogToFile = settings().value("logToFile", false).toBool();
|
||||||
m_LogFilename = settings().value("logFilename", synergyLogDir() + "synergy.log").toString();
|
m_LogFilename = settings().value("logFilename", synergyLogDir() + "synergy.log").toString();
|
||||||
m_WizardLastRun = settings().value("wizardLastRun", 0).toInt();
|
m_WizardLastRun = settings().value("wizardLastRun", 0).toInt();
|
||||||
|
@ -134,7 +133,7 @@ void AppConfig::loadSettings()
|
||||||
m_ResetLogLevel = settings().value("resetLogLevel", true).toBool();
|
m_ResetLogLevel = settings().value("resetLogLevel", true).toBool();
|
||||||
|
|
||||||
if (m_ResetLogLevel) {
|
if (m_ResetLogLevel) {
|
||||||
m_LogLevel = 1;
|
m_LogLevel = 0;
|
||||||
m_ResetLogLevel = false;
|
m_ResetLogLevel = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -368,13 +368,13 @@ void MainWindow::updateFound(const QString &version)
|
||||||
.arg(version).arg(DOWNLOAD_URL));
|
.arg(version).arg(DOWNLOAD_URL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::appendLogNote(const QString& text)
|
void MainWindow::appendLogInfo(const QString& text)
|
||||||
{
|
{
|
||||||
appendLogRaw("NOTE: " + text);
|
appendLogRaw("INFO: " + text);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::appendLogDebug(const QString& text) {
|
void MainWindow::appendLogDebug(const QString& text) {
|
||||||
if (appConfig().logLevel() >= 2) {
|
if (appConfig().logLevel() >= 1) {
|
||||||
appendLogRaw("DEBUG: " + text);
|
appendLogRaw("DEBUG: " + text);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -468,26 +468,15 @@ void MainWindow::checkFingerprint(const QString& line)
|
||||||
void MainWindow::checkTransmission(const QString& line)
|
void MainWindow::checkTransmission(const QString& line)
|
||||||
{
|
{
|
||||||
if (appConfig().logLevel() >= 2) {
|
if (appConfig().logLevel() >= 2) {
|
||||||
if (line.contains("Transmission")) {
|
if (line.contains("transmission")) {
|
||||||
if (line.contains("Started")) {
|
if (line.contains("started")) {
|
||||||
setSynergyState(synergyTransfering);
|
setSynergyState(synergyTransfering);
|
||||||
}
|
}
|
||||||
else if (line.contains("Failed") ||
|
else if (line.contains("failed") ||
|
||||||
line.contains("Complete") ||
|
line.contains("complete") ||
|
||||||
line.contains("Interrupted")) {
|
line.contains("interrupted")) {
|
||||||
setSynergyState(synergyConnected);
|
setSynergyState(synergyConnected);
|
||||||
}
|
}
|
||||||
|
|
||||||
// NOTIFY: Title: Detail
|
|
||||||
int p1 = line.indexOf(':');
|
|
||||||
if (p1 > 0) {
|
|
||||||
int p2 = line.indexOf(':', p1 + 1);
|
|
||||||
if (p2 > 0) {
|
|
||||||
QString title = line.mid(p1 + 2, p2 - p1 - 2);
|
|
||||||
QString detail = line.mid(p2 + 2);
|
|
||||||
m_pTrayIcon->showMessage(title, detail);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -587,20 +576,20 @@ void MainWindow::startSynergy()
|
||||||
if (!m_pLogOutput->toPlainText().isEmpty())
|
if (!m_pLogOutput->toPlainText().isEmpty())
|
||||||
appendLogRaw("");
|
appendLogRaw("");
|
||||||
|
|
||||||
appendLogNote("starting " + QString(synergyType() == synergyServer ? "server" : "client"));
|
appendLogInfo("starting " + QString(synergyType() == synergyServer ? "server" : "client"));
|
||||||
|
|
||||||
qDebug() << args;
|
qDebug() << args;
|
||||||
|
|
||||||
// show command if debug log level...
|
// show command if debug log level...
|
||||||
if (appConfig().logLevel() >= 2) {
|
if (appConfig().logLevel() >= 1) {
|
||||||
appendLogNote(QString("command: %1 %2").arg(app, args.join(" ")));
|
appendLogInfo(QString("command: %1 %2").arg(app, args.join(" ")));
|
||||||
}
|
}
|
||||||
|
|
||||||
appendLogNote("config file: " + configFilename());
|
appendLogInfo("config file: " + configFilename());
|
||||||
appendLogNote("log level: " + appConfig().logLevelText());
|
appendLogInfo("log level: " + appConfig().logLevelText());
|
||||||
|
|
||||||
if (appConfig().logToFile())
|
if (appConfig().logToFile())
|
||||||
appendLogNote("log file: " + appConfig().logFilename());
|
appendLogInfo("log file: " + appConfig().logFilename());
|
||||||
|
|
||||||
if (desktopMode)
|
if (desktopMode)
|
||||||
{
|
{
|
||||||
|
@ -781,7 +770,7 @@ void MainWindow::stopDesktop()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
appendLogNote("stopping synergy desktop process");
|
appendLogInfo("stopping synergy desktop process");
|
||||||
|
|
||||||
if (synergyProcess()->isOpen())
|
if (synergyProcess()->isOpen())
|
||||||
synergyProcess()->close();
|
synergyProcess()->close();
|
||||||
|
@ -1122,7 +1111,7 @@ bool MainWindow::isServiceRunning(QString name)
|
||||||
SC_HANDLE hSCManager;
|
SC_HANDLE hSCManager;
|
||||||
hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_CONNECT);
|
hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_CONNECT);
|
||||||
if (hSCManager == NULL) {
|
if (hSCManager == NULL) {
|
||||||
appendLogNote("failed to open a service controller manager, error: " +
|
appendLogError("failed to open a service controller manager, error: " +
|
||||||
GetLastError());
|
GetLastError());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -1175,11 +1164,11 @@ void MainWindow::downloadBonjour()
|
||||||
int arch = getProcessorArch();
|
int arch = getProcessorArch();
|
||||||
if (arch == kProcessorArchWin32) {
|
if (arch == kProcessorArchWin32) {
|
||||||
url.setUrl(bonjourBaseUrl + bonjourFilename32);
|
url.setUrl(bonjourBaseUrl + bonjourFilename32);
|
||||||
appendLogNote("downloading 32-bit Bonjour");
|
appendLogInfo("downloading 32-bit Bonjour");
|
||||||
}
|
}
|
||||||
else if (arch == kProcessorArchWin64) {
|
else if (arch == kProcessorArchWin64) {
|
||||||
url.setUrl(bonjourBaseUrl + bonjourFilename64);
|
url.setUrl(bonjourBaseUrl + bonjourFilename64);
|
||||||
appendLogNote("downloading 64-bit Bonjour");
|
appendLogInfo("downloading 64-bit Bonjour");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
QMessageBox::critical(
|
QMessageBox::critical(
|
||||||
|
@ -1332,7 +1321,7 @@ void MainWindow::on_m_pCheckBoxAutoConfig_toggled(bool checked)
|
||||||
|
|
||||||
void MainWindow::bonjourInstallFinished()
|
void MainWindow::bonjourInstallFinished()
|
||||||
{
|
{
|
||||||
appendLogNote("Bonjour install finished");
|
appendLogInfo("Bonjour install finished");
|
||||||
|
|
||||||
m_pCheckBoxAutoConfig->setChecked(true);
|
m_pCheckBoxAutoConfig->setChecked(true);
|
||||||
}
|
}
|
||||||
|
|
|
@ -113,7 +113,7 @@ class MainWindow : public QMainWindow, public Ui::MainWindowBase
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void appendLogRaw(const QString& text);
|
void appendLogRaw(const QString& text);
|
||||||
void appendLogNote(const QString& text);
|
void appendLogInfo(const QString& text);
|
||||||
void appendLogDebug(const QString& text);
|
void appendLogDebug(const QString& text);
|
||||||
void appendLogError(const QString& text);
|
void appendLogError(const QString& text);
|
||||||
void startSynergy();
|
void startSynergy();
|
||||||
|
|
|
@ -79,7 +79,7 @@ void ZeroconfService::serverDetected(const QList<ZeroconfRecord>& list)
|
||||||
{
|
{
|
||||||
foreach (ZeroconfRecord record, list) {
|
foreach (ZeroconfRecord record, list) {
|
||||||
registerService(false);
|
registerService(false);
|
||||||
m_pMainWindow->appendLogNote(tr("zeroconf server detected: %1").arg(
|
m_pMainWindow->appendLogInfo(tr("zeroconf server detected: %1").arg(
|
||||||
record.serviceName));
|
record.serviceName));
|
||||||
m_pMainWindow->serverDetected(record.serviceName);
|
m_pMainWindow->serverDetected(record.serviceName);
|
||||||
}
|
}
|
||||||
|
@ -88,7 +88,7 @@ void ZeroconfService::serverDetected(const QList<ZeroconfRecord>& list)
|
||||||
void ZeroconfService::clientDetected(const QList<ZeroconfRecord>& list)
|
void ZeroconfService::clientDetected(const QList<ZeroconfRecord>& list)
|
||||||
{
|
{
|
||||||
foreach (ZeroconfRecord record, list) {
|
foreach (ZeroconfRecord record, list) {
|
||||||
m_pMainWindow->appendLogNote(tr("zeroconf client detected: %1").arg(
|
m_pMainWindow->appendLogInfo(tr("zeroconf client detected: %1").arg(
|
||||||
record.serviceName));
|
record.serviceName));
|
||||||
m_pMainWindow->autoAddScreen(record.serviceName);
|
m_pMainWindow->autoAddScreen(record.serviceName);
|
||||||
}
|
}
|
||||||
|
|
|
@ -285,7 +285,7 @@ Client::leave()
|
||||||
|
|
||||||
if (!m_receivedFileData.empty()) {
|
if (!m_receivedFileData.empty()) {
|
||||||
m_receivedFileData.clear();
|
m_receivedFileData.clear();
|
||||||
LOG((CLOG_NOTIFY "File Transmission Interrupted: The previous file transmission is interrupted."));
|
LOG((CLOG_NOTIFY "file transmission interrupted"));
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -565,11 +565,11 @@ ServerProxy::setClipboard()
|
||||||
clipboard.unmarshall(dataCached, 0);
|
clipboard.unmarshall(dataCached, 0);
|
||||||
m_client->setClipboard(id, &clipboard);
|
m_client->setClipboard(id, &clipboard);
|
||||||
|
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Complete: Clipboard is updated."));
|
LOG((CLOG_NOTIFY "clipboard transmission complete"));
|
||||||
}
|
}
|
||||||
else if (r == kStart) {
|
else if (r == kStart) {
|
||||||
size_t size = ClipboardChunk::getExpectedSize();
|
size_t size = ClipboardChunk::getExpectedSize();
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Started: Start receiving %u bytes of clipboard data.", size));
|
LOG((CLOG_NOTIFY "clipboard transmission started: start receiving %u bytes of clipboard data", size));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -873,7 +873,7 @@ ServerProxy::fileChunkReceived()
|
||||||
else if (result == kStart) {
|
else if (result == kStart) {
|
||||||
if (m_client->getDragFileList().size() > 0) {
|
if (m_client->getDragFileList().size() > 0) {
|
||||||
String filename = m_client->getDragFileList().at(0).getFilename();
|
String filename = m_client->getDragFileList().at(0).getFilename();
|
||||||
LOG((CLOG_NOTIFY "File Transmission Started: Start receiving %s.", filename.c_str()));
|
LOG((CLOG_NOTIFY "file transmission started: start receiving %s", filename.c_str()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -93,7 +93,7 @@ ClientProxy1_5::fileChunkReceived()
|
||||||
else if (result == kStart) {
|
else if (result == kStart) {
|
||||||
if (server->getFakeDragFileList().size() > 0) {
|
if (server->getFakeDragFileList().size() > 0) {
|
||||||
String filename = server->getFakeDragFileList().at(0).getFilename();
|
String filename = server->getFakeDragFileList().at(0).getFilename();
|
||||||
LOG((CLOG_NOTIFY "File Transmission Started: Start receiving %s.", filename.c_str()));
|
LOG((CLOG_NOTIFY "file transmission started: start receiving %s", filename.c_str()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -91,11 +91,11 @@ ClientProxy1_6::recvClipboard()
|
||||||
info->m_sequenceNumber = seq;
|
info->m_sequenceNumber = seq;
|
||||||
m_events->addEvent(Event(m_events->forClipboard().clipboardChanged(),
|
m_events->addEvent(Event(m_events->forClipboard().clipboardChanged(),
|
||||||
getEventTarget(), info));
|
getEventTarget(), info));
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Complete: Clipboard is updated."));
|
LOG((CLOG_NOTIFY "clipboard transmission complete"));
|
||||||
}
|
}
|
||||||
else if (r == kStart) {
|
else if (r == kStart) {
|
||||||
size_t size = ClipboardChunk::getExpectedSize();
|
size_t size = ClipboardChunk::getExpectedSize();
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Started: Start receiving %u bytes of clipboard data.", size));
|
LOG((CLOG_NOTIFY "clipboard transmission started: start receiving %u bytes of clipboard data", size));
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -115,13 +115,13 @@ ClipboardChunk::assemble(synergy::IStream* stream,
|
||||||
}
|
}
|
||||||
else if (s_expectedSize != dataCached.size()) {
|
else if (s_expectedSize != dataCached.size()) {
|
||||||
LOG((CLOG_ERR "corrupted clipboard data, expected size=%d actual size=%d", s_expectedSize, dataCached.size()));
|
LOG((CLOG_ERR "corrupted clipboard data, expected size=%d actual size=%d", s_expectedSize, dataCached.size()));
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Failed: Corrupted clipboard data."));
|
LOG((CLOG_NOTIFY "clipboard transmission failed: corrupted clipboard data"));
|
||||||
return kError;
|
return kError;
|
||||||
}
|
}
|
||||||
return kFinish;
|
return kFinish;
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Failed: Unknow error."));
|
LOG((CLOG_NOTIFY "clipboard transmission failed: unknow error"));
|
||||||
return kError;
|
return kError;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -38,18 +38,18 @@ DropHelper::writeToDir(const String& destination, DragFileList& fileList, String
|
||||||
file.open(dropTarget.c_str(), std::ios::out | std::ios::binary);
|
file.open(dropTarget.c_str(), std::ios::out | std::ios::binary);
|
||||||
if (!file.is_open()) {
|
if (!file.is_open()) {
|
||||||
LOG((CLOG_ERR "drop file failed: can not open %s", dropTarget.c_str()));
|
LOG((CLOG_ERR "drop file failed: can not open %s", dropTarget.c_str()));
|
||||||
LOG((CLOG_NOTIFY "File Transmission Failed: Can not open %s.", dropTarget.c_str()));
|
LOG((CLOG_NOTIFY "file transmission failed: can not open %s", dropTarget.c_str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
file.write(data.c_str(), data.size());
|
file.write(data.c_str(), data.size());
|
||||||
file.close();
|
file.close();
|
||||||
|
|
||||||
LOG((CLOG_NOTIFY "File Transmission Complete: %s is saved to %s.", fileList.at(0).getFilename().c_str(), destination.c_str()));
|
LOG((CLOG_NOTIFY "file transmission complete: %s is saved to %s", fileList.at(0).getFilename().c_str(), destination.c_str()));
|
||||||
|
|
||||||
fileList.clear();
|
fileList.clear();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
LOG((CLOG_ERR "drop file failed: drop target is empty"));
|
LOG((CLOG_ERR "drop file failed: drop target is empty"));
|
||||||
LOG((CLOG_NOTIFY "File Transmission Failed: Drop target is empty."));
|
LOG((CLOG_NOTIFY "file transmission failed: drop target is empty"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -116,7 +116,7 @@ FileChunk::assemble(synergy::IStream* stream, String& dataReceived, size_t& expe
|
||||||
case kDataEnd:
|
case kDataEnd:
|
||||||
if (expectedSize != dataReceived.size()) {
|
if (expectedSize != dataReceived.size()) {
|
||||||
LOG((CLOG_ERR "corrupted clipboard data, expected size=%d actual size=%d", expectedSize, dataReceived.size()));
|
LOG((CLOG_ERR "corrupted clipboard data, expected size=%d actual size=%d", expectedSize, dataReceived.size()));
|
||||||
LOG((CLOG_NOTIFY "File Transmission Failed: Corrupted file data."));
|
LOG((CLOG_NOTIFY "file transmission failed: corrupted file data"));
|
||||||
return kError;
|
return kError;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ StreamChunker::sendFile(
|
||||||
while (true) {
|
while (true) {
|
||||||
if (s_interruptFile) {
|
if (s_interruptFile) {
|
||||||
s_interruptFile = false;
|
s_interruptFile = false;
|
||||||
LOG((CLOG_NOTIFY "File Transmission Interrupted: The previous file transmission is interrupted."));
|
LOG((CLOG_NOTIFY "file transmission interrupted"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -154,7 +154,7 @@ StreamChunker::sendClipboard(
|
||||||
while (true) {
|
while (true) {
|
||||||
if (s_interruptClipboard) {
|
if (s_interruptClipboard) {
|
||||||
s_interruptClipboard = false;
|
s_interruptClipboard = false;
|
||||||
LOG((CLOG_NOTIFY "Clipboard Transmission Interrupted: The previous clipboard transmission is interrupted."));
|
LOG((CLOG_NOTIFY "clipboard transmission interrupted"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue