diff --git a/ChangeLog b/ChangeLog index eb6f52052..07c2edbc4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,4 @@ -v1.11.1-rc2 +v1.11.1-stable =========== Bug fixes: diff --git a/README.md b/README.md index fd3f4d81d..ff9f6862e 100644 --- a/README.md +++ b/README.md @@ -23,5 +23,6 @@ Not for the faint hearted. Only use these if you know what you're doing. * [Getting Started](https://github.com/symless/synergy-core/wiki/Getting-Started) - How to checkout the code from git and use the right branch. * [Compiling](https://github.com/symless/synergy-core/wiki/Compiling) - Instructions on how to compile Synergy Core from source. +* [Translations](https://crowdin.com/project/synergy-core) - If you want to submit translations to the Synergy Core. * [Text Config](https://github.com/symless/synergy-core/wiki/Text-Config) - Write a text config file when running Synergy Core manually. * [Command Line](https://github.com/symless/synergy-core/wiki/Command-Line) - Go full manual and run Synergy Core from the command line. diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 6d9888eb5..158b235a6 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -26,19 +26,15 @@ jobs: make displayName: 'Build' -- job: LinuxDeb +- job: LinuxDeb1 pool: vmImage: 'ubuntu-16.04' strategy: matrix: - ubuntu16: - image: symless/ubuntu-sudo:16.04 ubuntu18: image: symless/ubuntu-sudo:18.04 ubuntu19: image: symless/ubuntu-sudo:19.04 - debian9: - image: symless/debian-sudo:stretch container: $[ variables['image'] ] @@ -47,13 +43,15 @@ jobs: sudo ln -snf /usr/share/zoneinfo/Europe/London /etc/localtime sudo bash -c "echo 'Europe/London' > /etc/timezone" displayName: 'Sort out timezones for updates' + - script: | - sudo DEBIAN_FRONTEND=noninteractive + sudo DEBIAN_FRONTEND=noninteractive sudo apt-get -y update sudo apt-get -y upgrade sudo apt-get -y install git cmake qtbase5-dev build-essential libx11-dev libxtst-dev libgl1-mesa-dev libssl-dev libavahi-compat-libdnssd-dev debhelper devscripts sudo apt-get -y install qttools5-dev qttools5-dev-tools --no-install-recommends #These will try to install gnome if we allow dependancies displayName: 'Install Pakages' + - script: | mkdir build cd build @@ -61,11 +59,50 @@ jobs: make displayName: 'Build' +- job: LinuxDeb2 + pool: + vmImage: 'ubuntu-16.04' + strategy: + matrix: + ubuntu16: + image: symless/ubuntu-sudo:16.04 + debian9: + image: symless/debian-sudo:stretch + + container: $[ variables['image'] ] + + steps: + - script: | + sudo ln -snf /usr/share/zoneinfo/Europe/London /etc/localtime + sudo bash -c "echo 'Europe/London' > /etc/timezone" + displayName: 'Sort out timezones for updates' + + - script: | + sudo DEBIAN_FRONTEND=noninteractive + sudo apt-get -y update + sudo apt-get -y upgrade + sudo apt-get -y install git qtbase5-dev build-essential libx11-dev libxtst-dev libgl1-mesa-dev libssl-dev libavahi-compat-libdnssd-dev debhelper devscripts + sudo apt-get -y install qttools5-dev qttools5-dev-tools --no-install-recommends #These will try to install gnome if we allow dependancies + displayName: 'Install Pakages' + + - script: | + sudo DEBIAN_FRONTEND=noninteractive + sudo apt-get -y install wget + wget https://github.com/Kitware/CMake/releases/download/v3.14.7/cmake-3.14.7-Linux-x86_64.sh + sudo chmod +x ./cmake-3.14.7-Linux-x86_64.sh + sudo ./cmake-3.14.7-Linux-x86_64.sh --skip-license --prefix=/ + displayName: 'Installing CMake 3.14' + + - script: | + mkdir build + cd build + cmake .. + make + displayName: 'Build' + - job: MacOS strategy: matrix: - sierra: - image: macOS-10.13 mojave: image: macOS-10.14 diff --git a/cmake/Version.cmake b/cmake/Version.cmake index 2258dd2e5..b7c3420f9 100644 --- a/cmake/Version.cmake +++ b/cmake/Version.cmake @@ -6,7 +6,7 @@ cmake_minimum_required (VERSION 3.4) set (SYNERGY_VERSION_MAJOR 1) set (SYNERGY_VERSION_MINOR 11) -set (SYNERGY_VERSION_PATCH 1) +set (SYNERGY_VERSION_PATCH 2) set (SYNERGY_VERSION_STAGE "snapshot") # diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ab63a0666..fee080ab0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -22,3 +22,5 @@ add_subdirectory(cmd) if (SYNERGY_BUILD_LEGACY_GUI) add_subdirectory(gui) endif (SYNERGY_BUILD_LEGACY_GUI) + +add_subdirectory(test) diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index f662d61e6..bdb4d1f9d 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -12,6 +12,10 @@ file (GLOB LEGACY_ACTIVATION_FILES src/*Activation* src/*License*) file (GLOB LEGACY_ZEROCONF_FILES src/Zeroconf*) file (GLOB LEGACY_LANGUAGE_FILES res/lang/*.ts) +configure_file(res/Languages.qrc res/Languages.qrc) + +set_source_files_properties(${LEGACY_LANGUAGE_FILES} PROPERTIES OUTPUT_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/res/lang") + qt5_add_translation(QM_FILES ${LEGACY_LANGUAGE_FILES}) if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") @@ -34,6 +38,7 @@ add_executable (synergy WIN32 ${LEGACY_GUI_UI_FILES} ${LEGACY_GUI_RC_FILES} res/Synergy.qrc + ${CMAKE_CURRENT_BINARY_DIR}/res/Languages.qrc ${QM_FILES} ) diff --git a/src/gui/lang.cmd b/src/gui/lang.cmd index 44185934c..9fb094333 100644 --- a/src/gui/lang.cmd +++ b/src/gui/lang.cmd @@ -1 +1 @@ -lupdate -noobsolete gui.pro -ts gui.ts \ No newline at end of file +lupdate -noobsolete gui.pro -ts gui.ts res/lang/*.ts \ No newline at end of file diff --git a/src/gui/res/Languages.qrc b/src/gui/res/Languages.qrc new file mode 100644 index 000000000..f4a718cb3 --- /dev/null +++ b/src/gui/res/Languages.qrc @@ -0,0 +1,46 @@ + + + lang/gui_ar-SA.qm + lang/gui_lv-LV.qm + lang/gui_bg-BG.qm + lang/gui_mr-IN.qm + lang/gui_ca-ES.qm + lang/gui_nl-NL.qm + lang/gui_cs-CZ.qm + lang/gui_no-NO.qm + lang/gui_cy-GB.qm + lang/gui_pl-PL.qm + lang/gui_da-DK.qm + lang/gui_pt-BR.qm + lang/gui_de-DE.qm + lang/gui_pt-PT.qm + lang/gui_el-GR.qm + lang/gui_ro-RO.qm + lang/gui_ru-RU.qm + lang/gui_es-ES.qm + lang/gui_sk-SK.qm + lang/gui_et-EE.qm + lang/gui_sl-SI.qm + lang/gui_fi-FI.qm + lang/gui_sq-AL.qm + lang/gui_fr-FR.qm + lang/gui_sr-SP.qm + lang/gui_gl-ES.qm + lang/gui_sv-SE.qm + lang/gui_he-IL.qm + lang/gui_th-TH.qm + lang/gui_hr-HR.qm + lang/gui_tr-TR.qm + lang/gui_hu-HU.qm + lang/gui_uk-UA.qm + lang/gui_id-ID.qm + lang/gui_ur-IN.qm + lang/gui_it-IT.qm + lang/gui_vi-VN.qm + lang/gui_ja-JP.qm + lang/gui_zh-CN.qm + lang/gui_ko-KR.qm + lang/gui_zh-TW.qm + lang/gui_lt-LT.qm + + diff --git a/src/gui/res/Synergy.qrc b/src/gui/res/Synergy.qrc index d17aab71d..0d73e05fb 100644 --- a/src/gui/res/Synergy.qrc +++ b/src/gui/res/Synergy.qrc @@ -18,5 +18,6 @@ icons/64x64/synergy-light-transfering.png icons/64x64/synergy-light-disconnected.png icons/64x64/synergy-light-connected.png + icons/16x16/auto-config.png diff --git a/src/gui/src/MainWindow.cpp b/src/gui/src/MainWindow.cpp index 99f8d30bf..5828a17f9 100644 --- a/src/gui/src/MainWindow.cpp +++ b/src/gui/src/MainWindow.cpp @@ -17,6 +17,7 @@ */ #define DOWNLOAD_URL "http://symless.com/?source=gui" +#define HELP_URL "http://symless.com/help?source=gui" #include @@ -312,6 +313,8 @@ void MainWindow::createMenuBar() m_pMenuWindow->addAction(m_pActionMinimize); m_pMenuWindow->addAction(m_pActionRestore); m_pMenuHelp->addAction(m_pActionAbout); + m_pMenuHelp->addAction(m_pActionHelp); + setMenuBar(m_pMenuBar); } @@ -1270,6 +1273,11 @@ void MainWindow::on_m_pActionAbout_triggered() dlg.exec(); } +void MainWindow::on_m_pActionHelp_triggered() +{ + QDesktopServices::openUrl(QUrl(HELP_URL)); +} + void MainWindow::updateZeroconfService() { #ifndef SYNERGY_ENTERPRISE diff --git a/src/gui/src/MainWindow.h b/src/gui/src/MainWindow.h index add5ade57..d6fc61eb1 100644 --- a/src/gui/src/MainWindow.h +++ b/src/gui/src/MainWindow.h @@ -149,6 +149,7 @@ public slots: void on_m_pButtonConfigureServer_clicked(); bool on_m_pActionSave_triggered(); void on_m_pActionAbout_triggered(); + void on_m_pActionHelp_triggered(); void on_m_pActionSettings_triggered(); void on_m_pActivate_triggered(); void synergyFinished(int exitCode, QProcess::ExitStatus); diff --git a/src/gui/src/MainWindowBase.ui b/src/gui/src/MainWindowBase.ui index a9345e26a..ca2169d86 100644 --- a/src/gui/src/MainWindowBase.ui +++ b/src/gui/src/MainWindowBase.ui @@ -535,6 +535,14 @@ + + + Visit &help site + + + + + &Quit diff --git a/src/gui/src/SetupWizardBase.ui b/src/gui/src/SetupWizardBase.ui index 8c0898861..7ec85fb45 100644 --- a/src/gui/src/SetupWizardBase.ui +++ b/src/gui/src/SetupWizardBase.ui @@ -156,11 +156,7 @@ - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">My main mouse and keyboard are connected to this computer. This will allow you to move your mouse over to another computer's screen. There can only be one server in your setup.</span></p></body></html> + My main mouse and keyboard are connected to this computer. This will allow you to move your mouse over to another computer's screen. There can only be one server in your setup. true @@ -205,11 +201,7 @@ p, li { white-space: pre-wrap; } - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">You have already set up a server. This computer will be controlled using the server's mouse and keyboard. There can be many clients in your setup.</span></p></body></html> + You have already set up a server. This computer will be controlled using the server's mouse and keyboard. There can be many clients in your setup. true diff --git a/src/test/integtests/CMakeLists.txt b/src/test/integtests/CMakeLists.txt index f39968a33..096ba3d50 100644 --- a/src/test/integtests/CMakeLists.txt +++ b/src/test/integtests/CMakeLists.txt @@ -68,4 +68,4 @@ endif() add_executable(integtests ${sources}) target_link_libraries(integtests - arch base client common io ipc mt net platform server synergy gtest gmock ${libs} ${OPENSSL_LIBS}) + arch base client common io ipc mt net platform server synlib gtest gmock ${libs} ${OPENSSL_LIBS}) diff --git a/src/test/integtests/arch/ArchInternetTests.cpp b/src/test/integtests/arch/ArchInternetTests.cpp deleted file mode 100644 index 95823e9fb..000000000 --- a/src/test/integtests/arch/ArchInternetTests.cpp +++ /dev/null @@ -1,37 +0,0 @@ -/* - * synergy -- mouse and keyboard sharing utility - * Copyright (C) 2014-2016 Symless Ltd. - * - * This package is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * found in the file LICENSE that should have accompanied this file. - * - * This package is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include "arch/Arch.h" - -#include "test/global/gtest.h" - -#define TEST_URL "https://symless.com/tests/?testString" -//#define TEST_URL "http://localhost/synergy/tests/?testString" - -TEST(ArchInternetTests, get) -{ - ARCH_INTERNET internet; - String result = internet.get(TEST_URL); - ASSERT_EQ("Hello world!", result); -} - -TEST(ArchInternetTests, urlEncode) -{ - ARCH_INTERNET internet; - String result = internet.urlEncode("hello=+&world"); - ASSERT_EQ("hello%3D%2B%26world", result); -} diff --git a/src/test/unittests/CMakeLists.txt b/src/test/unittests/CMakeLists.txt index 54131eb20..46307e90e 100644 --- a/src/test/unittests/CMakeLists.txt +++ b/src/test/unittests/CMakeLists.txt @@ -68,4 +68,4 @@ endif() add_executable(unittests ${sources}) target_link_libraries(unittests - arch base client server common io net platform server synergy mt ipc gtest gmock shared ${libs} ${OPENSSL_LIBS}) + arch base client server common io net platform server synlib mt ipc gtest gmock shared ${libs} ${OPENSSL_LIBS})