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

37 commits

Author SHA1 Message Date
ovari123
41cb6528c2 misc: unify terminology
{Noun} {verb} successfully
A(n) [type] error occurred while [attempting to] {verb} {noun}.
placeAudioCall → startAudioCall
placeVideoCall → startVideoCall
reconnectTry → reconnectAttempt

Change-Id: I918961894fc23989920727009031cc6a2ac1d8f3
GitLab: #1730
2024-11-01 15:30:44 -04:00
Sébastien Blin
c5e15d26a0 contactmodel: cache profiles for non contacts profile
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
2024-05-31 10:22:12 -04:00
Sébastien Blin
e56a966de1 contactmodel: fix account avatar on link device
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
2024-05-29 10:08:10 -04:00
Sébastien Blin
acc0c97234 contactmodel: fix contact initialization when linking a new device
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
2024-05-29 10:08:10 -04:00
Andreas Traczyk
610c27f751 contactmodel: refactor profile loading
Loading the profile elements from disk is now deferred to consumption. Implements a basic caching mechanism for the displayname and avatar elements.

Gitlab: #1459
Change-Id: Ic5aeec6649c198f617b9269409ded647c7536b8f
2024-02-28 14:53:28 -05:00
Sébastien Blin
402515365d presence: follow daemon changes for presence indicator
Change-Id: Ie82a15da023ab97f133c8beadb8ddeb81b67666f
2024-02-20 12:47:11 -05:00
Sébastien Blin
d40e884a1f misc: remove wrong logs
Change-Id: I4010660c6bef3af553019deb9bcabc65a4b484fc
2024-02-19 16:55:27 -05:00
Sébastien Blin
39da97396c contactmodel: fix add on second request
GitLab: #1572
Change-Id: If588d22b80ea2f77b21f2ddd081ba32fdffefc7c
2024-02-19 13:50:59 -05:00
Andreas Traczyk
38b7880d5f misc: improve logging for the client and libclient projects
- Declares global logging categories for libclient and the app
- Introduces some macros for categorized logging
- Removes the noisy namedirectory logs by default
- Logs file/line number URIs in debug mode

Change-Id: I9dadadc6e93ef91cc70d206b7225aeb7a06f8773
2024-02-12 11:14:17 -05:00
Sébastien Blin
a4300308dc contactmodel: check if removed before adding
Change-Id: I61b3773539bf6a0774ea487e4f5aae74bd2bc635
2024-01-04 09:45:16 -05:00
Sébastien Blin
815d324118 contactmodel: move profile creation on dedicated thread
This avoid a heavy I/O operation on the main pool

Change-Id: Ic5068d9d1c291b8f27ffc563933d4920af42e890
GitLab: #1450
2024-01-03 13:00:21 -05:00
Sébastien Blin
84150e8977 misc: bump copyright to 2024
Change-Id: I8d5f968fbedbc884c91416246049a0ef4cd652eb
2024-01-03 09:54:49 -05:00
Sébastien Blin
f524c39c5f contactmodel: do not save profile for account (managed by daemon)
Change-Id: I2943d91ad077892639a60117046665339e95d8fd
2023-12-28 15:21:44 -05:00
Sébastien Blin
93d2201277 contactmodel: avoid crash on incorrect profile
Change-Id: I1aa09e72e7db602a489c1195ab45b897e18370bc
2023-12-22 09:54:22 -05:00
Sébastien Blin
5cd2490f24 contactmodel: subscribe presence on conversation accepted
Change-Id: Ic11b651b7347773716088c6ce3784c70655f89b1
2023-12-01 16:11:02 -05:00
Sébastien Blin
428756e568 contactmodel: do not emit contactAdded for already added contact
Change-Id: I226c804181e88b47d5d361d84caaf0db23e09e6c
2023-11-07 13:20:04 -05:00
Sébastien Blin
fc7109950b swarm-call: do not create 1:1 conversation for incoming calls in swarm
There was no way to differentiate a 1:1 incoming call and a call
from a swarm, because username couldn't be checked. Now, create
conversation only if it's a 1:1 call

