diff --git a/CMakeLists.txt b/CMakeLists.txt index f42478061..f801b6f5c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -342,7 +342,7 @@ else() ) endif () - set(QRC_RESOURCES resources.qrc) + set(QRC_RESOURCES resources.qrc) set(LANGUAGES_DIRECTORY "${ASSETS_DIR}/languages") set(I18N_FILENAME i18n.qrc) @@ -371,17 +371,17 @@ else() set(QML_SOURCES) file(STRINGS ${QRC_RESOURCES} QRC_RESOURCES_CONTENT) foreach (line ${QRC_RESOURCES_CONTENT}) - set(result) - string(REGEX REPLACE - "^[ \t]*<[ \t]*file[ \t]*>[ \t]*(.+\\.[a-z]+)[ \t]*<[ \t]*/[ \t]*file[ \t]*>[ \t]*$" - "\\1" - result - "${line}" - ) - string(REGEX MATCH "\\.[a-z]+$" is_ui ${result}) - if (NOT ${is_ui} STREQUAL "") - list(APPEND QML_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/${result}") - endif () + set(result) + string(REGEX REPLACE + "^[ \t]*<[ \t]*file[ \t]*>[ \t]*(.+\\.[a-z]+)[ \t]*<[ \t]*/[ \t]*file[ \t]*>[ \t]*$" + "\\1" + result + "${line}" + ) + string(REGEX MATCH "\\.[a-z]+$" is_ui ${result}) + if (NOT ${is_ui} STREQUAL "") + list(APPEND QML_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/${result}") + endif () endforeach () # ------------------------------------------------------------------------------ diff --git a/build_all_linux.sh b/build_all_linux.sh index 367bdb12a..2bebceec5 100755 --- a/build_all_linux.sh +++ b/build_all_linux.sh @@ -39,7 +39,7 @@ mkdir -p build-desktop cd build-desktop #cmake .. -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_VPX=YES -DENABLE_GPL_THIRD_PARTIES=YES -DENABLE_NON_FREE_CODECS=YES -DENABLE_AMRNB=YES -DENABLE_AMRWB=YES -DENABLE_G729=YES -DENABLE_GSM=YES -DENABLE_ILBC=YES -DENABLE_ISAC=YES -DENABLE_SILK=YES -DENABLE_SPEEX=YES -DENABLE_H263=YES -DENABLE_H263P=YES -DENABLE_MPEG4=YES -DENABLE_OPENH264=YES -DENABLE_FFMPEG=YES -DENABLE_VIDEO=YES -DENABLE_GL=YES -DENABLE_OPUS=NO cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo -cmake --build . --target all --config RelWithDebInfo --parallel 10 +cmake --build . --target sdk --config RelWithDebInfo --parallel 10 #MiniZip Building cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo diff --git a/cmake_builder/linphone_package/CMakeLists.txt b/cmake_builder/linphone_package/CMakeLists.txt index d3cac0599..30583f1ba 100644 --- a/cmake_builder/linphone_package/CMakeLists.txt +++ b/cmake_builder/linphone_package/CMakeLists.txt @@ -309,27 +309,27 @@ endif () #endif () # ============================================================================== -# CPack. +# CPack. # ============================================================================== -#set(CPACK_PACKAGE_NAME "${APPLICATION_NAME}") -#set(CPACK_PACKAGE_VENDOR "${APPLICATION_VENDOR}") -#set(CPACK_PACKAGE_VERSION_MAJOR ${LINPHONE_MAJOR_VERSION}) -#set(CPACK_PACKAGE_VERSION_MINOR ${LINPHONE_MINOR_VERSION}) -#if (LINPHONE_MICRO_VERSION) -# set(CPACK_PACKAGE_VERSION_PATCH ${LINPHONE_MICRO_VERSION}) -#endif () -#set(CPACK_PACKAGE_EXECUTABLES "${EXECUTABLE_NAME};${APPLICATION_NAME}") -#set(CPACK_PACKAGE_INSTALL_DIRECTORY "${APPLICATION_NAME}") -#set(CPACK_RESOURCE_FILE_LICENSE "${LINPHONE_DESKTOP_DIR}/LICENSE.txt") +set(CPACK_PACKAGE_NAME "${APPLICATION_NAME}") +set(CPACK_PACKAGE_VENDOR "${APPLICATION_VENDOR}") +set(CPACK_PACKAGE_VERSION_MAJOR ${LINPHONE_MAJOR_VERSION}) +set(CPACK_PACKAGE_VERSION_MINOR ${LINPHONE_MINOR_VERSION}) +if (LINPHONE_MICRO_VERSION) + set(CPACK_PACKAGE_VERSION_PATCH ${LINPHONE_MICRO_VERSION}) +endif () +set(CPACK_PACKAGE_EXECUTABLES "${EXECUTABLE_NAME};${APPLICATION_NAME}") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "${APPLICATION_NAME}") +set(CPACK_RESOURCE_FILE_LICENSE "${LINPHONE_DESKTOP_DIR}/LICENSE.txt") -#if (APPLE) -# set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${LINPHONE_GIT_REVISION}-mac") -# set(CPACK_DMG_BACKGROUND_IMAGE "${CMAKE_CURRENT_SOURCE_DIR}/macos/background_dmg.jpg") +if (APPLE) + set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${LINPHONE_GIT_REVISION}-mac") + set(CPACK_DMG_BACKGROUND_IMAGE "${CMAKE_CURRENT_SOURCE_DIR}/macos/background_dmg.jpg") -# configure_file("${CMAKE_CURRENT_SOURCE_DIR}/macos/linphone_dmg.scpt.in" "${CMAKE_CURRENT_BINARY_DIR}/linphone_dmg.scpt" @ONLY) -# set(CPACK_DMG_DS_STORE_SETUP_SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/linphone_dmg.scpt") -#endif () + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/macos/linphone_dmg.scpt.in" "${CMAKE_CURRENT_BINARY_DIR}/linphone_dmg.scpt" @ONLY) + set(CPACK_DMG_DS_STORE_SETUP_SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/linphone_dmg.scpt") +endif () if (WIN32) set(CPACK_GENERATOR "NSIS") diff --git a/resources.qrc b/resources.qrc index 2e91f697b..aac0c7fd2 100644 --- a/resources.qrc +++ b/resources.qrc @@ -480,5 +480,6 @@ ui/views/App/Main/MainWindowTopMenuBar.qml ui/dev-modules/Colors/Colors.qml ui/dev-modules/Units/Units.qml + assets/icon.ico diff --git a/src/app/App.cpp b/src/app/App.cpp index 2e75f2a93..febb9efd9 100644 --- a/src/app/App.cpp +++ b/src/app/App.cpp @@ -558,6 +558,8 @@ void App::registerSharedToolTypes () { // ----------------------------------------------------------------------------- void App::setTrayIcon () { + if(!QSystemTrayIcon::isSystemTrayAvailable()) + qInfo() << "System tray is not available"; QQuickWindow *root = getMainWindow(); QSystemTrayIcon *systemTrayIcon = new QSystemTrayIcon(mEngine); @@ -596,7 +598,7 @@ void App::setTrayIcon () { root->hide(); } }); - + menu->setTitle(APPLICATION_NAME); // Build trayIcon menu. menu->addAction(settingsAction); menu->addAction(aboutAction); @@ -605,11 +607,12 @@ void App::setTrayIcon () { menu->addSeparator(); menu->addAction(quitAction); + + systemTrayIcon->setContextMenu(menu); systemTrayIcon->setIcon(QIcon(LinphoneUtils::WindowIconPath)); systemTrayIcon->setToolTip(APPLICATION_NAME); systemTrayIcon->show(); - mSystemTrayIcon = systemTrayIcon; } diff --git a/src/components/settings/AccountSettingsModel.cpp b/src/components/settings/AccountSettingsModel.cpp index 9ce1b7933..869e128da 100644 --- a/src/components/settings/AccountSettingsModel.cpp +++ b/src/components/settings/AccountSettingsModel.cpp @@ -122,7 +122,11 @@ QVariantMap AccountSettingsModel::getProxyConfigDescription (const shared_ptr
  • getServerAddr()); map["registrationDuration"] = proxyConfig->getPublishExpires(); - map["transport"] = Utils::coreStringToAppString(proxyConfig->getTransport()); + QString transport = QString::fromStdString(proxyConfig->getTransport()); + if(transport == "") + map["transport"] = "tls";// Set to TLS by default + else + map["transport"] = transport; if( proxyConfig->getRoutes().size() > 0) map["route"] = Utils::coreStringToAppString(proxyConfig->getRoutes().front()); else diff --git a/src/components/sip-addresses/SipAddressesModel.cpp b/src/components/sip-addresses/SipAddressesModel.cpp index aabcf82ae..78ef2d5ca 100644 --- a/src/components/sip-addresses/SipAddressesModel.cpp +++ b/src/components/sip-addresses/SipAddressesModel.cpp @@ -149,7 +149,7 @@ QString SipAddressesModel::getTransportFromSipAddress (const QString &sipAddress ); if (!address) - return QString(""); + return QString("TLS"); // Return TLS by default switch (address->getTransport()) { case linphone::TransportType::Udp: @@ -162,7 +162,7 @@ QString SipAddressesModel::getTransportFromSipAddress (const QString &sipAddress return QStringLiteral("DTLS"); } - return QString(""); + return QString("TLS"); } QString SipAddressesModel::addTransportToSipAddress (const QString &sipAddress, const QString &transport) { diff --git a/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml b/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml index 9b36866c3..3db9a4a68 100644 --- a/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml +++ b/ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml @@ -58,10 +58,12 @@ DialogPlus { TextField { id: sipAddress + placeholderText: 'sip:name@sip.linphone.org' error: dialog._sipAddressOk ? '' : qsTr('invalidSipAddress') onTextChanged: Logic.handleSipAddressChanged(text) + Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus() } } } @@ -72,10 +74,11 @@ DialogPlus { TextField { id: serverAddress - - error: dialog._serverAddressOk ? '' : qsTr('invalidServerAddress') - + placeholderText: 'sip:sip.linphone.org' + error: dialog._serverAddressOk ? '' : qsTr('invalidServerAddress') + onActiveFocusChanged: if(!activeFocus && dialog._serverAddressOk) Logic.handleTransportChanged(transport.model[transport.currentIndex]) onTextChanged: Logic.handleServerAddressChanged(text) + Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus() } } } @@ -86,6 +89,7 @@ DialogPlus { NumericField { id: registrationDuration + Keys.onReturnPressed: route.forceActiveFocus() } } } @@ -115,6 +119,7 @@ DialogPlus { error: dialog._routeOk ? '' : qsTr('invalidRoute') onTextChanged: Logic.handleRouteChanged(text) + Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus() } } } @@ -125,6 +130,7 @@ DialogPlus { TextField { id: contactParams + Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus() } } } @@ -138,6 +144,7 @@ DialogPlus { maxValue: 5 minValue: 1 + Keys.onReturnPressed: focus=false } } } @@ -203,8 +210,10 @@ DialogPlus { TextField { id: stunServer + placeholderText: 'stun.linphone.org' readOnly: !iceEnabled.checked + Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus() } } } @@ -229,6 +238,7 @@ DialogPlus { id: turnUser readOnly: !turnEnabled.checked || !turnEnabled.enabled + Keys.onReturnPressed: nextItemInFocusChain().forceActiveFocus() } } }