Commit graph

222 commits

Author SHA1 Message Date
Alexander Lohnau
f57d59e605 Fix runtime issues with Qt6
To have the code bits reusable, they are defined as cmake variables.
In order to make the relative paths work and avoid touching every line
from the QRC, the resulting file is put into the source dir.
2023-07-20 13:32:07 +03:00
Alexander Lohnau
c5bfc4a5b0 Allow building against Qt6/KF6 2023-07-20 11:15:41 +03:00
Albert Vaca Cintora
495e3019e4 Reduce number of optional dependencies
Change some optional dependencies from being optional to being mandatory
or being mandatory but behind on-by-default cmake flags. Eg: instead of
only compiling Wayland support if we find the appropriate libraries, we
always require the libraries unless the user specifies WITH_WAYLAND=OFF.

Optional libraries are hard to discover by packagers (since they don't
see an error once we add them) and create lots of possible build flavors
with a different features that can confuse users.
2023-07-19 17:08:03 +00:00
Albert Vaca Cintora
22be63ae9e Remove compatibility with Qt < 5.15
In theory we support Qt 5.6 (because of SailfishOS) but in practice we are not checking that in the CI so probably we broke the compatibility long ago. Also, I don't think anyone is using this code in SailfishOS, so we can greatly simplify the code by requiring Qt 5.15 or later.
2023-07-18 20:13:27 +00:00
Albert Vaca Cintora
bb8e67efc9 Add CMake flag to enable MDNS (off by default) 2023-07-17 20:41:15 +00:00
Albert Vaca Cintora
34e0128fe9 Add MDNS discovery 2023-07-17 20:41:15 +00:00
Albert Astals Cid
f2888e3e19 GIT_SILENT Upgrade release service version to 23.11.70. 2023-07-17 12:40:09 +02:00
Fushan Wen
4523ba5882 Use org.freedesktop.DBus.Monitoring to monitor notifications
Plasma notification widget also uses the interface, and sometimes
notification ids can become out of sync between the two DBus adaptors.

BUG: 447385
FIXED-IN: 23.08
2023-03-13 02:20:12 +00:00
Albert Astals Cid
d99a241114 GIT_SILENT Upgrade release service version to 23.07.70. 2023-03-10 21:52:48 +01:00
Aleix Pol
5d4b074ef5 Drop dependency with PlasmaWaylandProtocols
Now that we are using the RemoteDesktop XDP, we don't need FakeInput
anymore.

BUG: 465767
2023-02-17 07:48:45 +00:00
Aleix Pol
851e456210 Use the RemoteDesktop portal to input from wayland
Cross-desktop approach to moving the cursor remotely on wayland. Should
work on X11 too, so we can consider drop the other one as well.

It adds support for receiving full text as well, which didn't use to be
possible.
2023-01-16 18:14:47 +01:00
Carlos De Maine
f252d026d7 require at least CMake 3.16.0 to use FindQtWaylandScanner.cmake as per compilation error
require at least CMake 3.16.0 to use  FindQtWaylandScanner.cmake as per compilation error
2023-01-12 00:07:02 +00:00
Nicolas Fella
22cd3b1e5c Port pointer locking away from KWayland
Use QtWaylandScanner directly
2022-12-13 15:42:31 +00:00
ivan tkachenko
53174acdf4 CMake: Bump minimum required version of ECM
Bump the required version of ECM to provide the ZSH install directory

See also: 232ed339c2
2022-12-06 22:09:59 +00:00
ivan tkachenko
232ed339c2
Install zsh completion files using new KDE_INSTALL_ZSHAUTOCOMPLETEDIR variable from ECM
Note: it uses the new variable KDE_INSTALL_ZSHAUTOCOMPLETEDIR, which is
to be added in ECM 5.101.