Change-Id: I0094967914b4888d083b9adc1d2b11de467d6f48
2023-11-01 13:52:37 -04:00
Sébastien Blin
7a84518f2c misc: cleanup, remove cacheAvatars
Now there is only one client, this doesn't need to be configured

Change-Id: Iba1265fbdb8ab18bfb44fc7c2c70ebfe6000ee2c
GitLab: #1305
2023-09-18 10:25:12 -04:00
Aline Gondim Santos
ffcd3e59a4 incomingcall: use callstatechanged signal
To be able to show calls that are transfered, we must catch new calls
from callstatechanged signal. Move all logic from newincomingcall to
callstatechanged.

Change-Id: Ibd3ff5f8b4009895b3165348fd1638956f5f66d9
2023-08-08 10:48:50 -04:00
Sébastien Blin
24a0a384ff contactmodel: no need to call both addContact/acceptConversationRequest
only acceptConversationRequest is enough to accept a request

Change-Id: I4720ea70def6cd35153167ef9577b1c7528e7140
2023-06-27 13:54:19 -04:00
Sébastien Blin
771e8bcb9d conversationmodel: use mode before conversation deletion
Change-Id: Ibf6fffae59475ce415a60ab1bbf09687d6d30c29
2023-05-04 15:58:39 -04:00
Sébastien Blin
ee08eae0ee contactmodel: avoid to re-write profile several time
Also, force the format of the vcard to always be the same to
avoid to change the shasum in a useless way.
Finally, only change if there is new details

https://git.jami.net/savoirfairelinux/jami-project/-/issues/1558

Change-Id: I95bc52e13c8d1020eae6ad64e77d4e58b1ee734b
2023-04-11 16:30:46 -04:00
Sébastien Blin
8db63dcebc misc: lookup username
Change-Id: If8e285c8188be453b6df0c1b5c86626bfbd46ab0
GitLab: #1053
2023-03-30 16:11:35 -04:00
Sébastien Blin
b41e5867c6 SIP: possibility to set custom avatar/display name
This allow users to be able to easily identify their contacts by
changing the avatar/display name of a contact (for SIP and 1:1)

https://git.jami.net/savoirfairelinux/jami-project/-/issues/757
Change-Id: I483a9116b78b08d43962abff982e73089bfec1d7
2023-03-23 08:11:12 -04:00
Aline Gondim Santos
8147baef2b fix: add default flag to sendAccountTextMessage
Change-Id: I08ef8b2f383c3aa1035518a2d4f92e941048e211
2023-02-16 09:40:27 -03:00
Amin Bandali
8d46acedf1 misc: Update copyright years to 2023
Change-Id: Idf38e82631a4e22540aa5dec8ec2db0ab4a38c2e
2023-02-06 01:47:15 -05:00
Sébastien Blin
564581b1f7 contactmodel: use new avatar received for account
If the avatar for an account is set on a device, it will send
to detected devices on new connections. The client was ignoring
the new avatar if it was not empty, now we just use the last
received avatar

Change-Id: I0b2cde9c193d46014c4d600775743312219b84df
2023-02-05 16:35:30 -05:00
Sébastien Blin
07c0f890da conversationmodel: get registered name for non contact members
Because in a swarm you can talk with non contacts, we should at
least retrieve the username when possible.

Change-Id: Ie01cd10cc1231fc4024bd5a08c30c08d69e8e7f0
GitLab: #948
2023-02-03 08:44:57 -05:00
Sébastien Blin
b34f031251 contactmodel: keep repsence state after subscription
Change-Id: I3501d0ba072bc68685af8ba8c46c22979cc25493
2023-02-01 16:54:42 -05:00
Sébastien Blin
8dda44b562 misc: fix "Can't find contact..." warning
Scenario, create a swarm with self.
As a warning, it will show "Can't find contact YOUR_ID  this is a
bug, please report" because your account is not in your contacts.

Change-Id: I6f49f8fa77132daf00396b62da9ded470df49f98
2023-01-27 16:41:36 -05:00
Sébastien Blin
ebea6d9d65 contactmodel: track presence after accepting request
This was broken when passing to only conversation's requests with
an un-needed condition

