1
0
Fork 0
mirror of https://git.jami.net/savoirfairelinux/jami-client-qt.git synced 2024-10-28 08:49:35 +01:00
Commit graph

132 commits

Author SHA1 Message Date
Andreas Traczyk
b7fb63ae40 versioning: use app/jamicore git SHAs as the version
Currently, the user-facing version number in the about dialog, is a
build-time timestamp that does help us isolate the project versions
accurately. Ultimately, we need to be able to reproduce issues
present in specific versions of Jami. This commit introduces a new
version number in the form: <client_sha>.<jamicore_sha>, allowing
us to reproduce builds more accurately.

Gitlab: #1820
Change-Id: Ie7e20b20da65284e33e745996c410f539b65080c
2024-10-08 16:19:20 -04:00
Andreas Traczyk
3225f90ce8 misc: deploy and use ringtones on macOS
Gitlab: #1619
Change-Id: I7c19dfa4556f4f9dae827a1d0c967c9ebce7cc86
2024-06-04 12:36:41 -04:00
Andreas Traczyk
9aeb2377dc packaging: macos: simplify macdeployqt execution
Don't use a post build step, as it's only needed for packaging.

Change-Id: I1be4e7ac8042e1f211b4eeb15bc869e16eda1682
2024-05-29 12:45:41 -04:00
François-Simon Fauteux-Chapleau
200978a044 screensharing: add Wayland support
Change-Id: Ida5516630c6f95b16aa45f31ee8111a924273b3f
2024-03-22 10:47:45 -04:00
Andreas Traczyk
1ef9a85148 QWK: enforce a min Qt version of 6.6.2 on Windows
This will prevent a graphical issue present when disabling QWINDOWKIT_ENABLE_WINDOWS_SYSTEM_BORDERS to avoid the Windows 10 top border issue for the frameless window option. This allows us to remove the temp workaround that likely introduces side effects.

Gitlab: #1581
Change-Id: I36801064d31e2380312d73f88233e8ed9b757403
2024-03-04 15:40:18 -05:00
Sébastien Blin
5371dac882 misc: use BUILD_TESTING like the daemon and update instructions
Change-Id: I5e92e47ada4c4225c68065179245d96723397575
2024-02-19 16:32:04 -05:00
Andreas Traczyk
0a24bec5ec 3rdparty: md4c: bump version + turn off building md2html executable
Change-Id: Ib7c978e2b5ea8e16115c8818afc387988c13d72a
2024-02-12 15:09:39 -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
lcoursodon
24edba9a2f Qt: migration to 6.6.1
This commit makes the necessary changes to migrate from Qt 6.5.3 to
Qt 6.6.1 and fixes the following issues:

