1
0
Fork 0
mirror of https://git.jami.net/savoirfairelinux/jami-client-qt.git synced 2025-07-14 12:35:23 +02:00
Commit graph

580 commits

Author SHA1 Message Date
Andreas Traczyk
519ced58f7 chatview: don't call printHistory
Use updateHistory instead. This prevents "Contact added" message
duplication. We also clear the unread messages at this point which
will prevent an uncleared unread first message when adding a new
conversation.

Gitlab: #482
Change-Id: I927e15dfe945aa3f2f33db3fb91739522db5ea9b
2021-08-03 08:55:56 -04:00
Jenkins
06ebd40b2d i18n: automatic bump
Change-Id: I0f3951cf470eb1dddd3139a2263874152adfa6ac
2021-08-02 16:43:07 -04:00
Andreas Traczyk
f05ffbce44 swarm: prevent interacting with read-only conversations
Read-only conversation has:
- a lock icon in the smartlist item
- no message send bar in the chat view
- no call actions available from the chat view header
- no call actions available from the smartlist context menu
- no double click to call

Change-Id: I0497b94038b450f0a0a22fc007de1281b7b2214d
Gitlab: #475
2021-08-02 12:10:41 -04:00
Ming Rui Zhang
e2dbc33ac0 test: enhance the google unit tests of the client
1. Move JAMI_DATA_HOME, JAMI_CONFIG_HOME, JAMI_CACHE_HOME
   setup into individual test main entry
2. Use google test assertion macros instead of Qt
3. Add QT_QPA_FONTDIR to avoid QFont warnings
4. Tests will now fail if the env variables cannot be set

Change-Id: I63f6498d26b646d8ebc60799d8797fd5f13b54f9
2021-07-29 14:17:45 -04:00
Ming Rui Zhang
0aa3275b93 misc: use BackButton when necessary
Change-Id: I220038edeb4dc83d85d8e4048168c97c2a992940
2021-07-29 10:48:50 -04:00
Ming Rui Zhang
234ee7a2e9 wizardview: refactor account creation ui and enhance flow
1. Use MaterialToolTip in MaterialButton
2. Add BubbleLabel and BackButton
3. Add WizardViewStepModel
4. Focus re-visit

Gitlab: #470

Change-Id: I818da76c4b97cb08d2b6df6b2c8e2752d7a522f2
2021-07-29 10:48:39 -04:00
Ming Rui Zhang
7657de1176 ringtones: use correct default ringtone folder for FileDialog
Change-Id: I95c4713ffdb8e772dcea3edc5cdeb0eaa1080c75
2021-07-28 15:37:17 -04:00
Ming Rui Zhang
05a602c81c cmake: add missing ringtones deployment
Change-Id: Ie56185a88e57606337d45bea8f70259433ba476c
2021-07-28 15:37:01 -04:00
Andreas Traczyk
397b799cbf swarm: swarmify the message view
Change-Id: I85a070e8ea44b108fa75d69a8c6f544e8e2c8581
2021-07-28 12:25:32 -04:00
Sébastien Blin
488d735dfd wizardview: do not show profile page for imported account
as the avatar and alias will come from other connected devices
and from the archive too.

Change-Id: Ia3cbb91d4802c4119538c709a2432e45d396624c
2021-07-27 13:27:34 -04:00
Andreas Traczyk
d10e519d4e resources: remove unused icons
Gitlab: #477
Change-Id: Ie8be0721017f18de656874a0b82cc8d5a97276fa
2021-07-27 13:26:53 -04:00
Andreas Traczyk
279f92d2af misc: generate image resource files during cmake configure
resources.qrc & src/constant/JamiResources.qml are unversioned.

Glob checks for changes to the resource dir and forces a
reconfigure.

Change-Id: Ic88e4e861b8367ba44bc0eea6c323e08310afb8b
Gitlab: #477
2021-07-27 13:26:53 -04:00
Jenkins
2a291486ef i18n: automatic bump
Change-Id: I904cecba7f821e5f7f333fd7c8566644703dea85
2021-07-26 16:42:58 -04:00
Sébastien Blin
a19ffcaca7
misc: update IRC address
Change-Id: I76c89a32c52bc6e4e87645e5a4153e9ff6b510ea
2021-07-23 07:51:10 -04:00
Andreas Traczyk
1a61af02f3 resources: remove unused images and icons
gen-resources.py should be used to generate resources.qrc and
JamiResources.qml. Steps to add an image resource:
- add the resource file to the appropriate path under resources/
- run gen-resources.py
- use the newly available resource

Note: only icons and images will be represented by Qml properties.

The resource file generation may be made to run during CMake
configuration in a subsequent commit.

Some unused components were also removed during the refactor.

Gitlab: #477
Change-Id: I8e7f13d465031666be2bbadd5f29f9afc94d210d
2021-07-20 21:57:27 -04:00
Ming Rui Zhang
6e4fadcf11 accountComboBox: provide initial value for account status
If the account is initially disabled, the presense indicator
will still show the green color since the initial value is missed.

