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

37 commits

Author SHA1 Message Date
Ming Rui Zhang
b3d853a0d1 messagewebview: QML invition page implementation
Gitlab: #469

Change-Id: I661185530ee3703527fd85a7022b42a3bcb7f579
2021-07-12 17:42:30 -04:00
Andreas Traczyk
285316dd32 lrcinstance: remove custom setter/getter for currentAccountId
Using a custom getter setter cause the setting of the value to
require manual changed signal emission and in addition to being
error prone, this prevents the changed signal from being emitted
upon initial selection. Some excess workaround code may be removed
in following commits.

This patch also refactors the banned contact signaling as part of
an accountadapter connection cleanup.

Change-Id: I73fb751001e53e086adc7a6a8d706671c2878a77
2021-07-09 15:11:27 -04:00
Ming Rui Zhang
f8d5ab7fe7 messagewebview: chatview message bar qml replacement - logic completion
Functionalities checklist:
  1. Emoji picker refinement
  2. DropArea on messageWebView
  3. Record box
  4. Send message button visibility
  5. TextArea paste (can paste image, files directly)
  6. TextArea content draft
  7. TextArea - Enter key -> Send message
  8. TextArea - Shift + Enter key -> New line
  9. TextArea - Composing indicator
  10. TextArea - Placeholder text

Change-Id: I115ad2927b74264dd396aa55b77a8f003dcd746b
2021-07-09 12:04:32 -04:00
Sébastien Blin
4e3cf29eb6 chatview: react to save button
Change-Id: I33717f148b837475a4f4874f327ed86de6f441cf
2021-06-29 17:35:50 -04:00
Andreas Traczyk
0234fc6f94 conversations: respond to needsSyncingSet signal
When the needsSyncingSet signal is caught, we need to update the
UI to change filter tab, reload the conversation, etc.

Change-Id: I70170d75afa50acad6e79d53fcaeb82752c38e81
2021-06-25 17:29:00 -04:00
Sébastien Blin
cbcc0e4752 messagesadapter: fix composing connection
GitLab: https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/455
Change-Id: I91b00492dfd9ef856cdc5a620085b77c4ec6ac68
2021-06-25 15:36:36 -04:00
Andreas Traczyk
83bb6fb082 conversations: refactor list reselection when making permanent
This should fix a race condition preventing the right conversation
from being selected after an outgoing interaction and, more rarely,
accepting an invitation.

Change-Id: Iccd1f91ba4d46285c2f1e4594122a736824b752f
2021-06-25 15:27:41 -04:00
Ming Rui Zhang
cdaa3cfeed conversations: selection refinement for refuseInvitation and blockConversation
1. Decline invites now auto-select the next one and de-select the
   conversion when there are no more invites
2. Block conversations behaves the same as before

Gitlab: #402

Change-Id: Ibd3385e40cb2329d58ea90aa3347dfa4b66a4496
2021-06-11 17:53:08 -04:00
Sébastien Blin
f0675434b9 misc: fixes
Change-Id: I83161997e655cbb626f6577cedb53d3b67786c7f
2021-06-11 17:50:47 -04:00
Sébastien Blin
bd3b2f223f fileTransfer: add support for swarm
Change-Id: Ie22618d01a2fa6fb38ced8d2aef6f9524401ce24
2021-06-11 17:50:37 -04:00
Sébastien Blin
1355111e02 swarm: add sync window
Change-Id: I0727737c8a9c4998ed66065fb1011389a502b0f9
2021-06-11 17:50:01 -04:00
ababi
951eb3cf85 swarm: add support for lazy loading conversations
depends on https://review.jami.net/c/ring-lrc/+/16720

Change-Id: Ic254459827c189fc92595be6e2485e0eed31edd8
2021-06-11 17:49:07 -04:00
Sébastien Blin
3d71bfa8ae swarm: first implementation to follow api changes
- use QString for interactionId

- swarm conversations: use loadConversationMessages and
subscribe to newMessagesAvailable signal