- EditedPopup.qml: "layout polish loop" and "recursive rearrange"
  errors (GitLab: #1510) as well as an unreported bug where text was
  clipped instead of elided

- BaseContextMenu.qml: QML warning ("Created graphical object was not
  placed in the graphics scene.")

The daemon is also bumped in order to include a patch for a build issue
on openSUSE Leap (GitLab: #1552).

GitLab: #1466
Change-Id: I12df2f84067ebe961368879e08ff7ef275d93395
2024-02-06 08:48:30 -05:00
Andreas Traczyk
50ce16e0ab misc: fix automated tests
Broken by https://review.jami.net/c/jami-client-qt/+/26560.
This moves some logic that has been previously duplicated between the app and tests into a common routine.

Change-Id: I40f1af38893cfcef751578d3e4db7d7ba040505b
2024-01-31 18:22:45 -05:00
Andreas Traczyk
66e31bea1e project: use qmldir for QML singletons registration
This simplifies registration and helps with IDE Intellisense for singleton components.

Change-Id: Ifb424491c0fa4777ecc76ec947d57287eea94cfc
2024-01-31 10:32:44 -05:00
Andreas Traczyk
35482fa92f misc: implement frameless window
Several major changes to the layout have been made.
- The chat search bar is moved into the message search layout.
- The Searchbar component is stripped of unused features.
- Some remaining logic that was used to switch main loader components is removed.
- ViewCoordinator.getView gets a "force create" parameter and we no longer preload low-cost views.

NOTE: the option to use a frameless window is available within general settings

Gitlab: #1524 (Frameless Window)
Change-Id: Iec6bdf162cb0335d3ae3d9bd09dd9783991a4a57
2024-01-26 18:14:55 -05:00
Andreas Traczyk
30db1ba5f5 misc: don't prefer Vulkan RHI
WebEngine view destruction crashes on Windows 10 when using Vulkan. Disable the preference for now. It will default to D3D11.

Gitlab: #1515
Change-Id: I8396163a937b3b439569115887020d49e3a8e751
2024-01-12 10:02:25 -05:00
Sébastien Blin
84150e8977 misc: bump copyright to 2024
Change-Id: I8d5f968fbedbc884c91416246049a0ef4cd652eb
2024-01-03 09:54:49 -05:00
Andreas Traczyk
c1df66f28d manual Revert "Revert "app Store: disable donations""
Appstore is refusing the donations-enabled build for now.

Change-Id: I16d9cc33ed577298565a5d92e0ee247ee54865a8
2023-12-18 16:32:10 -05:00
Sébastien Blin
ddb1409195 CMakeLists: set Qt 6.5 as minimal version
Change-Id: Idb58dc218cb71f1b5ff1cb44b5ce1c2e43d577b7
GitLab: #1374
2023-12-06 14:05:36 -05:00
Kateryna Kostiuk
db4e0d3767 Revert "app Store: disable donations"
This reverts commit a433974340.

Change-Id: I1a3b663a3f6813ed0481bf4a118330cf5d974424
2023-11-22 11:51:36 -05:00
Andreas Traczyk
e46a123609 build: windows: remove qrencode-win32 patching
Changes to a more maintained repo source.

Change-Id: Ie9903761ad8cb740b79552f59dc851976c1ef9da
2023-11-14 14:44:30 -05:00
Andreas Traczyk
3e17a9b247 cmake: windows: add the jami-core to the project
Change-Id: Ieeeb8bbf3d032fb9595b6f76a49ab8027dad7d99
2023-11-14 14:44:30 -05:00
Sébastien Blin
a0f0dd132a cmake: update options (submodule on by default, option for libwrap)
Change-Id: I1b1d30da4c89af12f811075185095830a3a39157
2023-11-07 13:58:36 -05:00
Andreas Traczyk
be85034d78 build: support enabling ASAN for daemon + contrib + client
Change-Id: Ie014285e46feb82577125b68677b19d94005789f
2023-11-07 08:40:09 -05:00
Andreas Traczyk
92be4fa7dc build: windows: optionally use pywinmake
Change-Id: Ib0b41428f00945c9bcab2f7d68355c2128c0e68f
2023-11-02 15:06:32 -04:00
Kateryna Kostiuk
a433974340 app Store: disable donations
Change-Id: I359cf1cd538a87f12f0e931b8b2948cf1c721cce
2023-10-30 09:45:44 -04:00
cberthet
7a759dab7a Push-To-Talk : add global and local ptt
It works with a Pimpl which the right pttlistener.cpp depending
on the platform you are on (macOs, windows or X11). It is a
global PTT which listen to key events during calls. If the
global PTT is not supported, a local PTT is set.

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

Change-Id: I8399800966c737bb8e8a656ecbb6af7ac7cdde8c
2023-10-30 09:31:26 -04:00
lcoursodon
6bff3c54f1 TroubleshootingSetting: Connection monitoring
Change-Id: Idf922df701cdf2efc2d167362dca021897d8e2e5
2023-10-23 13:39:13 -04:00
Andreas Traczyk
1bbd8e31af cmake: fix check for minimum major/minor version
The current check only fails if the major and minor version are less than the minimum.
This simplifies the check even removing the major version check which is a find requirement already.

Gitlab: #1330
Change-Id: Id066953c50ef4a925713dbd9203ebe7a3a36f4a1
2023-08-30 14:04:15 -04:00
Xavier Jouslin de Noray
7581f9397a updateManager: create a plugin store and a plugin manager
Change-Id: I57ebec72c1cb6e2f245af011def82f880bc9573f
2023-08-01 13:42:49 -04:00
Xavier Jouslin de Noray
6341f32618 updatemanager: refactor windows update and macos update manager
To be able to use an update manager for the plugins store, a refactor of windows update manager is done. The windows and macos update manager is used for updating jami. The plugins store update manager is to update plugins to the newest version.

Gitlab: #1229
Change-Id: I0541b6191401f2aa2c6d6034722796455e9c18d2
2023-07-31 15:46:16 -04:00
Matheo Joseph
ec0feef74d CachedImage: add icon downloader for pluginstore and welcome page
Gitlab: #1228
Gitlab: #1166

Change-Id: I0117cecdb8a77ded8f3da3c2f25028012002a285
2023-07-14 07:57:45 -04:00
Andreas Traczyk
dc53aa887d misc: change library name "jami" -> "libjami"
Bumps the daemon and adjusts the build to use the appropriate library name.

Change-Id: I4208f161c3522bb58dfc1dc55cb10910ade24eed
2023-06-01 12:32:07 -04:00
Léo Banno-Cloutier
63687acc71 install: bumped Qt 6.2 to 6.4
Change-Id: I39262a1945ab48f43efbb958ebe323f52f5d1a8d
2023-05-30 14:14:14 -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
4d2c55348b packaging: migrate from Qt 6.2.3 to 6.4.3
Python2 is removed from Debian stable/unstable and
latest Ubuntu. So, we need to use a newest version of
Qt (here Qt 6.4.3).

Change-Id: I6c8b1eee644aab787d54e467f64011762ffd7548
2023-05-15 11:27:50 -04:00
Maxim Cournoyer
f6c8197cba Reinstate "cmake: Simplify lookup logic for libjami headers."
The commit was reverted in 2b7a421e due to breaking some of the
packaging builds.  This has now been rectified.

Change-Id: I3ea67962cc65f243f106fe00316634d580f51a52
2023-04-26 14:38:58 -04:00
Andreas Traczyk
66e0e21482 packaging: windows: optionally skip windeployqt
This is a big time saver in the context of CI testing where we only need to supply some env vars instead.

It would also be nice to also have the env vars filled out for CMake-generated project runtime configs to prevent unnecessary deployment for development builds, but that's not done in this commit.

Change-Id: I338827cb87c9fc71c9a6b4b3076b22aa7cf7cfa3
2023-04-14 15:19:48 -04:00
Andreas Traczyk
012034fe67 misc: migrate the webengine resources from libclient to the client
Adds a `--with-engine` option for the resource generator script which will prevent packaging unused resources when building without webengine support.

Change-Id: If2f31284ef59166615221235427a53d0df8da2ce
2023-04-06 16:55:38 -04:00
Andreas Traczyk
df5b955465 misc: fix test suite and tooling on Windows
- simplifies and fixes the python build script for Windows
- applies pep8 to the script also

Gitlab: #899
Change-Id: Ieb3debd08ddf1649a46208fc52362d20c504c1b1
2023-04-05 13:54:23 -04:00
Amin Bandali
28bb42e5a1
cmake: Tweak RPATH to fix linking libjami for local installs.
* CMakeLists.txt: Tweak the setting of the runtime path (RPATH) to add
the 'lib' directory for local (non-system-wide) installs, to fix the
newly-surfaced issue with linking libjami for local installs.

Without this, the executable would be linked against the libjami
shared library from daemon/src/.libs for the install RPATH as well,
which for some reason as of recently gets omitted from the install
RPATH after 'make install', resulting in an error like the following
when trying to launch jami:

./install/bin/jami: error while loading shared libraries: libjami.so.0: cannot open shared object file: No such file or directory

Change-Id: If7e172b54728c72ae649fcf936a767b5d9c99488
2023-03-19 21:52:28 -04:00
Kateryna Kostiuk
ba867b0636 macos: support unified build
This patch adds a parameter arch to specify architecture
to build. This parameter could be arm64, x86_64 or unified.

Change-Id: I2907e03410e0c01b8505afbe283da04b8d0291b6
2023-02-28 14:30: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
Amin Bandali
8d46acedf1 misc: Update copyright years to 2023
Change-Id: Idf38e82631a4e22540aa5dec8ec2db0ab4a38c2e
2023-02-06 01:47:15 -05:00
Kateryna Kostiuk
9ffbf4ae1c macOS: update signature for Sparkle
This patch sets up app updates to use EdDSA signature as now
it is required by Sparkle

Change-Id: I68a581e21850f04a819f4fe7ea49a33766031e01
2023-01-30 11:10:46 -05:00
Aline Gondim Santos
a28d5c5c55 windows: enable window sharing
GitLab: https://git.jami.net/savoirfairelinux/jami-project/-/issues/1294
GitLab: #481
Change-Id: Iafdb542d37f9a1d59b35d83ba779c1c2f2f0ca0f
2023-01-09 12:37:28 -03:00
Amin Bandali
bf46264b74 doc: Add and install jami(1) man page.
* CMakeLists.txt: Install the man page.
* doc/jami.1: Rewrite to be a proper man page.

Change-Id: If0b566556d41c5adada87c93db7e6097dfdfa1e8
2022-12-29 14:45:33 -05:00
Sébastien Blin
2b7a421e1f Revert "cmake: Simplify lookup logic for libjami headers."
This reverts commit 041b733cf4.

Reason for revert: Breaks build from jami-project

Change-Id: Ie93add3c76a88c0368cb9d23c415d921a06b49d9
2022-12-29 09:45:16 -05:00
Maxim Cournoyer
041b733cf4 cmake: Simplify lookup logic for libjami headers.
* extras/build/cmake/modules/FindLibJami.cmake: Rename
LIBJAMI_INCLUDE_DIRS to LIBJAMI_INCLUDE_DIR.  Use find_path to search
for jami.h directory.
* CMakeLists.txt: Adjust accordingly.
* src/libclient/CMakeLists.txt: Likewise.
* src/libclient/qtwrapper/CMakeLists.txt: Likewise.

Change-Id: I494358f9bfafb41f000daeec4196747b2c184401
2022-12-28 10:14:18 -05:00
Aline Gondim Santos
ce6c7dc02b callview: implement an observable object to detail the current call
Change-Id: Ic7025f66e472457e32149911053c8ff32e06bf21
2022-12-27 11:46:39 -05:00
Aline Gondim Santos
4794cc87d3 build: fix DAEMON_DIR definition
Change-Id: I55d1e26b6710f8b53bd28fce82427c86bbed7eda
2022-12-15 15:51:25 -03:00
Sébastien Blin
eae071a15e cmake: use daemon_dir when possible and fix avutil check in libclient
Change-Id: I91a4eff61a5a8a817ec0aa5452c239431df2476b
2022-12-13 08:48:51 -05:00
Sébastien Blin
6ac70c64c7 cmake: fix avutil detection with WITH_SUBMODULE
as the daemon is in client-qt

Change-Id: I9eaf1864450de635767363a0ce17726fd459307d
2022-12-07 16:22:02 -05:00