Read more: https://invent.kde.org/frameworks/extra-cmake-modules/-/merge_requests/310
2022-11-18 14:02:25 +03:00
Albert Astals Cid
1a8d50cb45 GIT_SILENT Upgrade release service version to 23.03.70. 2022-11-05 21:54:41 +01:00
Volker Krause
002848efa8 Adapt build system to also support Qt 6
This is complicated by the Qt 5.6 requirement of SailfishOS, hopefully
that didn't get broken by this.
2022-10-29 16:51:41 +02:00
Nicolas Fella
ed3ae873a7 Port to ecm_add_qml_module
Reduces some boilerplate
2022-09-28 16:13:37 +00:00
Nicolas Fella
ce14a5629d Add clang-format commit hook 2022-09-11 23:21:58 +00:00
Nicolas Fella
a918ffc0cb Add and make use of ECM's clang-format integration 2022-09-11 23:21:58 +00:00
Nicolas Fella
f53dadaffa Port to new KIO worker API 2022-09-05 12:06:39 +02:00
Ömer Fadıl Usta
5373c03779 Sync QT_MIN_VERSION with KF's REQUIRED_QT_VERSION
In KF we already looking for 5.15.2
and looking something lower than that
is a bit meaningless
2022-08-29 00:05:01 +00:00
Albert Astals Cid
06a89b15df GIT_SILENT Upgrade release service version to 22.11.70. 2022-07-13 00:12:54 +02:00
Nicolas Fella
184120642a Fix using kdeconnect-settings when instance is already running
kdeconnect-settings is a single-instance app

When activating an existing instance actually load the requested settings part

Bump KF5 dependency to 5.95 to include https://invent.kde.org/frameworks/kcmutils/-/merge_requests/90, otherwise there's a crash
2022-07-06 12:55:39 +00:00
Albert Astals Cid
d76207db04 Add ki18n_install and kdoctools_install 2022-05-22 12:20:30 +02:00
Nicolas Fella
7704726857 [plugins/mousepad] Port away from KWayland
Use QtWaylandScanner to implement the protocol directly
2022-05-02 20:15:43 +02:00
Weixuan Xiao
f1843cb492 Improve D-Bus implementation on macOS
Better patch to replace !218.

- Auto and quick detection of previous D-Bus instance;
- Remove private D-Bus compile definition, only use it on macOS without an existing D-Bus instance;
- Safe reboot after crashes because the indicator is not relating on the kdeconnectd to run a D-Bus session;
- Safe exit after clicking on `Quit` in the systray.


More details in commit logs:

Only enable private D-Bus on macOS because the other platforms do not
need them.
The app should be able to easily detect the session bus from the env
DBUS_LAUNCHD_SESSION_BUS_SOCKET from launchd through launchctl.
Because https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/dbus/dbus-sysdeps-unix.c#L4392
shows that it is the only probing method on macOS with launchd.

The D-Bus session bus can be easily found from launchd/launchctl
with DBUS_LAUNCHD_SESSION_BUS_SOCKET env. It can be an external one
(installed from HomeBrew) or an internal one (launched by a previous
instance followed by a crash).

The indicator helper on macOS can now automatically detect whether we can use a potentially
(with launchd/launchctl env set, or KDE Connect macOS
private_bus_address set) existed and usable session bus.
If previous bus is usable, just try to launch the kdeconnectd with us.
Otherwise, launch a private D-Bus daemon, export the launchd/launchctl
env, and run a kdeconnectd instance.

