1
0
Fork 0
mirror of https://git.jami.net/savoirfairelinux/jami-client-qt.git synced 2025-07-19 15:05:40 +02:00
Commit graph

29 commits

Author SHA1 Message Date
Sébastien Blin
32b76c8da4 messagelist: use history given from daemon (except SIP accounts)
With Jami-Daemon >= 14.0.0, the client doesn't need to construct
itself the history. This part is now handled by the daemon.
This patch uses the new API:
+ loadConversationMessages->loadConversation
+ SwarmMessageReceived/SwarmMessageUpdated/ReactionAdded/ReactionRemoved
+ remove MessageReceived
+ ConversationLoaded->SwarmLoaded

+ No need to use loadConversationUntil, the daemon will load whatever
the client needs.
+ No need to clear cache, just reset the body and emit data changes

Everything should work like before (even re-translation & changing
preview preference)

Change-Id: Iaf1fa3e84e8e157ae2d0bec210977f9a34415ebc
2024-01-02 15:22:10 -05:00
Sébastien Blin
8de099e38d MessageOptionsPopup: add option to locally delete file
This button offers an option to remove sent/downloaded files
from the device.

Change-Id: Ida1b135681243fd6055034d8a2d699d11bf040e5
GitLab: #1287
2023-09-12 10:59:23 -04:00
lcoursodon
83039abc1b TextEditor: General upgrade
Implement new design
Add multiline button
Use correct color and implement dark theme

GitLab: #1096
Change-Id: I5699c81fbc41e50300ca8b32b93ee47cd17ceee1
2023-07-13 13:48:00 -04:00
Sébastien Blin
cb31ea3575 messagesadapter: fix click on reply header
The signature was incorrect

Change-Id: I35454bd96cea2d2eb959a80605375e1eb962a0da
2023-06-14 15:41:38 -04:00
Andreas Traczyk
8db188c513 chat: preprocess text msgs w/md4c+tidy-html5
Introduces MessageParser to encapsulate text treatment for raw text messages.

The async parsing sequence is as follows:
- Markdown -> HTML (md4c)
- link coloration (tidy-html5)
- notify UI
- request link preview info from PreviewEngine for the first link
- Preview engine uses QtNetwork instead of QtWebengine
- Linkification is handled by MessageParser instead of linkify.js

QtWebengine is no longer required for message parsing.

Gitlab: #1033
Gitlab: #855
Change-Id: Ief9b91aa291caf284f08230acaf57976f80fa05b
2023-05-15 15:44:20 -04:00
Sébastien Blin
53374b7ded chatview: add toast on file saved
Change-Id: Ie3ab68213f9337d5124eda4f989fb23c0e084d64
GitLab: #1027
2023-05-12 09:37:05 -04:00
Sébastien Blin
5f98f7cdc6 qt6: fix startSearch usage
Overload incorrectly managed by Qt 6.5 and we must pass a const ref

Change-Id: Ib0a85165b59f6cffd3f01815b803f666623e1b89
2023-05-03 15:04:13 -04:00
Sébastien Blin
0de8f019b2 conversation: add the possibility to answer with a file
Also remove retryInteraction as useless in new versions.

Change-Id: I79a016c9fa7b8bc4d5fcdb0aeff51d78aea2f314
GitLab: #1017
2023-03-06 14:46:07 -05:00
Franck Laurent
d5064040d7 MessageListView: fix message bubble UI
+ redesign the "Scroll to end of conversation"
+ redesign the "bubble / screen ratio"
+ redesign the reply bubbles: color, shape(in & out a message sequence), "In reply To" message
+ change the configurable color of the main user's bubbles
+ show the display name when replying to a transfer message
+ fix incorrectly loaded reply message data by synchronizing to messages loaded request
+ fix reply to an internet link
+ redesign the call bubbles (the new design need to be applied but in another patch)

GitLab: #959
GitLab: #967

Change-Id: Id646ff875644425b03367838b5b46f2242294563
2023-03-01 13:38:05 -05:00
Sébastien Blin
3570b23d8a swarmdetailspanel: show kicked contacts if administrator
This patch avoid for non-admins to try to re-add kicked members
as filtered out from the list. However kicked members are only
visible for administrators.

Change-Id: Ie01b7071c072d147bbc0f39e477cc24d7fd58b1a
2023-02-20 09:05:24 -05:00
Nicolas Vengeon
06ab19f213 Feature: search messages
Change-Id: Ia458e2e6ee183cad9d0418af0dbbbcd990f14281
GitLab: #918
2023-02-20 09:04:49 -05:00
Andreas Traczyk
14ae000686 mainapp: dynamically load views
Introduces the ViewCoordinator component to promote dynamic view loading and reduce coupling between components.

The following objects are now created and destroyed as needed:
- SettingsView
- WizardView
- dialogs

Further refactoring will be required in order to do the same with the ConversationView, which now parents the ChatView and the CallStackView.

Gitlab: #897
Change-Id: Ice6a0c133e62e1e0c8d7fb99ec2c41234c049b59
2023-02-17 13:59:28 -05:00
Amin Bandali
8d46acedf1 misc: Update copyright years to 2023
Change-Id: Idf38e82631a4e22540aa5dec8ec2db0ab4a38c2e
2023-02-06 01:47:15 -05:00
Nicolas Vengeon
b2643f5967 messagelistmodel: correctly search for index in model
Iterate through CPP elements and use positionView(ListView.Center)
as other approach seems bugguy or slower.

