diff --git a/net/linphone/Makefile b/net/linphone/Makefile --- a/net/linphone/Makefile +++ b/net/linphone/Makefile @@ -1,25 +1,61 @@ PORTNAME= linphone -PORTVERSION= 4.1.1 -PORTREVISION= 6 +PORTVERSION= 4.4.8 PORTEPOCH= 1 CATEGORIES= net -MASTER_SITES= https://www.linphone.org/releases/sources/linphoneqt/ -DISTNAME= linphoneqt-${PORTVERSION} MAINTAINER= ports@FreeBSD.org COMMENT= SIP client supporting voice/video calls and text messaging +LICENSE= GPLv3 + LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \ libbelcard.so:deskutils/belcard \ - liblinphone++.so:net/liblinphone + liblinphone++.so:net/liblinphone \ + libmediastreamer.so:net/mediastreamer \ + libortp.so:net/ortp USES= cmake compiler:c++11-lib pkgconfig qt:5 -USE_QT= buildtools_build concurrent core declarative \ - graphicaleffects_run gui linguisttools network qmake_build \ - quickcontrols_run quickcontrols2 speech svg testlib widgets +USE_GITLAB= yes +GL_SITE= https://gitlab.linphone.org/BC +GL_ACCOUNT= public +GL_PROJECT= linphone-desktop +GL_COMMIT= da40aed848da44e851d67a2039e7e966c5257d3b +USE_QT= concurrent core dbus declarative gui linguisttools network \ + quickcontrols2 speech svg testlib widgets buildtools_build \ + qmake_build graphicaleffects_run quickcontrols_run + +# Linphone's plugin API is implemented in a shared object with rather generic +# SONAME and filename, libapp-plugin.so. For classic installation in the +# local tree, we better move it to its own subdirectory, so we need RPATH +# here. +# This will affect actual Linphone plugins as well if they get ported. +CMAKE_ARGS+= -DCMAKE_INSTALL_RPATH="${LOCALBASE}/lib/linphone" + +WRKSRC_SUBDIR= linphone-app + +ICONDIR= ${LOCALBASE}/share/icons/hicolor/scalable/apps post-patch: + @${REINPLACE_CMD} -e 's/bc_compute_full_version([^)]*)//' \ + -e 's/set(FULL_VERSION /&${PORTVERSION}/' \ + -e 's/INSTALL_RPATH_USE_LINK_PATH/BUILD_WITH_INSTALL_RPATH/' \ + -e '/add_subdirectory.*linphone_package/d' \ + -e '/add_custom_command/d' -e '/deployqt_hack/d' \ + ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} 's/LINPHONE_QT_GIT_VERSION/"${PORTVERSION}"/' \ ${WRKSRC}/src/app/AppController.cpp +# override install because otherwise, it does a complete rebuild during stage +do-install: + ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/linphone \ + ${STAGEDIR}${LOCALBASE}/bin + ${MKDIR} ${STAGEDIR}${LOCALBASE}/lib/linphone + ${MKDIR} ${STAGEDIR}${ICONDIR} + ${INSTALL_LIB} ${BUILD_WRKSRC}/libapp-plugin.so \ + ${STAGEDIR}${LOCALBASE}/lib/linphone + ${INSTALL_DATA} ${WRKSRC}/assets/images/linphone_logo.svg \ + ${STAGEDIR}${ICONDIR}/linphone.svg + ${INSTALL_DATA} ${FILESDIR}/linphone.desktop \ + ${STAGEDIR}${LOCALBASE}/share/applications/linphone.desktop + .include diff --git a/net/linphone/distinfo b/net/linphone/distinfo --- a/net/linphone/distinfo +++ b/net/linphone/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1538765035 -SHA256 (linphoneqt-4.1.1.tar.gz) = 4a00c0cc2861089f8d3a1d0af1cde8ad4094f23640fb6df483e1814853ce5fbc -SIZE (linphoneqt-4.1.1.tar.gz) = 1820252 +TIMESTAMP = 1657718753 +SHA256 (public-linphone-desktop-da40aed848da44e851d67a2039e7e966c5257d3b_GL0.tar.gz) = b8ea0a2d466a28e57da5bc4ca6916f67606dfc01b08e5c3e4483e6bffc63f91e +SIZE (public-linphone-desktop-da40aed848da44e851d67a2039e7e966c5257d3b_GL0.tar.gz) = 2751020 diff --git a/net/linphone/files/linphone.desktop b/net/linphone/files/linphone.desktop new file mode 100644 --- /dev/null +++ b/net/linphone/files/linphone.desktop @@ -0,0 +1,26 @@ +[Desktop Entry] +Name=Linphone +GenericName=SIP Phone +Comment=Linphone is a libre SIP client +Type=Application +Exec=linphone %u +Icon=linphone +Terminal=false +Categories=Network;Telephony; + + +# Translations +Name[de]=Linphone +Name[he]=Linphone +Name[ar]=لِنْفُونْ +Name[hu]=Linphone +Name[ru]=Linphone +Name[nb_NO]=Linphone +Name[it]=Linphone +Name[ja]=Linphone +Name[cs]=Linphone +Name[sr]=Линфон +Name[sv]=Linphone +Name[zh_CN]=Linphone +Name[fr]=Linphone +Name[zh_TW]=Linphone diff --git a/net/linphone/files/patch-00-ecaab0f b/net/linphone/files/patch-00-ecaab0f deleted file mode 100644 --- a/net/linphone/files/patch-00-ecaab0f +++ /dev/null @@ -1,93 +0,0 @@ -From ecaab0f73d0b74bbfbf150286305fa6e12970037 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Fri, 19 Jan 2018 14:42:01 +0100 -Subject: [PATCH] fix(SettingsWindow): rename icon property of TabButton to - iconName (issue with Qt 5.10 and new icon property) - ---- - ui/modules/Common/Form/Tab/TabButton.qml | 8 ++++---- - ui/views/App/Settings/SettingsWindow.qml | 14 +++++++------- - 2 files changed, 11 insertions(+), 11 deletions(-) - -diff --git a/ui/modules/Common/Form/Tab/TabButton.qml b/ui/modules/Common/Form/Tab/TabButton.qml -index ad220ab2..a47bb20b 100644 ---- ui/modules/Common/Form/Tab/TabButton.qml -+++ ui/modules/Common/Form/Tab/TabButton.qml -@@ -12,8 +12,8 @@ Controls.TabButton { - - // --------------------------------------------------------------------------- - -- property string icon - property int iconSize: TabButtonStyle.icon.size -+ property string iconName - - readonly property bool _isSelected: parent.parent.currentItem === button - -@@ -66,9 +66,9 @@ Controls.TabButton { - Layout.leftMargin: TabButtonStyle.text.leftPadding - - icon: { -- var icon = button.icon -- return icon.length -- ? (icon + '_' + (button._isSelected ? 'selected' : 'normal')) -+ var iconName = button.iconName -+ return iconName.length -+ ? (iconName + '_' + (button._isSelected ? 'selected' : 'normal')) - : '' - } - iconSize: button.iconSize -diff --git a/ui/views/App/Settings/SettingsWindow.qml b/ui/views/App/Settings/SettingsWindow.qml -index b8f5a80f..58909544 100644 ---- ui/views/App/Settings/SettingsWindow.qml -+++ ui/views/App/Settings/SettingsWindow.qml -@@ -48,43 +48,43 @@ ApplicationWindow { - id: tabBar - - TabButton { -- icon: 'settings_sip_accounts' -+ iconName: 'settings_sip_accounts' - text: qsTr('sipAccountsTab') - width: implicitWidth - } - - TabButton { -- icon: 'settings_audio' -+ iconName: 'settings_audio' - text: qsTr('audioTab') - width: implicitWidth - } - - TabButton { -- icon: 'settings_video' -+ iconName: 'settings_video' - text: qsTr('videoTab') - width: implicitWidth - } - - TabButton { -- icon: 'settings_call' -+ iconName: 'settings_call' - text: qsTr('callsAndChatTab') - width: implicitWidth - } - - TabButton { -- icon: 'settings_network' -+ iconName: 'settings_network' - text: qsTr('networkTab') - width: implicitWidth - } - - TabButton { -- icon: 'settings_advanced' -+ iconName: 'settings_advanced' - text: qsTr('uiTab') - width: implicitWidth - } - - TabButton { -- icon: 'settings_advanced' -+ iconName: 'settings_advanced' - text: qsTr('uiAdvanced') - width: implicitWidth - } diff --git a/net/linphone/files/patch-01-5dd0161 b/net/linphone/files/patch-01-5dd0161 deleted file mode 100644 --- a/net/linphone/files/patch-01-5dd0161 +++ /dev/null @@ -1,74 +0,0 @@ -From 5dd0161a68db97dd1bb1c367630821e61eae3584 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Mon, 22 Jan 2018 11:04:26 +0100 -Subject: [PATCH] feat(app): try to support menu bar between qt 5.9 and qt 5.10 - ---- - resources.qrc | 2 + - src/app/App.cpp | 12 ++- - ui/views/App/Main/+5.9/MainWindowMenuBar.qml | 79 ++++++++++++++++++++ - ui/views/App/Main/+mac/MainWindowMenuBar.qml | 79 ++++++++++++++++++++ - ui/views/App/Main/MainWindowMenuBar.qml | 37 ++++----- - 5 files changed, 184 insertions(+), 25 deletions(-) - create mode 100644 ui/views/App/Main/+5.9/MainWindowMenuBar.qml - create mode 100644 ui/views/App/Main/+mac/MainWindowMenuBar.qml - -diff --git a/ui/views/App/Main/MainWindowMenuBar.qml b/ui/views/App/Main/MainWindowMenuBar.qml -index 48a0dde3..e32b8fe3 100644 ---- ui/views/App/Main/MainWindowMenuBar.qml -+++ ui/views/App/Main/MainWindowMenuBar.qml -@@ -1,7 +1,5 @@ - import QtQuick 2.7 -- --// Experimental. --import Qt.labs.platform 1.0 -+import QtQuick.Controls 2.3 - - import Linphone 1.0 - -@@ -48,32 +46,25 @@ Item { - // Menu. - // --------------------------------------------------------------------------- - -- MenuBar { -- Menu { -- id: menu -+ Menu { -+ id: menu - -- MenuItem { -- role: MenuItem.PreferencesRole -- shortcut: settingsShortcut.sequence -- text: qsTr('settings') -+ MenuItem { -+ text: qsTr('settings') - -- onTriggered: settingsShortcut.onActivated() -- } -+ onTriggered: settingsShortcut.onActivated() -+ } - -- MenuItem { -- role: MenuItem.AboutRole -- text: qsTr('about') -+ MenuItem { -+ text: qsTr('about') - -- onTriggered: aboutShortcut.onActivated() -- } -+ onTriggered: aboutShortcut.onActivated() -+ } - -- MenuItem { -- role: MenuItem.QuitRole -- shortcut: quitShortcut.sequence -- text: qsTr('quit') -+ MenuItem { -+ text: qsTr('quit') - -- onTriggered: quitShortcut.onActivated() -- } -+ onTriggered: quitShortcut.onActivated() - } - } - } diff --git a/net/linphone/files/patch-02-c840bba b/net/linphone/files/patch-02-c840bba deleted file mode 100644 --- a/net/linphone/files/patch-02-c840bba +++ /dev/null @@ -1,216 +0,0 @@ -From c840bbab8ca823f4cca0b70f6e692a38933449d8 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Fri, 15 Jun 2018 11:55:59 +0200 -Subject: [PATCH] fix(Timeline.qml): do not anchors rectangle in ColumnLayout - (Qt5.11) - ---- - ui/modules/Linphone/Timeline/Timeline.qml | 168 +++++++++++----------- - 1 file changed, 83 insertions(+), 85 deletions(-) - -diff --git a/ui/modules/Linphone/Timeline/Timeline.qml b/ui/modules/Linphone/Timeline/Timeline.qml -index d260bd7b..95205458 100644 ---- ui/modules/Linphone/Timeline/Timeline.qml -+++ ui/modules/Linphone/Timeline/Timeline.qml -@@ -9,7 +9,7 @@ import 'Timeline.js' as Logic - - // ============================================================================= - --ColumnLayout { -+Rectangle { - id: timeline - - // --------------------------------------------------------------------------- -@@ -35,110 +35,108 @@ ColumnLayout { - - // --------------------------------------------------------------------------- - -- spacing: 0 -+ color: TimelineStyle.color - -- // --------------------------------------------------------------------------- -+ ColumnLayout { -+ anchors.fill: parent -+ spacing: 0 - -- Connections { -- target: model -+ // ------------------------------------------------------------------------- - -- onDataChanged: Logic.handleDataChanged(topLeft, bottomRight, roles) -- onRowsAboutToBeRemoved: Logic.handleRowsAboutToBeRemoved (parent, first, last) -- } -+ Connections { -+ target: model - -- // --------------------------------------------------------------------------- -- -- Rectangle { -- anchors.fill: parent -- color: TimelineStyle.color -- } -+ onDataChanged: Logic.handleDataChanged(topLeft, bottomRight, roles) -+ onRowsAboutToBeRemoved: Logic.handleRowsAboutToBeRemoved(parent, first, last) -+ } - -- // --------------------------------------------------------------------------- -- // Legend. -- // --------------------------------------------------------------------------- -+ // ------------------------------------------------------------------------- -+ // Legend. -+ // ------------------------------------------------------------------------- - -- Rectangle { -- Layout.fillWidth: true -- Layout.preferredHeight: TimelineStyle.legend.height -- color: TimelineStyle.legend.backgroundColor -+ Rectangle { -+ Layout.fillWidth: true -+ Layout.preferredHeight: TimelineStyle.legend.height -+ color: TimelineStyle.legend.backgroundColor - -- Row { -- anchors { -- fill: parent -- leftMargin: TimelineStyle.legend.leftMargin -- rightMargin: TimelineStyle.legend.rightMargin -- } -- spacing: TimelineStyle.legend.spacing -+ Row { -+ anchors { -+ fill: parent -+ leftMargin: TimelineStyle.legend.leftMargin -+ rightMargin: TimelineStyle.legend.rightMargin -+ } -+ spacing: TimelineStyle.legend.spacing - -- Icon { -- anchors.verticalCenter: parent.verticalCenter -- icon: 'history' -- iconSize: TimelineStyle.legend.iconSize -- } -+ Icon { -+ anchors.verticalCenter: parent.verticalCenter -+ icon: 'history' -+ iconSize: TimelineStyle.legend.iconSize -+ } - -- Text { -- color: TimelineStyle.legend.color -- font.pointSize: TimelineStyle.legend.pointSize -- height: parent.height -- text: qsTr('timelineTitle') -- verticalAlignment: Text.AlignVCenter -+ Text { -+ color: TimelineStyle.legend.color -+ font.pointSize: TimelineStyle.legend.pointSize -+ height: parent.height -+ text: qsTr('timelineTitle') -+ verticalAlignment: Text.AlignVCenter -+ } - } - } -- } - -- // --------------------------------------------------------------------------- -- // History. -- // --------------------------------------------------------------------------- -+ // ------------------------------------------------------------------------- -+ // History. -+ // ------------------------------------------------------------------------- -+ -+ ScrollableListView { -+ id: view -+ -+ Layout.fillHeight: true -+ Layout.fillWidth: true -+ currentIndex: -1 - -- ScrollableListView { -- id: view -- -- Layout.fillHeight: true -- Layout.fillWidth: true -- currentIndex: -1 -- -- delegate: Item { -- height: TimelineStyle.contact.height -- width: parent ? parent.width : 0 -- -- Contact { -- anchors.fill: parent -- color: view.currentIndex === index -- ? TimelineStyle.contact.backgroundColor.selected -- : ( -- index % 2 == 0 -- ? TimelineStyle.contact.backgroundColor.a -- : TimelineStyle.contact.backgroundColor.b -- ) -- displayUnreadMessagesCount: view.currentIndex !== index -- entry: $timelineEntry -- sipAddressColor: view.currentIndex === index -- ? TimelineStyle.contact.sipAddress.color.selected -- : TimelineStyle.contact.sipAddress.color.normal -- usernameColor: view.currentIndex === index -- ? TimelineStyle.contact.username.color.selected -- : TimelineStyle.contact.username.color.normal -- -- Loader { -+ delegate: Item { -+ height: TimelineStyle.contact.height -+ width: parent ? parent.width : 0 -+ -+ Contact { - anchors.fill: parent -- sourceComponent: TooltipArea { -- text: $timelineEntry.timestamp.toLocaleString( -- Qt.locale(App.locale), -- Locale.ShortFormat -+ color: view.currentIndex === index -+ ? TimelineStyle.contact.backgroundColor.selected -+ : ( -+ index % 2 == 0 -+ ? TimelineStyle.contact.backgroundColor.a -+ : TimelineStyle.contact.backgroundColor.b - ) -+ displayUnreadMessagesCount: view.currentIndex !== index -+ entry: $timelineEntry -+ sipAddressColor: view.currentIndex === index -+ ? TimelineStyle.contact.sipAddress.color.selected -+ : TimelineStyle.contact.sipAddress.color.normal -+ usernameColor: view.currentIndex === index -+ ? TimelineStyle.contact.username.color.selected -+ : TimelineStyle.contact.username.color.normal -+ -+ Loader { -+ anchors.fill: parent -+ sourceComponent: TooltipArea { -+ text: $timelineEntry.timestamp.toLocaleString( -+ Qt.locale(App.locale), -+ Locale.ShortFormat -+ ) -+ } - } - } -- } - -- MouseArea { -- anchors.fill: parent -- onClicked: { -- view.currentIndex = index -- timeline.entrySelected($timelineEntry.sipAddress) -+ MouseArea { -+ anchors.fill: parent -+ onClicked: { -+ view.currentIndex = index -+ timeline.entrySelected($timelineEntry.sipAddress) -+ } - } - } -- } - -- onCountChanged: Logic.handleCountChanged(count) -+ onCountChanged: Logic.handleCountChanged(count) -+ } - } - } diff --git a/net/linphone/files/patch-03-85c2165 b/net/linphone/files/patch-03-85c2165 deleted file mode 100644 --- a/net/linphone/files/patch-03-85c2165 +++ /dev/null @@ -1,23 +0,0 @@ -From 85c2165dd2cfaa051f2b5079406cccf363cdc0c8 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Fri, 15 Jun 2018 14:26:54 +0200 -Subject: [PATCH] fix(TabContainer.qml): do not anchors rectangle in - StackLayout (Qt5.11) - ---- - ui/modules/Common/Form/Tab/TabContainer.qml | 1 - - ui/views/App/Settings/Dialogs/SettingsSipAccountsEdit.qml | 2 ++ - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/ui/modules/Common/Form/Tab/TabContainer.qml b/ui/modules/Common/Form/Tab/TabContainer.qml -index 1ddbcc18..1706849a 100644 ---- ui/modules/Common/Form/Tab/TabContainer.qml -+++ ui/modules/Common/Form/Tab/TabContainer.qml -@@ -11,7 +11,6 @@ import Utils 1.0 - Rectangle { - default property alias _content: content.data - -- anchors.fill: parent - color: TabContainerStyle.color - - ColumnLayout { diff --git a/net/linphone/files/patch-04-8720931 b/net/linphone/files/patch-04-8720931 deleted file mode 100644 --- a/net/linphone/files/patch-04-8720931 +++ /dev/null @@ -1,68 +0,0 @@ -From 872093116f2b8cee869f38cdccf527b22d1f1ea1 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Fri, 15 Jun 2018 15:20:35 +0200 -Subject: [PATCH] fix(ExclusiveButtons.spec.qml): do not use SignalSpy in Qt - 5.11, click is emitted twice instead of one - ---- - .../Form/Buttons/ExclusiveButtons.spec.qml | 28 ++++++++++--------- - 1 file changed, 15 insertions(+), 13 deletions(-) - -diff --git a/ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml b/ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml -index be92a1c4..0154fa95 100644 ---- ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml -+++ ui/modules/Common/Form/Buttons/ExclusiveButtons.spec.qml -@@ -27,13 +27,6 @@ Item { - - texts: ['A', 'B', 'C', 'D', 'E'] - } -- -- SignalSpy { -- id: spy -- -- signalName: 'clicked' -- target: exclusiveButtons -- } - } - } - -@@ -54,24 +47,33 @@ Item { - - function test_signals (data) { - var container = buildExclusiveButtons(data.defaultSelectedButton) -- var spy = container.data[1] - var exclusiveButtons = container.data[0] -- - var buttonToClick = data.buttonToClick - - // Test default selected button. - compare(exclusiveButtons.selectedButton, data.defaultSelectedButton) - -+ var button = -1 -+ var count = 0 -+ -+ exclusiveButtons.clicked.connect(function (_button) { -+ button = _button; -+ count += 1 -+ }) -+ - // Test a click to change the selected button. - mouseClick(exclusiveButtons.data[buttonToClick]) -- spy.wait(100) -- compare(spy.signalArguments[0][0], buttonToClick) -+ -+ compare(button, buttonToClick) - compare(exclusiveButtons.selectedButton, buttonToClick) -+ compare(count, 1) - - // No signal must be emitted. - mouseClick(exclusiveButtons.data[buttonToClick]) -- wait(100) -- compare(spy.count, 1) -+ -+ compare(button, buttonToClick) -+ compare(exclusiveButtons.selectedButton, buttonToClick) -+ compare(count, 1) - - container.destroy() - } diff --git a/net/linphone/files/patch-05-4f908ef b/net/linphone/files/patch-05-4f908ef deleted file mode 100644 --- a/net/linphone/files/patch-05-4f908ef +++ /dev/null @@ -1,25 +0,0 @@ -From 4f908efd12647d9e603c9c6247170e127129c71a Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Wed, 20 Jun 2018 14:32:53 +0200 -Subject: [PATCH] fix(Calls): avoid a crash with a bad binding (Qt 5.11) on - ConferenceControls - ---- - ui/modules/Linphone/Calls/Calls.qml | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) - -diff --git a/ui/modules/Linphone/Calls/Calls.qml b/ui/modules/Linphone/Calls/Calls.qml -index 89309129..b6f95bae 100644 ---- ui/modules/Linphone/Calls/Calls.qml -+++ ui/modules/Linphone/Calls/Calls.qml -@@ -93,9 +93,7 @@ ListView { - // --------------------------------------------------------------------------- - - header: ConferenceControls { -- readonly property bool isSelected: calls.currentIndex === -1 && -- calls._selectedCall == null && -- visible -+ readonly property bool isSelected: calls.currentIndex === -1 && calls._selectedCall == null - - height: visible ? ConferenceControlsStyle.height : 0 - width: parent.width diff --git a/net/linphone/files/patch-06-70f47b0 b/net/linphone/files/patch-06-70f47b0 deleted file mode 100644 --- a/net/linphone/files/patch-06-70f47b0 +++ /dev/null @@ -1,90 +0,0 @@ -From 70f47b01d375ab1d3687b2d448c601fdc15fab20 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Wed, 20 Jun 2018 14:56:53 +0200 -Subject: [PATCH] fix(App): do not create windows later to avoid warning and - abort (QQmlComponent: Cannot create new component instance before completing - the previous) - ---- - src/app/App.cpp | 40 +++++++++++++++++++--------------------- - src/app/App.hpp | 4 ++-- - 2 files changed, 21 insertions(+), 23 deletions(-) - -diff --git a/src/app/App.cpp b/src/app/App.cpp -index 36b68590..12661dd4 100644 ---- src/app/App.cpp.orig -+++ src/app/App.cpp -@@ -147,8 +147,6 @@ - qInfo() << QStringLiteral("Restarting app..."); - delete mEngine; - -- mCallsWindow = nullptr; -- mSettingsWindow = nullptr; - - CoreManager::uninit(); - -@@ -232,10 +230,7 @@ - - // ----------------------------------------------------------------------------- - --QQuickWindow *App::getCallsWindow () { -- if (!mCallsWindow) -- mCallsWindow = ::createSubWindow(mEngine, QML_VIEW_CALLS_WINDOW); -- -+QQuickWindow *App::getCallsWindow () const { - return mCallsWindow; - } - -@@ -245,18 +240,7 @@ - ); - } - --QQuickWindow *App::getSettingsWindow () { -- if (!mSettingsWindow) { -- mSettingsWindow = ::createSubWindow(mEngine, QML_VIEW_SETTINGS_WINDOW); -- QObject::connect(mSettingsWindow, &QWindow::visibilityChanged, this, [](QWindow::Visibility visibility) { -- if (visibility == QWindow::Hidden) { -- qInfo() << QStringLiteral("Update nat policy."); -- shared_ptr core = CoreManager::getInstance()->getCore(); -- core->setNatPolicy(core->getNatPolicy()); -- } -- }); -- } -- -+QQuickWindow *App::getSettingsWindow () const { - return mSettingsWindow; - } - -@@ -504,6 +488,17 @@ - - void App::openAppAfterInit () { - qInfo() << QStringLiteral("Open linphone app."); -+ -+ // Create other windows. -+ mCallsWindow = createSubWindow(mEngine, QML_VIEW_CALLS_WINDOW); -+ mSettingsWindow = createSubWindow(mEngine, QML_VIEW_SETTINGS_WINDOW); -+ QObject::connect(mSettingsWindow, &QWindow::visibilityChanged, this, [](QWindow::Visibility visibility) { -+ if (visibility == QWindow::Hidden) { -+ qInfo() << QStringLiteral("Update nat policy."); -+ shared_ptr core = CoreManager::getInstance()->getCore(); -+ core->setNatPolicy(core->getNatPolicy()); -+ } -+ }); - - QQuickWindow *mainWindow = getMainWindow(); - -diff --git a/src/app/App.hpp b/src/app/App.hpp -index cdae4a06..21ad9617 100644 ---- src/app/App.hpp.orig -+++ src/app/App.hpp -@@ -79,8 +79,8 @@ - exit(APP_CODE_RESTART); - } - -- Q_INVOKABLE QQuickWindow *getCallsWindow (); -- Q_INVOKABLE QQuickWindow *getSettingsWindow (); -+ Q_INVOKABLE QQuickWindow *getCallsWindow () const; -+ Q_INVOKABLE QQuickWindow *getSettingsWindow () const; - - Q_INVOKABLE static void smartShowWindow (QQuickWindow *window); - diff --git a/net/linphone/files/patch-07-7f62ae9 b/net/linphone/files/patch-07-7f62ae9 deleted file mode 100644 --- a/net/linphone/files/patch-07-7f62ae9 +++ /dev/null @@ -1,39 +0,0 @@ -From 7f62ae905a92507c078ca6e43a2e5474b60baec8 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Thu, 21 Jun 2018 11:31:33 +0200 -Subject: [PATCH] fix(ComboBox): import named QtQuick.Controls, avoid - `QQmlComponent: Component is not Ready` with Qt 5.11.1 - ---- - ui/modules/Common/Form/ComboBox.qml | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/ui/modules/Common/Form/ComboBox.qml b/ui/modules/Common/Form/ComboBox.qml -index 9d6a93bd..2e25d01b 100644 ---- ui/modules/Common/Form/ComboBox.qml -+++ ui/modules/Common/Form/ComboBox.qml -@@ -1,5 +1,5 @@ - import QtQuick 2.7 --import QtQuick.Controls 2.1 -+import QtQuick.Controls 2.1 as Controls - import QtQuick.Layouts 1.3 - - import Common 1.0 -@@ -10,7 +10,7 @@ import 'ComboBox.js' as Logic - - // ============================================================================= - --ComboBox { -+Controls.ComboBox { - id: comboBox - - // --------------------------------------------------------------------------- -@@ -82,7 +82,7 @@ ComboBox { - - // --------------------------------------------------------------------------- - -- delegate: ItemDelegate { -+ delegate: Controls.ItemDelegate { - id: item - - readonly property var flattenedModel: comboBox.textRole.length && diff --git a/net/linphone/files/patch-08-313aa68 b/net/linphone/files/patch-08-313aa68 deleted file mode 100644 --- a/net/linphone/files/patch-08-313aa68 +++ /dev/null @@ -1,29 +0,0 @@ -From 313aa682738fc877ee8ba78b1d4060e08739cc24 Mon Sep 17 00:00:00 2001 -From: Ronan Abhamon -Date: Fri, 19 Jan 2018 15:16:03 +0100 -Subject: [PATCH] feat(AppController): force default theme style - ---- - src/app/AppController.cpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/app/AppController.cpp b/src/app/AppController.cpp -index 2d353884..711e1a9b 100644 ---- src/app/AppController.cpp -+++ src/app/AppController.cpp -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - #include "gitversion.h" - -@@ -85,6 +86,7 @@ AppController::AppController (int &argc, char *argv[]) { - QCoreApplication::setApplicationVersion(APPLICATION_VERSION); - - mApp = new App(argc, argv); -+ QQuickStyle::setStyle("Default"); - if (mApp->isSecondary()) { - #ifdef Q_OS_MACOS - mApp->processEvents(); diff --git a/net/linphone/files/patch-CMakeLists.txt b/net/linphone/files/patch-CMakeLists.txt deleted file mode 100644 --- a/net/linphone/files/patch-CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ ---- CMakeLists.txt.orig 2017-07-21 13:14:18 UTC -+++ CMakeLists.txt -@@ -342,7 +342,6 @@ else () - endif () - - if (NOT WIN32) -- add_dependencies(update_translations check_qml) - endif () - set_target_properties(${TARGET_NAME} PROPERTIES OUTPUT_NAME "${EXECUTABLE_NAME}") - set_target_properties(${TESTER_TARGET_NAME} PROPERTIES OUTPUT_NAME "${TESTER_EXECUTABLE_NAME}") diff --git a/net/linphone/files/patch-resources.qrc b/net/linphone/files/patch-resources.qrc deleted file mode 100644 --- a/net/linphone/files/patch-resources.qrc +++ /dev/null @@ -1,16 +0,0 @@ ---- resources.qrc.orig 2017-06-29 09:20:37 UTC -+++ resources.qrc -@@ -1,13 +1,5 @@ - - -- assets/fonts/NotoSans-hinted/NotoSans-BoldItalic.ttf -- assets/fonts/NotoSans-hinted/NotoSans-Bold.ttf -- assets/fonts/NotoSans-hinted/NotoSans-Italic.ttf -- assets/fonts/NotoSans-hinted/NotoSans-Regular.ttf -- assets/fonts/NotoSans-hinted/NotoSansUI-BoldItalic.ttf -- assets/fonts/NotoSans-hinted/NotoSansUI-Bold.ttf -- assets/fonts/NotoSans-hinted/NotoSansUI-Italic.ttf -- assets/fonts/NotoSans-hinted/NotoSansUI-Regular.ttf - assets/images/add_disabled.svg - assets/images/add_hovered.svg - assets/images/add_normal.svg diff --git a/net/linphone/files/patch-src-app-AppController.cpp b/net/linphone/files/patch-src-app-AppController.cpp deleted file mode 100644 --- a/net/linphone/files/patch-src-app-AppController.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/app/AppController.cpp.orig 2018-11-11 20:28:45 UTC -+++ src/app/AppController.cpp -@@ -34,7 +34,7 @@ - #define APPLICATION_VERSION "4.1.1" - #define APPLICATION_MINIMAL_QT_VERSION "5.9.0" - --#define DEFAULT_FONT "Noto Sans" -+#define DEFAULT_FONT "sans-serif" - - using namespace std; - diff --git a/net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp b/net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp new file mode 100644 --- /dev/null +++ b/net/linphone/files/patch-src_components_other_desktop-tools_DesktopTools.hpp @@ -0,0 +1,11 @@ +--- src/components/other/desktop-tools/DesktopTools.hpp.orig 2022-07-05 13:20:17 UTC ++++ src/components/other/desktop-tools/DesktopTools.hpp +@@ -23,7 +23,7 @@ + + #include + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD) + #include "DesktopToolsLinux.hpp" + #elif defined(Q_OS_WIN) + #include "DesktopToolsWindows.hpp" diff --git a/net/linphone/pkg-plist b/net/linphone/pkg-plist --- a/net/linphone/pkg-plist +++ b/net/linphone/pkg-plist @@ -1,8 +1,4 @@ bin/linphone -bin/linphone-tester +lib/linphone/libapp-plugin.so share/applications/linphone.desktop share/icons/hicolor/scalable/apps/linphone.svg -%%DATADIR%%/assistant/create-linphone-sip-account.rc -%%DATADIR%%/assistant/use-linphone-sip-account.rc -%%DATADIR%%/assistant/use-other-sip-account.rc -%%DATADIR%%/linphonerc-factory