- avoid displaying "merge" and empty "data transfer" messages

- link composing status

Change-Id: Ic524bb786b2ff0471f03b1bb02d41d6da38e716a
2021-06-11 17:47:27 -04:00
Sébastien Blin
e8edb15350 ongoingcall: show chatview when receiving new interaction
Change-Id: I97c5f42ab622bb87666203a251915dbbb5b5d84d
GitLab: #429
2021-05-27 18:01:51 -04:00
Andreas Traczyk
e64a9e7ee7 sidepanel: improve smartlist interface with underlying models
Minor cosmetic changes to the account combo box, search bar, filter
tabs, and smartlist.

Change-Id: Ie8173504859b325374e42f0dbb4e0ae75f3ed740
Gitlab: #373
Gitlab: #374
Gitlab: #388
2021-05-07 15:41:28 -04:00
ababi
61de0c4eef misc: follow chatview and side panel design changes
- Remove icons and resize side panel tab bar.

- Change icons and style for chatview header and combo box buttons.

- Update chatview colors.

Gitlab: #241

Change-Id: Ic5f4e0db5e1912c85cc4f658264371af8104cd8f
2021-04-19 14:36:32 -04:00
Mingrui Zhang
2e60568307 project: don't use Qt keywords for signal/slot/emit
Gitlab: #320
Change-Id: Ia2a16a05be3fd6452a39df999660a5c8440eea13
2021-04-02 15:37:43 -04:00
Andreas Traczyk
4ce208ec33 injection: remove the remaining c++ singleton classes
- refactor qml object registration
- inject AppSettingsManager and SystemTray

Gitlab: #320
Change-Id: Ic8232a290003245d09ad9452c9f5518fd260af78
2021-04-02 15:37:33 -04:00
Andreas Traczyk
e60eeff357 injection: place parent QObject as last parameter in ctors
Lrc object injection should never be a null pointer.

Change-Id: Ib574c751673fd35e223ce2447cee74bce7dfbf3e
Gitlab: #337
2021-04-02 15:37:33 -04:00
ababi
89d58e5243 misc: check "default moderators" list when removing contact
Avoid having a removed contact on the "default moderators" list.

Gitlab: #309

Change-Id: I710fe3e096be830e3cd9cfc93f2f46fb60eb20f0
2021-03-26 15:08:31 -04:00
ababi
f27f4374a2 smartlist: switch to conversations tab on invitation accept
- switch tab to conversations smartlist
- go to welcomeview

TODO: define UI behavior while waiting for the smartlist update

Gitlab: #284

Change-Id: I251c49e5b0b418f41d5872ef09d32db5bc940df2
2021-03-26 10:40:26 -04:00
Ming Rui Zhang
7951764b2e misc: remove LRC singleton
GitLab: #337

Change-Id: Ifb671d38d364714818650a8154c43a5787460039
2021-03-22 15:47:14 -05:00
Mingrui Zhang
8b2512c513 messagesadapter: clear conversation uid cache if it is currently selected
For clearConversationHistory and removeConversation

Gitlab: #252

Change-Id: I3008cf20ddace5d3395465bd328a460c72e4c07f
2021-01-07 15:30:56 -04:00
Sébastien Blin
4ca581e134 settings: add some chatview settings
Add:
+ Display images and videos into the chatview
+ Show typing indicators

Change-Id: Icf5575ae9b176254394399073fe3926130ecc428
Gitlab: #160
2020-12-03 14:45:59 -05:00
Ming Rui Zhang
28f19d33a0 i18n: adaptation for lrc chatview translation
Change-Id: I9fdb6a5646e487c974fe8884e36277985c48fa2a
2020-10-14 15:43:24 -04:00
ababi
95df47c717 misc: fix contact request UI issues
- switch between "conversations" - "invitations" smartlists according to call origin
- "Accept Request" button from msg's view header: hide on contact accepted, set on view load according to userType
- correct requests smartlist item selection on tab switch
- accept incoming call from pending contact makes conversation permanent

