+ Add button to delete messages on file transfer
+ Show "Deleted media" on deleted files.
+ Update last interaction
+ Update icon for saving file, we're in 2024, no more floppy disk
Change-Id: I607b1a6beda443db85c60d8cf95a9aae29ce1f7c
GitLab: #1287
The "success" property of the wrong component was being set in the
"on-link-device" signal handler. This commit fixes that.
Gitlab: #1788
Change-Id: I99c9abbfa31ea9ea6e7828dbbed0a21081f8be19
Non-ASCII characters in UTF-8 are encoded with multiple bytes. Testing with these characters ensures that the decoder correctly interprets multi-byte sequences.
Gitlab: #1536
Change-Id: I0a92ee91b6cd26d70daab1f9baef3a9577aee02e
This update fixes an issue where a stale account list might be used
in AccountListModel by synchronizing list invalidation with a newly
introduced signal (accountsReordered). This change prevents a data race
that could occur due to the asynchronous nature of setting the account
order over D-Bus, or when queuing the signal handling for
accountsChanged, which is emitted only once the reordering is saved.
As a result, QAbstractItemModel mutations are now performed within AccountListModel instead of in the UI.
Gitlab: #1638 (Account list in popup is incorrect after selection)
Change-Id: I7ed6eeb45eb319f21e40554f3d023ad24e139a6f
This allow to show the correct sending/sent/state for the interaction
separated from the status of the dataTransfer. Else, we see a sent
check for a file even if the peer didn't receive the file
Change-Id: I15b9f0abc6a26a2ffd007be26827e9a37e859bca
If we're a member of a group swarm, we will receive profiles from
non contact (the other members of a conversation).
This patch try to get from cache before calling getContact() to be
able to retrieve profiles from non contacts if stored by the daemon
Change-Id: I864f1d5dd9f65232751e170b930606d23241d283
We do not need to write an empty profile since the daemon fully
manages the profile. Just update it from cache when new profile
is detected
GitLab: #1627
Change-Id: I31035f0666925d13f339f387e614f148b0eece8b
getContacts() is called before sync is finished. This should be
done like conversations, after first initializing.
This fix the presence showing after sync.
GitLab: #1627
Change-Id: I4ec9b7e34b5bd93b9ae4437e6c6719dbc3b78a98
In the current implementation, the chatViewContainer of callStackView
is not destroyed for a swarm conference call because there are no
signals for call changes.This patch ensures chatViewContainer is used
when there is no call.
GitLab: #1625
Change-Id: Iefc39b747d92543244d30aa987eda134ff0a03f3
In response to an issue that would cause a lost window when minimizing to tray on a system without a systray, commit 316750a introduced a bug for versions of Qt that would return null icon geometry even when the icon was visible. Subsequently, this was byspassed with commit f25e66a which only applied to GNU/Linux systems, leaving the hack inplace for Windows and macOS where the bug had not originally occured.
This commit:
- makes the "MinimizeOnClose" option always visible
- uses Qt's built-in method for "isSystemTrayIconVisible"
- changes the default "MinimizeOnClose" setting to true
Gitlab: #1623
Change-Id: I3b99c7fb952eedea63ae9c12d207ceb3c9bd4988
The function which is responsible for muting the camera when accepting
a call in audio assumes that the call's mediaList has already been
initialized, but this wasn't actually the case. This caused a bug where
the 'Accept in audio' button behaved exactly like the 'Accept in video'
button.
GitLab: #1621
Change-Id: I26251f51862cf5cd9b6d4daaf15270943c0e3c4e
This is necessary because we use the core20 base snap, which is built
from Ubuntu 20.04 and therefore doesn't have a recent enough version of
PipeWire available by default.
Change-Id: Id039ec446f4b3f0e89b9ec27f37f81cfd6b3587e
This commit replaces a StackLayout with a Loader allowing us to load initial and ongoing call views dynamically based on the current conversation's call state.
This may fix several issues related to conversation loading including a possible uncaught binding loop based on observing CurrentConversation.id changes.
- small header clean up
Change-Id: Idfc723d8b39f19aafb026c19f26590910b5c26cd
- adds a task to toggle testing configuration
- removes the test run launch configuration (now a task)
- adds macOS support and fixes gtest CMake integration
- removes the IPC launch configuration as it doesn't work correctly without delaying the client
Change-Id: I89e1f3abd0e050e0bcf205f1331596c660dd0d34
The RPM automatic dependency generator adds provides for all
libraries under %{_libdir}. When vendoring libraries you must disable
this behaviour, otherwise other packages that link against Qt will
not pull in the distro qt packages if jami-libqt is already installed
Change-Id: I3f0a018ea12be7f29d04ca4441cbfdebc2efb909
- specifies some include paths
- enforces LF eol
- encourages clang-format use
- adds a comment regarding the IPC task
Note: currently GNU/Linux-specific
Change-Id: Ib208aca33026bf1c15a3ef18020805ceb20aa55f