Change-Id: Ibe422474037c60ede21425b016017615d1bbf0f5
2023-01-23 16:49:45 -05:00
Sébastien Blin
97872288d8 misc: cleanup trust request (replaced by conversation requests)
Change-Id: I5d3d7cd5cb7570ff2063ea5a981c312480a6990a
2022-12-20 11:17:22 -05:00
Nicolas Vengeon
e5b54ad787 feature: show and share user location
copyright OpenLayers v7.1.0: ol.css
copyright OpenLayers v7.1.0: ol.js

GitLab: #867

Change-Id: I4e01f6d9727d56541d1b44023f26959ebe4fbe26
Signed-off-by: Nicolas Vengeon <nicolas.vengeon@savoirfairelinux.com>
2022-11-23 14:05:36 -05:00
Sébastien Blin
90ae50ee5f misc: rename DRing->libjami
Change-Id: I15d382406687cc506c1456ce43286ad6b0f23529
2022-10-29 16:53:42 -04:00
Sébastien Blin
d9aee635a7 misc: drop 'new' prefix from model names
Change-Id: Idc960c96e4647dbb6f8c1d64f545fe25c80bbaa5
2022-07-12 10:43:59 -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
e0b3b4adec misc: vendor libjamiclient into 'src/libclient/'
This is libjamiclient from the jami-libclient.git repository as of
767c45b8b09806ac05cbada720864df93588c047, with the following changes:

* src/libclient/newaccountmodel.cpp:
(NewAccountModelPimpl::removeFromAccounts): The lock wait inside
'#ifdef CHK_FREEABLE_BEFORE_ERASE_ACCOUNT' was not updated when the
type of 'accounts' was changed over the years from this:
std::map<std::string, account::Info>
to this:
std::map<QString, std::pair<account::Info, std::shared_ptr<Database>>>
Basically we need to get the 'first' of the pair for 'account::Info'.
So we now do that.

* src/libclient/avmodel.cpp:
* src/libclient/callbackshandler.cpp:
* src/libclient/contactmodel.cpp:
* src/libclient/conversationmodel.cpp:
* src/libclient/database.cpp:
* src/libclient/namedirectory.cpp:
* src/libclient/newaccountmodel.cpp:
* src/libclient/newcallmodel.cpp:
* src/libclient/newdevicemodel.cpp:
* src/libclient/peerdiscoverymodel.cpp:
* src/libclient/pluginmodel.cpp:
* src/libclient/smartinfohub.cpp:
* src/libclient/vcard.h:
* src/libclient/authority/storagehelper.cpp:  Replace Qt's 'foreach'
with 'Q_FOREACH' and its 'emit' with 'Q_EMIT' because in the client-qt
code base we have '-DQT_NO_KEYWORDS' to avoid conflicts with other
libraries we use.

* cmake/FindLibJami.cmake: Import cmake/FindRing.cmake from the
jami-libclient.git repository.  Then, rename RING_BUILD_DIR to
LIBJAMI_BUILD_DIR (though the old name is still supported for now).
Also update other references of Ring to Jami.  Further, add additional
calls to 'find_library' to make sure specified local paths for libjami
are checked before system-wide ones (in case of older/obsolete libjami
being available system-wide, which might happen on GNU/Linux systems).

* translations/lrc_*.ts: Import translation files from the libclient
repository.  The message location paths were corrected by running
"sed -i 's|../src|&/libclient|g' lrc_*.ts" in 'translations/'.

.tx/config: Add section for the newly-imported libclient translations.

* CMakeLists.txt: Reformat, plus various fixes and cleanups, such as
changing indentation to 2 spaces and wrapping lines at 70 characters,
renaming the parent directory of translations from 'ring' to 'jami',
and using all lowercase function calls.  Also add copyright headers.

* src/app/appsettingsmanager.cpp:
(AppSettingsManager::loadTranslations):
* src/app/utilsadapter.cpp (UtilsAdapter::supportedLang): Update to
adapt to the renaming of the parent directory of translations from
'ring' to 'jami'.

GitLab: #748
Change-Id: I86e3b0fb30e554755023e7b858b6a0d132cd59ab
2022-06-08 16:28:57 -04:00