Gitlab: #74

Change-Id: Iadfef0d7e4032002d8007a4f18a9eae27f7ba230
2020-10-07 17:06:13 -04:00
ababi
2df280c3fb mainview: UI call management refactor
- AccountAdapter::navigateToWelcomePageRequired is no longer required since subscription to property change in QML
- avoid unnecessary CallAdapter signals for UI management. Listen to BehaviorController and avoid duplicated / unnecessary signals.
- avoid duplicated code:
  - account selection only in AccountAdapter::changeAccount and ConversationsAdapter::selectConversation
  - simplification of ConversationsAdapter::selectConversation
  - conversation UI always managed by ConversationsAdapter -> ConversationSmartListItemDelegate
- smartlistmodel: no need to show callstack for outgoing calls in state ENDED

Gitlab: #86
Gitlab: #87
Gitlab: #88

Change-Id: I7025d4292914939f5a78aee1c4742104b370641d
2020-10-07 17:06:13 -04:00
agsantos
d191f86b9c settings: optimize code
Change-Id: Ib12382a9292852f404b1a588a7b5a6e29cb06cf9
2020-09-15 14:58:24 -04:00
Andreas Traczyk
eacf5bb458 misc: apply clang-formatting
Change-Id: I9d2ec496aa8d6cc0a41f9096ad153308c3308e8b
2020-09-10 18:00:08 -04:00
Andreas Traczyk
eb53a622b7 qml interop: start replacing QMetaObject::invokeMethod with signals
It seems concurrent calls to invokeMethod using qml component
object pointers can lead to access violations. These method
invocations can be replaced with a signal/slot mechanism.

This patch replaces only the invocations in conversationsadapter
and accountsadapter that are known to be problematic for now.

Some code cleanup is done for QmlAdapterBase derived classes.

Gitlab: #61
Change-Id: I72f47c9229a9bf42299ae52822c3a1a8c04eb423
2020-09-03 16:25:59 -04:00
Sébastien Blin
06fbda77e0 chatview: correctly handle clicked links in the webview
Change-Id: I16edca89fe0e66fb3845cc0420c251c70c12bdec
Gitlab: #11
2020-09-02 17:22:55 -04:00
Ming Rui Zhang
b07f7afe92 mainview: fix crash when deleting account
Fix the deletion crash issue and remove redundant account changed
signals.

Gitlab: #17
Change-Id: I1858fa051fd5171e1261dbc35d361631dc3ea01d
2020-08-28 12:35:26 -04:00
Ming Rui Zhang
968088785d mainview: make all context menus generated at run time with the same style
By giving a base context menu, all context menus are generated at run time
and kept the same style. Some issues are fixed along with the patch.

Gitlab: #8
Gitlab: #35
Change-Id: Ieb812420fcb44c33d161a62c8574f6705dc5e1a9
2020-08-28 11:59:43 -04:00
ababi
69f5dfcd2a mainview: fix account selection
- avoid duplicate call of LRC's setTopAccount()
- welcome view displays always the first account on the list, so passing the index is not necessary
- conversationsadapter and messagesadapter no longer listen to currentAccountChanged signal since there is a specific function for the setup

Gitlab: #12
Change-Id: Iac932d2596bf59c7528d83be799342ccefeea6b0
2020-08-27 18:51:06 -04:00
ababi
0b68664220 conversations: support new APIs for user search
Gitlab: #4
Change-Id: I7570099c20d2d406e538aea4c366ba7d85777686
2020-08-25 09:35:39 +02:00
Sébastien Blin
5f35e19260 qml: reconnect models on account's change
Change-Id: I7e88828308c8d64ea30e8ad15db950e0605d86dc
2020-08-18 11:58:30 -04:00
Sébastien Blin
1f91576a0b
client-qml: add initial commit
Change-Id: I32bfdd2a618aa7ac6181da2697e241667b010aab
2020-08-03 13:27:42 -04:00