Everything works better and quicker now :)
2022-04-12 05:40:03 +00:00
Albert Astals Cid
3df8fcf8b0 GIT_SILENT Upgrade release service version to 22.07.70. 2022-03-12 13:25:49 +01:00
Alexander Lohnau
e365e1b35c Port from KPluginSelector to new KPluginWidget class
Task: https://phabricator.kde.org/T12265
2021-12-15 08:24:22 +01:00
Nicolas Fella
1e113a44de Fix build by lowering KDE_COMPILERSETTINGS_LEVEL 2021-12-14 23:06:12 +01:00
Méven Car
5d970ddd48 Port clipboard plugin to KGuiaddons KSystemClipboard 2021-12-13 15:06:25 +00:00
Heiko Becker
ac770becbb GIT_SILENT Upgrade release service version to 22.03.70. 2021-11-08 20:59:07 +01:00
Albert Vaca Cintora
2d8fd766c8 Keep APPLE_IN_APP_BUNDLE, remove PRIVATE_DBUS_ENABLED 2021-10-19 18:43:34 +02:00
Albert Vaca Cintora
0ebe9db019 Fix MacOS build
If neither  PRIVATE_DBUS_ENABLED and APPLE_IN_APP_BUNDLE weren't set,
DBusHelper::macosUnsetLaunchctlEnv() wasn't declared.
2021-10-19 18:29:55 +02:00
Nicolas Fella
5ec83ba223 Don't build Plasmoid and KIO slave on macOS 2021-09-10 20:22:27 +02:00
Piyush Aggarwal
76eb784cfc CMakeLists.txt: find optional KF5 components really optionally 2021-08-04 22:45:43 +05:30
Aleix Pol
cf8ada2b5d app: make it possible to lock the mouse when using the remote input
It makes it possible to use normal touchpads and mice
2021-07-30 23:25:30 +00:00
Nicolas Fella
ab7b805da1 Use KPackage macro for installing plasmoid
The macro does some extra stuff under the hood, like converting the metadata.desktop to json, which makes loading the plasmoid a bit faster
2021-07-29 16:00:29 +02:00
Nicolas Fella
e641aa5596 Remove redundant CXX standard definition 2021-07-27 22:57:58 +02:00
Weixuan Xiao
0eb736607a Add APPLE_IN_APP_BUNDLE flag 2021-07-25 06:16:22 +00:00
Nicolas Fella
3ba219da0f Merge branch 'release/21.08' 2021-07-16 23:31:58 +02:00
Andreas Sturmlechner
eaec8888ad
Add missing KF5WindowSystem dependency
Added in commit a45bfe36d5 w/o searching for it.

Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
2021-07-16 23:26:52 +02:00
Albert Astals Cid
1d666fcea0 GIT_SILENT Upgrade release service version to 21.11.70. 2021-07-10 20:28:23 +02:00
Albert Astals Cid
5023862bb2 GIT_SILENT Upgrade release service version to 21.07.80. 2021-07-10 19:09:11 +02:00
Laurent Montel
ee40d1aea8 Make it compile with last ecm
(With
https://invent.kde.org/frameworks/extra-cmake-modules/-/merge_requests/145
we have disabled the C and C++ specific compiler extensions.)
2021-06-28 08:19:09 +02:00
Nicolas Fella
89f52af438 Disable kpeople qml module finding
https://mail.kde.org/pipermail/kdeconnect/2021-June/007223.html
2021-06-16 21:42:00 +02:00
Piyush Aggarwal
f33fed6fa1 windows: fix support for WIN_SDK < 19041
inspired by : https://gitlab.kitware.com/cmake/cmake/-/blob/v3.17.3/Modules/InstallRequiredSystemLibraries.cmake#L339-358
Since CMake doesn't really has a way of providing the Win10 SDK's version ( see: https://gitlab.kitware.com/cmake/cmake/-/issues/20773 )
we read the XML file set up by the SDK and filter the SDK version out of it
2021-06-16 17:29:45 +05:30
Piyush Aggarwal
a6de73d437 add compilation check for WIN_SDK_VERSION 2021-06-15 18:06:03 +05:30
Nicolas Fella
dcda6b3cea Add support for generating qmltypes file 2021-05-09 19:34:22 +02:00
Aleix Pol
c07315282f Bump C++ standard usage to 17
This way we can use std::make_unique
2021-04-07 00:43:51 +00:00