From 3a7ec593366363f930a84caade9daea258df7a3c Mon Sep 17 00:00:00 2001 From: Gaelle Braud Date: Tue, 5 Aug 2025 16:10:28 +0200 Subject: [PATCH] fix #LINQT-1868 magic search list display name/addresses ui --- Linphone/core/search/MagicSearchList.cpp | 5 ++++- .../view/Control/Display/Contact/AllContactListView.qml | 8 ++++---- Linphone/view/Control/Display/Contact/ContactListItem.qml | 7 ++++++- Linphone/view/Control/Display/Contact/ContactListView.qml | 1 + Linphone/view/Page/Layout/Main/MainLayout.qml | 1 - Linphone/view/Page/Main/Contact/ContactPage.qml | 1 - 6 files changed, 15 insertions(+), 8 deletions(-) diff --git a/Linphone/core/search/MagicSearchList.cpp b/Linphone/core/search/MagicSearchList.cpp index b7c714caa..74fc971f5 100644 --- a/Linphone/core/search/MagicSearchList.cpp +++ b/Linphone/core/search/MagicSearchList.cpp @@ -115,10 +115,13 @@ void MagicSearchList::setSelf(QSharedPointer me) { splitted.removeFirst(); contact->setFamilyName(splitted.join(" ")); } else { - contact->setGivenName(Utils::coreStringToAppString(address->getUsername())); + contact->setGivenName(displayName.isEmpty() + ? Utils::coreStringToAppString(address->getUsername()) + : displayName); } contact->setDefaultFullAddress(Utils::coreStringToAppString( address->asString())); // linphone Friend object remove specific address. + contact->setDefaultAddress(Utils::coreStringToAppString(address->asString())); contacts->append(contact); } else if (!it->getPhoneNumber().empty()) { auto phoneNumber = it->getPhoneNumber(); diff --git a/Linphone/view/Control/Display/Contact/AllContactListView.qml b/Linphone/view/Control/Display/Contact/AllContactListView.qml index 18f3e2017..d66c3e5ce 100644 --- a/Linphone/view/Control/Display/Contact/AllContactListView.qml +++ b/Linphone/view/Control/Display/Contact/AllContactListView.qml @@ -14,7 +14,6 @@ Flickable { flickableDirection: Flickable.VerticalFlick property bool showInitials: true // Display Initials of Display name. - property bool showDefaultAddress: true // Display address below display name. property bool showActions: false // Display actions layout (call buttons) property bool showContactMenu: true // Display the dot menu for contacts. property bool showFavorites: true // Display the favorites in the header @@ -269,7 +268,7 @@ Flickable { showActions: mainItem.showActions showInitials: mainItem.showInitials showContactMenu: mainItem.showContactMenu - showDefaultAddress: mainItem.showDefaultAddress + showDefaultAddress: false selectionEnabled: mainItem.selectionEnabled multiSelectionEnabled: mainItem.multiSelectionEnabled selectedContacts: mainItem.selectedContacts @@ -315,7 +314,7 @@ Flickable { showActions: mainItem.showActions showInitials: mainItem.showInitials showContactMenu: mainItem.showContactMenu - showDefaultAddress: mainItem.showDefaultAddress + showDefaultAddress: false selectionEnabled: mainItem.selectionEnabled multiSelectionEnabled: mainItem.multiSelectionEnabled selectedContacts: mainItem.selectedContacts @@ -368,7 +367,8 @@ Flickable { highlightText: mainItem.highlightText showActions: mainItem.showActions showContactMenu: mainItem.showContactMenu - showDefaultAddress: mainItem.showDefaultAddress + showDefaultAddress: true + showDisplayName: false selectionEnabled: mainItem.selectionEnabled multiSelectionEnabled: mainItem.multiSelectionEnabled selectedContacts: mainItem.selectedContacts diff --git a/Linphone/view/Control/Display/Contact/ContactListItem.qml b/Linphone/view/Control/Display/Contact/ContactListItem.qml index e4b681a2e..e6fe2ba9b 100644 --- a/Linphone/view/Control/Display/Contact/ContactListItem.qml +++ b/Linphone/view/Control/Display/Contact/ContactListItem.qml @@ -14,6 +14,7 @@ FocusScope { property var searchResultItem property bool showInitials: true // Display Initials of Display name. property bool showDefaultAddress: true // Display address below display name. + property bool showDisplayName: true // Display name above address. property bool showActions: false // Display actions layout (call buttons) property bool showContactMenu: true // Display the dot menu for contacts. property string highlightText @@ -77,6 +78,10 @@ FocusScope { ColumnLayout { spacing: 0 Text { + id: displayNameText + visible: mainItem.showDisplayName + Layout.fillWidth: true + Layout.preferredHeight: visible ? implicitHeight: 0 text: UtilsCpp.boldTextPart(mainItem.displayName, mainItem.highlightText) font { @@ -85,11 +90,11 @@ FocusScope { weight: mainItem.showDefaultAddress ? Typography.h4.weight : Typography.p1.weight } maximumLineCount: 1 - Layout.fillWidth: true } Text { Layout.topMargin: Math.round(2 * DefaultStyle.dp) Layout.fillWidth: true + Layout.preferredHeight: visible ? implicitHeight: 0 visible: mainItem.showDefaultAddress property string address: SettingsCpp.hideSipAddresses ? UtilsCpp.getUsername(mainItem.addressFromFilter) diff --git a/Linphone/view/Control/Display/Contact/ContactListView.qml b/Linphone/view/Control/Display/Contact/ContactListView.qml index b0a2ece26..bd09c1ca5 100644 --- a/Linphone/view/Control/Display/Contact/ContactListView.qml +++ b/Linphone/view/Control/Display/Contact/ContactListView.qml @@ -15,6 +15,7 @@ ListView { property string title property bool showInitials: true // Display Initials of Display name. property bool showDefaultAddress: true // Display address below display name. + property bool showDisplayName: true // Display name above address. property bool showActions: false // Display actions layout (call buttons) property bool showContactMenu: true // Display the dot menu for contacts. property bool showFavorites: true // Display the favorites in the header diff --git a/Linphone/view/Page/Layout/Main/MainLayout.qml b/Linphone/view/Page/Layout/Main/MainLayout.qml index 073043817..b00b46cd8 100644 --- a/Linphone/view/Page/Layout/Main/MainLayout.qml +++ b/Linphone/view/Page/Layout/Main/MainLayout.qml @@ -282,7 +282,6 @@ Item { showActions: true showFavorites: false selectionEnabled: false - showDefaultAddress: true searchOnEmpty: false sectionsPixelSize: Typography.p2.pixelSize diff --git a/Linphone/view/Page/Main/Contact/ContactPage.qml b/Linphone/view/Page/Main/Contact/ContactPage.qml index 8b70e1f22..50c8354e5 100644 --- a/Linphone/view/Page/Main/Contact/ContactPage.qml +++ b/Linphone/view/Page/Main/Contact/ContactPage.qml @@ -290,7 +290,6 @@ FriendGui{ Layout.rightMargin: Math.round(8 * DefaultStyle.dp) searchBarText: searchBar.text hideSuggestions: true - showDefaultAddress: false sourceFlags: LinphoneEnums.MagicSearchSource.Friends | LinphoneEnums.MagicSearchSource.FavoriteFriends | LinphoneEnums.MagicSearchSource.LdapServers