Change-Id: I43879969ccb457166879a156efb482e77ff07d6b
2023-02-05 16:35:30 -05:00
Sébastien Blin
5db4d29b73 messageadapter: fix types filtering
Some types where missing, causing the chatview to not show all
messages.

Change-Id: I2ac1dfa03de8330b38f2828e66eead7114b2cfe6
2023-02-05 16:35:30 -05:00
Nicolas Vengeon
6348d3ee0b Smartlist: Date should show in correct locale format
- Standard time/date is now used
- If today, show local time, otherwise show local date

GitLab: #545
Change-Id: I07f1e706868c725d1c917c473dc0fdbad8d6810f
2023-02-03 09:06:27 -05:00
Nicolas Vengeon
bb9b50ef99 messaging: revert to using QSortFilterProxyModel for the message list
SFPM performs poorly compared to its C++ counterpart in cases where re-filtering often is required. Tests show SFPM taking roughly 10x that of QSFPM in certain cases when the entire conversation needs to be loaded.

Change-Id: I25792f0ab376ae11d42073a548934b743e59fa3e
2023-02-02 12:13:40 -05:00
Nicolas Vengeon
7bb5ad0ee0 Emoji: Implement emoji-reactions
Change-Id: I83f27e86a6a7ee2140dc3028a4e183dcb8de8a27
GitLab: #875
2022-12-14 16:06:53 -05:00
Nicolas Vengeon
f7ce62bfab fix: Hyperlinks hard to see
Hyperlinks now adapt to bubble color

Change-Id: I8f45b5f0ae103a751d47bf1bc1844f481838caa0
Gitlab: #764
2022-12-09 16:15:00 -05:00
Sébastien Blin
0996b167d9 swarm: add call buttons and interactions for multi-swarm
+ Add call buttons to start a new call
+ React to events from the swarm
+ call interactions (Join call/Call ended, etc)
+ active calls area
+ Add call management logic in LRC
+ Feature is enabled via the experimental checkbox

https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/312
Change-Id: I83fd20b5e772097c0792bdc66feec69b0cb0009a
2022-11-17 13:16:02 -05:00
Nicolas Vengeon
7a34209583 feature: documents flow in the swarmDetailsPanel
Change-Id: I24a94b9ced0ec3930a0b9e20f3fa0440e2d8fd00
Signed-off-by: Nicolas Vengeon <nicolas.vengeon@savoirfairelinux.com>
2022-10-27 09:30:01 -04:00
Sébastien Blin
47cd60fbe4 messagelistmodel: support message edition
Handle application/edited-message type to support message edition.
Previous bodies are saved in the interaction to be able to get the
original post to avoid unwanted editions.

While loading a conversation, we store the editions in a temporary
map that we link once the edited message is detected. This work
because we can't edit a message before this message exists.
PreviousBodies in interaction.h contains every previous body detected
and the client can show previous version of the message in a popup.

Deleting a message works the same way, just that any message
with an empty body is not shown.

https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/316

Change-Id: Ib158abd16ad4b629532de11694e88d86a12d72a8
2022-10-25 16:15:22 -04:00
Nicolas
d6ed9adf32 chatview: timestamp improvements
New timestamp computation and sequencing ( by day and hour)

GitLab: #827
Change-Id: Ie170f31c075dc37f00d393272410329dc045f2d3
2022-10-07 09:33:17 -04:00
Andreas Traczyk
cda1f335e7 messagelistmodel: replace C++ filter proxy model with QML-SFPM
Change-Id: I7471b4cf5539bd253d4d1b9e9b2bfd10030a9525
2022-09-26 12:28:43 -04:00
Sébastien Blin
6f18afbaac chatview: add ability to reply to a specific message
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/318
Change-Id: I79916422b90c6eb12252c96bb12e209188a81f94
2022-08-24 12:59:38 -04:00
Sébastien Blin
9adddd0d89 messagesadapter: better file's detection
use QMimeDatabase to detect file's extension.

GitLab: #738
Change-Id: I47c74ef3011881d9694c9c54ab4de7f8a2af86e3
2022-07-11 08:56:54 -04:00
Sébastien Blin
300ac17db3 contactmodel: rework ban status
And do not ban contact when removing conversation.

Change-Id: Ia76c76b265dd2a9d7d3cc8e2f869bf74fd3cbe63
2022-07-05 11:02:49 -04:00
Amin Bandali
70a89500a6 misc: drop remnants of the old and now-unused web chatview
GitLab: #749
Change-Id: Ie58f458d44b1d643632842e2fb44aad19571405b
2022-06-09 16:10:15 -04:00
Amin Bandali
c7fdf3ff30 misc: move application sources from 'src/' to 'src/app/'
In preparation for vendoring libjamiclient into 'src/libclient/'.

GitLab: #734
Change-Id: Ibd956abc8fe9bd454ac0e9a5a28b77a5a74174e7
2022-05-19 15:47:30 -04:00
Renamed from src/messagesadapter.h (Browse further)