Change-Id: Ic580e485d4a73867789ef3774045a6939acbae4a
2021-07-20 09:46:00 -04:00
Ming Rui Zhang
14661adac6 tests: add FilesToSendContainer and MessageWebViewFooter tests
1. Adjust QML main setup
2. Add resources.qrc for test and Qt Creator display
3. Change LRCInstance and ScreenInfo to QML Singletons
4. Move QML type registration entirely to qmlregister

Change-Id: I5c8a854173a2ec1f85ffa971707af262fa344505
2021-07-20 09:45:42 -04:00
Jenkins
803ad9a0db i18n: automatic bump
Change-Id: Ib3722cd5ff23fa82b8393678b7fbf189533c7cd7
2021-07-19 16:43:02 -04:00
Sébastien Blin
912fd3f595 accountcombobox: only show username if different from best alias
This follow changes from lrc fixing getBestId.

Change-Id: I6ef298dfbcac9095cd5557c7b1d3caf42c0c3f3e
2021-07-19 16:06:30 -04:00
Sébastien Blin
a6ec3930fc settings: improve update dialog
Change-Id: I5aa4a5d9fa7c4c40fd001fa78237eb1d96531750
GitLab: #332
2021-07-19 15:43:08 -04:00
Andreas Traczyk
ab4c68adb5 avatars: add clear feature to photobooth
A property is provided to notify of changes to the content of the
current account's stored avatar. If one is stored, then a button
used to clear the avatar becomes available.

Gitlab: #473
Change-Id: I37640acaea3ca43e5abd14678d68b4eeebb3829e
2021-07-19 12:57:31 -04:00
Andreas Traczyk
275530746a smartlist: filter conversation update/reselection
Filter either the same conv id or peer list of the currently
selected item when responding to the conversationReady signal.

For dialogs we make sure the peer list(1) is same and for all other
swarm conversations we match the conv id.

This will prevent programmatic auto-selection of the smartlist
during account sync.

Depends on: https://review.jami.net/c/ring-lrc/+/18793

Change-Id: I6cedb8494f7c001bf886fe36dd03adffd201bb51
2021-07-19 12:57:18 -04:00
Ming Rui Zhang
37c45c27a5 settings: add allow IP auto rewrite option
Change-Id: I09c24f1185b37c728eb9ce1968cca21a99b79452
2021-07-16 11:01:54 -04:00
Ming Rui Zhang
a31fb6c0d8 conversationsadapter: make conversation filter correct when rejecting invitations
Gitlab: #471

Change-Id: I00db0c43c76f46ab934a196df1896005d936f4ff
2021-07-15 15:03:33 -04:00
Ming Rui Zhang
29b51b5a2a misc: remove unused onFilesToSendCountChanged slot
Change-Id: If0f4c70e4ebec83af1b99da35a8c2d428a2d68c7
2021-07-15 15:03:33 -04:00
Andreas Traczyk
50490dea9b avatars: invalidate cache when changing account
Prevents 1 to 1 conversations of the same id on different accounts
(local) from having the same avatar after switching account.

Change-Id: Id30af117b2da8bd35d64b54f2e02cbbed0710848
Gitlab: #466
2021-07-15 14:43:16 -04:00
Sébastien Blin
d0b5667449 systray: change systray icon when we have notifications
Also use jami.svg for regular systray icon.

Change-Id: I6325c756d10216a017eb89042ab2f6ca0e988703
2021-07-14 17:13:45 -04:00
Andreas Traczyk
26c922da4d wizard: fix profile page avatar previews
Replaces live updates to the avatar preview when editing the alias
field on the profile page during account creation.

Gitlab: #466
Change-Id: I93dd4611949ab0e76f9cea78f9d7aaa1949daa13
2021-07-14 16:50:49 -04:00
Andreas Traczyk
34f8d019e0 avatars: remove redundant scale op for conversation avatars
Change-Id: I69c12fcf53bb2e7b9d6dcff4d3d32c037210494a
2021-07-14 16:50:26 -04:00
Andreas Traczyk
c8007db590 conference: only load avatars if visible
Wrap avatars in a Loader to avoid constantly querying the image provider
for remote video participants.

Change-Id: Ieca2457416dfd4c33fc3a960a1e36643ea1f11ef
2021-07-14 16:50:06 -04:00
Andreas Traczyk
4aef4a690d conference: avoid excessive image caching during resize events
Throttle avatar image queries to the image provider when the
component size changes.

Gitlab: #466
Change-Id: Ie619671a593bcca75899f3d97c2af2071c427ab4
2021-07-14 16:44:00 -04:00
Andreas Traczyk
92a3d03206 conference: fix participant overlay avatars
Gitlab: #466
Change-Id: Id7bd241c3c88dfba90505dd399127d5ceedbf028
2021-07-14 16:31:12 -04:00
Sébastien Blin
417a0fe042 generalsettings: add file transfer settings
+ Auto accept files from trusted sources (default: true)
+ Auto accept files from untrusted sources (default: false)
+ Size limit (default: 20Mb)

