jami-libclient issueshttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues2023-08-24T10:43:03Zhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/460Plugin: plugin trust request2023-08-24T10:43:03ZAline Gondim SantosPlugin: plugin trust requestFollow daemon api modifications to perform plugin trust resquestFollow daemon api modifications to perform plugin trust resquestAline Gondim SantosAline Gondim Santoshttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/404Add settings for "prioritize preferences"2023-05-05T19:38:03ZSébastien BlinAdd settings for "prioritize preferences"This settings will contains:
+ Prioritize events (switch the chatview on incoming call/text message/pending request) or not
+ Prioritize by contactsThis settings will contains:
+ Prioritize events (switch the chatview on incoming call/text message/pending request) or not
+ Prioritize by contactshttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/423Add the proxy cache option in the settings (cf Android client)2023-05-05T19:37:57ZSébastien BlinAdd the proxy cache option in the settings (cf Android client)Ming Rui ZhangMing Rui Zhanghttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/433Code smell: behaviorcontroller got showIncomingCallView but no outgoing2023-05-05T19:37:49ZSébastien BlinCode smell: behaviorcontroller got showIncomingCallView but no outgoingSo the API is dirty for the end-userSo the API is dirty for the end-userhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/465plugins: set handlers activation order api2023-05-05T19:37:23ZAline Gondim Santosplugins: set handlers activation order apiThere may be API changes allowing UI to change handlers activation order.There may be API changes allowing UI to change handlers activation order.BacklogAline Gondim SantosAline Gondim Santoshttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/486Links surrounded by <> (e.g. "<https://git.jami.net>") are not linkified prop...2023-05-05T19:37:15ZMaxime DevosLinks surrounded by <> (e.g. "<https://git.jami.net>") are not linkified properly.I type "text \<https://git.jami.net> text" in the chat.
The following appears in the area above the input field:
text \<https://git.jami.net>; text
where "\<https://git.jami.net>;" is a hyperlink pointing to "\<https://git.jami.net>;...I type "text \<https://git.jami.net> text" in the chat.
The following appears in the area above the input field:
text \<https://git.jami.net>; text
where "\<https://git.jami.net>;" is a hyperlink pointing to "\<https://git.jami.net>;" (without the " quotes).
There are two problems here:
- the ";" should not be present
- the ">" should not be part of the link
I noticed "linkify" is used, and typing the same input in https://soapbox.github.io/linkifyjs/ results in properly linkified text. So maybe the bundled copy of linkify needs to be updated? Looking at this git repo, the copy of 'linkify' appears to be from 2016 and there has been a release of linkify in 2020 (v2.1.9).
I'm using "jami-gnome" (version 20210606.1.e2f9490 as packaged in Guix).
(Edit: apparently \<http://...> is Markdown mark-up, so I added a few \\, and now this text is formatted properly (including the <>).)https://git.jami.net/savoirfairelinux/jami-libclient/-/issues/501addSwarmConversation incorrect mode2023-05-05T19:36:45ZSébastien BlinaddSwarmConversation incorrect mode`conversation::to_mode(details["mode"].toInt());` does an assumption from the daemon which is not true.
A mode is unknown when syncing, it will be ok after conversationReady`conversation::to_mode(details["mode"].toInt());` does an assumption from the daemon which is not true.
A mode is unknown when syncing, it will be ok after conversationReadyBackloghttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/426Location sharing support2022-12-08T01:18:00ZSébastien BlinLocation sharing supportDaemon 7.9.0 supports location sharing with direct p2p connections (cf android), so now, clients can show "... is sharing location" and this should be implementedDaemon 7.9.0 supports location sharing with direct p2p connections (cf android), so now, clients can show "... is sharing location" and this should be implementedhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/378lrc_fr_FR.ts is the same thing as lrc_fr.ts2022-12-08T01:15:39ZTineilrc_fr_FR.ts is the same thing as lrc_fr.tsHello,
it would be cool if lrc_fr.ts was copied as lrc_fr_FR.ts (changing line 1 appropriately).
Or at least leave the user change the language in settings, because now I'm still forced to tolerate "Missed outgoing call" instead of "...Hello,
it would be cool if lrc_fr.ts was copied as lrc_fr_FR.ts (changing line 1 appropriately).
Or at least leave the user change the language in settings, because now I'm still forced to tolerate "Missed outgoing call" instead of "Appel sortant raté".
Thank youhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/376newaccountmodel: setCredentials only if getCredentials is different2022-12-06T14:03:02ZSébastien Blinnewaccountmodel: setCredentials only if getCredentials is differentsetCredentials can be avoided if the credentials are correct. We should use getCredentials and compare with new values.setCredentials can be avoided if the credentials are correct. We should use getCredentials and compare with new values.Aline Gondim SantosAline Gondim Santoshttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/494Redo video pipeline2022-12-05T18:54:31ZSébastien BlinRedo video pipelineSinkclient do copy for each frames + crop => performance drop for video-split
SHM renderers should be registered like direct rendered => TODO API change (daemon)
The client must create renderer on show, and destroy when not showing the ...Sinkclient do copy for each frames + crop => performance drop for video-split
SHM renderers should be registered like direct rendered => TODO API change (daemon)
The client must create renderer on show, and destroy when not showing the widget => Todo change the structure of creation/show/destructions of renderers in LRChttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/408Build Errors/Warnings/Notes2022-12-05T18:45:55ZvindicatorrBuild Errors/Warnings/Notes```
[ 25%] Generating configurationmanager_dbus_interface.cpp, configurationmanager_dbus_interface.h
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.ConfigurationManager.xml'
You should ...```
[ 25%] Generating configurationmanager_dbus_interface.cpp, configurationmanager_dbus_interface.h
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.ConfigurationManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="<type>"/> to the XML description
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.ConfigurationManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out2" value="<type>"/> to the XML description
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.ConfigurationManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="<type>"/> to the XML description
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.ConfigurationManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="<type>"/> to the XML description
[ 26%] Generating configurationmanager_dbus_interface.moc
[ 26%] Generating callmanager_dbus_interface.cpp, callmanager_dbus_interface.h
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.CallManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="<type>"/> to the XML description
qdbusxml2cpp: Got unknown type `a{ss}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.CallManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out2" value="<type>"/> to the XML description
qdbusxml2cpp: Got unknown type `a{si}' processing '/usr/local/share/dbus-1/interfaces/cx.ring.Ring.CallManager.xml'
You should add <annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="<type>"/> to the XML description
[ 27%] Generating callmanager_dbus_interface.moc
...
[ 38%] Building CXX object CMakeFiles/ringclient.dir/src/uri.cpp.o
ring-lrc/src/uri.cpp: In member function ‘void URIPimpl::parseHostname()’:
ring-lrc/src/uri.cpp:413:24: warning: duplicated ‘if’ condition [-Wduplicated-cond]
} else if (section == URI::Section::HOSTNAME) {
^~
ring-lrc/src/uri.cpp:411:17: note: previously used here
if (section == URI::Section::HOSTNAME) {
^~
ring-lrc/src/uri.cpp: In member function ‘QString URI::format(FlagPack<URI::Section>) const’:
ring-lrc/src/uri.cpp:470:16: warning: enumeration value ‘UNRECOGNIZED’ not handled in switch [-Wswitch-enum]
switch (protocolHint()) {
^
[ 39%] Building CXX object CMakeFiles/ringclient.dir/src/account.cpp.o
ring-lrc/src/account.cpp: In static member function ‘static Account* Account::buildExistingAccountFromId(const QByteArray&)’:
ring-lrc/src/account.cpp:148:15: warning: unused variable ‘contactRequest’ [-Wunused-variable]
auto contactRequest = new ContactRequest(a, person, ringID, timeReceived);
^~~~~~~~~~~~~~
ring-lrc/src/account.cpp: In member function ‘void Account::setLocalPort(short unsigned int)’:
ring-lrc/src/account.cpp:1670:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
if (isTlsEnabled())
^~
ring-lrc/src/account.cpp:1674:7: note: here
case Account::Protocol::RING:
^~~~
[ 39%] Building CXX object CMakeFiles/ringclient.dir/src/person.cpp.o
ring-lrc/src/person.cpp: In member function ‘const QByteArray Person::toVCard(QList<Account*>, const string&, const string&) const’:
ring-lrc/src/person.cpp:728:50: warning: unused parameter ‘accounts’ [-Wunused-parameter]
const QByteArray Person::toVCard(QList<Account*> accounts, const std::string& avatar, const std::string& newName) const
~~~~~~~~~~~~~~~~^~~~~~~~
ring-lrc/src/person.cpp:728:79: warning: unused parameter ‘avatar’ [-Wunused-parameter]
const QByteArray Person::toVCard(QList<Account*> accounts, const std::string& avatar, const std::string& newName) const
~~~~~~~~~~~~~~~~~~~^~~~~~
ring-lrc/src/person.cpp:728:106: warning: unused parameter ‘newName’ [-Wunused-parameter]
const QByteArray Person::toVCard(QList<Account*> accounts, const std::string& avatar, const std::string& newName) const
~~~~~~~~~~~~~~~~~~~^~~~~~~
[ 40%] Building CXX object CMakeFiles/ringclient.dir/src/contactmethod.cpp.o
...
[ 67%] Building CXX object CMakeFiles/ringclient.dir/src/conversationmodel.cpp.o
ring-lrc/src/conversationmodel.cpp: In lambda function:
ring-lrc/src/conversationmodel.cpp:336:28: warning: enumeration value ‘RING’ not handled in switch [-Wswitch]
switch (contactInfo.profileInfo.type) {
^
ring-lrc/src/conversationmodel.cpp:336:28: warning: enumeration value ‘SIP’ not handled in switch [-Wswitch]
ring-lrc/src/conversationmodel.cpp: In member function ‘void lrc::api::ConversationModel::selectConversation(const string&) const’:
ring-lrc/src/conversationmodel.cpp:439:20: warning: enumeration value ‘ENDED’ not handled in switch [-Wswitch-enum]
switch (call.status) {
^
ring-lrc/src/conversationmodel.cpp: In member function ‘bool lrc::ConversationModelPimpl::usefulDataFromDataTransfer(long long int, const lrc::api::datatransfer::Info&, int&, std::__cxx11::string&)’:
ring-lrc/src/conversationmodel.cpp:1873:97: warning: unused parameter ‘info’ [-Wunused-parameter]
ConversationModelPimpl::usefulDataFromDataTransfer(long long dringId, const datatransfer::Info& info,
~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
[ 68%] Building CXX object CMakeFiles/ringclient.dir/src/database.cpp.o
ring-lrc/src/database.cpp: In member function ‘std::__cxx11::string lrc::Database::getVersion()’:
ring-lrc/src/database.cpp:232:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (not query.exec(getVersionQuery.c_str()))
^~
ring-lrc/src/database.cpp:234:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
query.first();
^~~~~
[ 68%] Building CXX object CMakeFiles/ringclient.dir/src/authority/daemon.cpp.o
...
[ 70%] Building CXX object CMakeFiles/ringclient.dir/src/callbackshandler.cpp.o
ring-lrc/src/callbackshandler.cpp: In member function ‘void lrc::CallbacksHandler::slotDataTransferEvent(qulonglong, uint)’:
ring-lrc/src/callbackshandler.cpp:394:12: warning: enumeration value ‘invalid’ not handled in switch [-Wswitch]
switch (event) {
^
[ 70%] Building CXX object CMakeFiles/ringclient.dir/src/behaviorcontroller.cpp.o
...
[ 72%] Building CXX object CMakeFiles/ringclient.dir/src/shmrenderer.cpp.o
ring-lrc/src/shmrenderer.cpp:68:32: warning: ‘-pedantic’ is not an option that controls warnings [-Wpragmas]
#pragma GCC diagnostic ignored "-pedantic"
^~~~~~~~~~~
ring-lrc/src/shmrenderer.cpp:69:17: warning: ISO C++ forbids flexible array member ‘data’ [-Wpedantic]
uint8_t data[] ; /*!< the whole shared memory */ ^
```Sébastien BlinSébastien Blinhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/478Video Split: create participantsmodel per call2022-09-26T17:35:44ZAline Gondim SantosVideo Split: create participantsmodel per callBackloghttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/502Transform conversation into a QObject2022-06-23T18:48:10ZSébastien BlinTransform conversation into a QObjectand add signals for changing the profiles for exampleand add signals for changing the profiles for examplehttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/503Reading a vcard file with QFile/QTextStream takes a really long time2022-06-23T18:46:00ZAndreas TraczykReading a vcard file with QFile/QTextStream takes a really long time```
QTextStream in(&file);
QByteArray vcard = in.readAll().toUtf8();
```
takes ~40 seconds for a 43MB file```
QTextStream in(&file);
QByteArray vcard = in.readAll().toUtf8();
```
takes ~40 seconds for a 43MB fileAndreas TraczykAndreas Traczykhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/499Support system-wide Dark Style Preference in Linux2022-05-17T07:22:11ZannaSupport system-wide Dark Style Preference in LinuxFor reference please check https://blogs.gnome.org/alexm/2021/10/04/dark-style-preference/
My current Linux system already supports a system-wide dark style preference. I have seen that jami-qt already includes an option in its settings...For reference please check https://blogs.gnome.org/alexm/2021/10/04/dark-style-preference/
My current Linux system already supports a system-wide dark style preference. I have seen that jami-qt already includes an option in its settings that allows me to manually choose a dark style. I would like to see the change automated so that I, as a user, can experience a smooth transition and wonderful system integration.https://git.jami.net/savoirfairelinux/jami-libclient/-/issues/489Plugins: add support to preferences per account2022-04-27T14:16:03ZAline Gondim SantosPlugins: add support to preferences per accountAline Gondim SantosAline Gondim Santoshttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/504[Windows] Crash when selecting a smartlist item2022-04-04T15:01:52ZAndreas Traczyk[Windows] Crash when selecting a smartlist itemThe client crashes when selecting an item from the smart list, or sometimes on start.
This affected the Windows beta version 202203231705 including the multiparticipant swarm changes.The client crashes when selecting an item from the smart list, or sometimes on start.
This affected the Windows beta version 202203231705 including the multiparticipant swarm changes.Andreas TraczykAndreas Traczykhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/492SHMRenderer fix storage2022-03-17T18:44:34ZSébastien BlinSHMRenderer fix storageAvoid to do
```cpp
if (renderer_->useDirectRenderer()) {
buffer_ = std::move(frame_.storage);
} else {
// TODO remove this path. storage should work everywhere
buf...Avoid to do
```cpp
if (renderer_->useDirectRenderer()) {
buffer_ = std::move(frame_.storage);
} else {
// TODO remove this path. storage should work everywhere
buffer_.resize(size);
std::move(frame_.ptr, frame_.ptr + size, buffer_.begin());
}
```
[UPDATE]
Fixed by https://review.jami.net/q/topic:qvideosinkAndreas TraczykAndreas Traczykhttps://git.jami.net/savoirfairelinux/jami-libclient/-/issues/498Rework logging/tracing2022-02-02T21:24:48ZMohamed ChibaniRework logging/tracingThe current logging in LRC is rudimentary and lacks a lot of information (timestamps, file, thread-id, ...). We need to have a logging system at least equivalent to daemon's logging:
```
[16:07:10| 1862|jamiaccount.cpp :2012 ] Whateve...The current logging in LRC is rudimentary and lacks a lot of information (timestamps, file, thread-id, ...). We need to have a logging system at least equivalent to daemon's logging:
```
[16:07:10| 1862|jamiaccount.cpp :2012 ] Whatever ...
```Mohamed ChibaniMohamed Chibani