animation on progress status account connection + key binding open research in history

This commit is contained in:
Gaelle Braud 2025-08-04 17:02:47 +02:00
parent 55ce938d0b
commit 6ccbdf6ef8
5 changed files with 657 additions and 626 deletions

View file

@ -67,7 +67,7 @@ ListView {
}
}
onAtYEndChanged: if (atYEnd) {
onAtYEndChanged: if (atYEnd && chat) {
chat.core.lMarkAsRead()
}
onAtYBeginningChanged: if (atYBeginning) {

View file

@ -24,7 +24,7 @@ Loader{
: contact
? contact.core.defaultAddress
: ''
readonly property string address: SettingsCpp.hideSipAddresses ? UtilsCpp.getUsername(_address) : _address
readonly property var address: SettingsCpp.hideSipAddresses ? UtilsCpp.getUsername(_address) : _address
property var displayNameObj: UtilsCpp.getDisplayName(_address)
property var displayNameVal: account && account.core.displayName
? account.core.displayName
@ -126,6 +126,14 @@ Loader{
: (contact
? contact.core?.presenceIcon
: "")
RotationAnimator on rotation {
running: mainItem.account && mainItem.account.core.registrationState === LinphoneEnums.RegistrationState.Progress
direction: RotationAnimator.Clockwise
from: 0
to: 360
loops: Animation.Infinite
duration: 10000
}
}
}

View file

@ -73,15 +73,24 @@ Control.Control{
RowLayout {
anchors.fill: parent
Image {
sourceSize.width: 11 * DefaultStyle.dp
sourceSize.height: 11 * DefaultStyle.dp
id: registrationImage
sourceSize.width: Math.round(11 * DefaultStyle.dp)
sourceSize.height: Math.round(11 * DefaultStyle.dp)
smooth: false
Layout.preferredWidth: 11 * DefaultStyle.dp
Layout.preferredHeight: 11 * DefaultStyle.dp
Layout.preferredWidth: Math.round(11 * DefaultStyle.dp)
Layout.preferredHeight: Math.round(11 * DefaultStyle.dp)
source: presenceBar.isRegistered
? mainItem.account.core.presenceIcon
: mainItem.account?.core.registrationIcon || ""
Layout.leftMargin: 8 * DefaultStyle.dp
Layout.leftMargin: Math.round(8 * DefaultStyle.dp)
RotationAnimator on rotation {
running: mainItem.account && mainItem.account.core.registrationState === LinphoneEnums.RegistrationState.Progress
direction: RotationAnimator.Clockwise
from: 0
to: 360
loops: Animation.Infinite
duration: 10000
}
}
Text {
id: presenceOrRegistrationText

View file

@ -9,7 +9,7 @@ import UtilsCpp
import SettingsCpp
import 'qrc:/qt/qml/Linphone/view/Style/buttonStyle.js' as ButtonStyle
RowLayout {
FocusScope {
id: mainItem
property ChatGui chat
// used to show chat message reactions in details panel
@ -19,7 +19,6 @@ RowLayout {
property CallGui call
property alias callHeaderContent: splitPanel.headerContentItem
property bool replyingToMessage: false
spacing: 0
enum PanelType { MessageReactions, SharedFiles, Medias, ImdnStatus, ForwardToList, ManageParticipants, EphemeralSettings, None}
signal oneOneCall(bool video)
@ -51,8 +50,17 @@ RowLayout {
}
Keys.onPressed: (event) => {
if (event.modifiers & Qt.ControlModifier && event.key === Qt.Key_F) searchBarLayout.visible = true
event.accepted = false
if (event.modifiers & Qt.ControlModifier && event.key === Qt.Key_F) {
searchBarLayout.visible = true
event.accepted = true
}
}
RowLayout {
anchors.fill: parent
spacing: 0
//onEventChanged: {
// TODO : call when all messages read after scroll to unread feature available
@ -162,6 +170,10 @@ RowLayout {
}
spacing: Math.round(50 * DefaultStyle.dp)
height: Math.round(65 * DefaultStyle.dp)
Connections {
target: mainItem
function onChatChanged() {searchBarLayout.visible = false}
}
SearchBar {
id: chatMessagesSearchBar
Layout.fillWidth: true
@ -235,6 +247,7 @@ RowLayout {
anchors.fill: parent
anchors.leftMargin: Math.round(18 * DefaultStyle.dp)
anchors.rightMargin: Math.round(18 * DefaultStyle.dp)
onActiveFocusChanged: console.log("chat messages focus", activeFocus)
Control.ScrollBar.vertical: scrollbar
onShowReactionsForMessageRequested: (chatMessage) => {
mainItem.chatMessage = chatMessage
@ -706,3 +719,4 @@ RowLayout {
}
}
}
}

View file

@ -334,8 +334,8 @@ AbstractMainPage {
SelectedChatView {
visible: chat != undefined && chat != null
anchors.fill: parent
chat: mainItem.selectedChatGui || null
onChatChanged: if (mainItem.selectedChatGui !== chat) mainItem.selectedChatGui = chat
chat: mainItem.selectedChatGui ? mainItem.selectedChatGui : null
}
}
}