Change-Id: I0e1068e3996786b23ba9a7797d02b7f8bb0f89d1
GitLab: #160
2021-07-14 10:20:07 -04:00
Andreas Traczyk
1e7c712a10 chatview: scale button animation along with opacity
Also uses behavior instead of states and suppresses the animation
during conversation load.

Change-Id: I7082fc7b04660236641b9aa0745356f5b09cdc52
2021-07-13 10:15:25 -04:00
Jenkins
459b57c68d i18n: automatic bump
Change-Id: Ie45c4ce76a7665dfaa07c185a3929d3aca32eaf7
2021-07-13 09:18:03 -04:00
Ming Rui Zhang
b3d853a0d1 messagewebview: QML invition page implementation
Gitlab: #469

Change-Id: I661185530ee3703527fd85a7022b42a3bcb7f579
2021-07-12 17:42:30 -04:00
Andreas Traczyk
4bda330637 swarm: simplify and update avatar update mechanism
Implements a leaner avatar caching system. The avatar component
listens for uid filtering its id, which may be:
- conversation id
- account id
- contact uri

In response to the uid change, a the image source is updated with
a new image url invoking a fresh QQuickImageProvider query. With
this design, only the avatarregistry's uid mapping needs to be
updated when profiles are changed, and no longer should specific
avatar components receive manual source updates.

Gitlab: #466
Change-Id: Ie5313f5c187a0977ca51b890dd92187480a42537
2021-07-12 17:29:48 -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
Ming Rui Zhang
14620f8bc8 messagewebview: chatview message bar qml replacement - ui
1. New emoji picker by customizing emoji.js
2. New message bar ui (textarea, buttons, tooltips)
3. New pending files transfer container
4. Use MaterialToolTip for all PushButton

Change-Id: I05d0531c65c019ced42b04668a780919c8a4fac3
2021-07-09 10:06:42 -04:00
Sébastien Blin
96c0084c3b conversationsadapter: use convId from request
This fix notification's actions for the notification, finding the
correct convId.

GitLab: #455
Change-Id: I9b70f723eacd930f95c2eaf01ecd52b8c5d28313
2021-07-08 12:57:33 -04:00
Andreas Traczyk
ccd7e08c3f swarm: fix unhandled exception when invoking the context menu
Querying peers should be done the with peersForConversation api.

Change-Id: Ia28d19b68e040f7fbd822e0781b3ad8c91186f27
2021-07-06 17:30:04 -04:00
Andreas Traczyk
e18c329741 smartlist: prevent excessive updates to items during reselection
Only save the draft if it changes and filter for index on data
changed signals before updating the avatar.

Change-Id: Ia23a35b512249e4b7953e3a2cef2cedbda386e65
2021-07-06 17:27:24 -04:00
Ming Rui Zhang
e165855e95 misc: use single process mode for qt webEngine
1. Add --single-process
2. Rename the httpUserAgent to jami-qt

Change-Id: I6de29ee89176b453f12ce225acf926dd1b819c18
2021-07-06 14:43:14 -04:00
Andreas Traczyk
712f2c3b30 smartlist: adjust draw/filter for swarm items
Removes profile type filter entirely. Treats swarm and non-swarm
differently when accessing role data.

depends on https://review.jami.net/c/ring-lrc/+/18656 for changes to
helper function names in conversation::Info

Change-Id: Ife69d4c70072ea524fed873136fd9ec39632d6d8
2021-07-06 14:38:29 -04:00
Ming Rui Zhang
3f8697e50f settingsadapter: ensure the state correctness for publishedSameAsLocal
Change-Id: I34b1386e81c0084aba8ddcc82c8480242e48ab41
2021-07-06 14:36:57 -04:00
Jenkins
8bc4902576 i18n: automatic bump
Change-Id: Ie86cd0fc63efe10c4b77e88cf6c6e8cd3dbd1b2c
2021-07-05 16:42:59 -04:00
Ming Rui Zhang
77f32dec36 callStackView: remove redundant print
Change-Id: Ic2943f1df82fa531f46b9e8814d421f874e6a697
2021-06-30 10:12:20 -04:00
Ming Rui Zhang
e564ec39b1 test: building structure refinement
1. Add building tests only option in the build script
2. Google test intergration enhancement
3. Properly use QSignalSpy wait function

Change-Id: I5ec1b33e191cebd8a14c19d92ee4eb4d40f054c3
2021-06-30 10:12:13 -04:00
Ming Rui Zhang
9200818a50 script: use consistent name for mute jami dring option
Change-Id: I7e3db31838884bc585d981ced91b4294cd5a8c14
2021-06-30 10:08:46 -04:00