Commit graph

4498 commits

Author SHA1 Message Date
Alexander Lohnau
6d1a7c613b Fix PluginInfoPage not being able to be displayed in Qt6 2023-07-25 18:29:38 +02:00
Alexander Lohnau
a3fc5eaf9f Make optional bluetooth and MDNS build against KF6 too 2023-07-25 18:29:38 +02:00
Alexander Lohnau
e00ffbb4f6 Use versionless cmake variable for KF requirements
Also, adjust find_package calls that are hidden behind a feature flag
2023-07-25 18:29:38 +02:00
Alexander Lohnau
ba063a5177 Port away from deprecated ECMQMLModules module 2023-07-25 18:29:38 +02:00
Alexander Lohnau
a1195a72a3 Use versionless Qt targets where possible
We depend on 5.15 which allows us to use those
2023-07-25 18:29:38 +02:00
Alexander Lohnau
87c9032ab9 kdeconnectd: Make QByteArray->const char* conversion explicit
With latest ECM settings, this gives a Qt6 error
2023-07-25 18:29:38 +02:00
Alexander Lohnau
e957f8f90e Fix kdeconnect daemon quitting in Qt6 2023-07-25 18:29:38 +02:00
Albert Vaca Cintora
6e8abd75e8 Do not use optionals when they are not needed 2023-07-25 17:22:20 +02:00
l10n daemon script
26b7482263 GIT_SILENT Sync po/docbooks with svn 2023-07-25 01:46:43 +00:00
l10n daemon script
7efcc8bbda SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2023-07-25 01:37:00 +00:00
Albert Vaca Cintora
59adbc2da4 Move all generated dbus interfaces to kdeconnectinterfaces exclude them from clazy
* Moves the XML definitions of DBus interfaces and code generation from the different plugins
  to kdeconnectinterfaces. Before each plugin had their own, some of them duplicated.
* Appends `// clazy:skip` to the generated interface files, so Clazy doesn't emit warnings
  about them because they are missing the NOTIFY/CONSTANT keywords on Q_PROPERTIES.
* Makes kdeconnectinterfaces static on Qt5 as well (removes a difference with Qt6).
* Moves the generated files to a `generated` directory and updates the includes so they are
  easily distinguished from other header files.
2023-07-24 12:18:47 +00:00
l10n daemon script
e1408ef72d GIT_SILENT Sync po/docbooks with svn 2023-07-24 09:02:32 +00:00
l10n daemon script
9bb076584b SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2023-07-24 08:31:14 +00:00
Albert Vaca Cintora
bd72602875 Move setWhenAvailable from dbusinterfaces to dbushelpers 2023-07-23 16:53:57 +02:00
Albert Astals Cid
7860280158 pretend autogenerated headers are system ones 2023-07-23 16:43:41 +02:00
Alexander Lohnau
7091f333f9 Do not mark plugin classes as exported
This is not needed, because only a symbol to create the KPluginFactory
instance must be exported. The KPluginFactory macros or rather the underlying
Q_PLUGIN_METADATA macro already take care of that.

In other plugin code of KDE, we also do not export classes.
The size of the generated plugin files is nearly identical, but removing
the macros avoids confusion for developers.
2023-07-22 20:51:19 +00:00
Alexander Lohnau
75a8db1ec5 Use pragma once in plugins
For non-library code, this is simpler and more concise
2023-07-22 20:51:19 +00:00
Alexander Lohnau
f1c2202591 Port plasmoid metadata to JSON format
This is needed for Plasma6 and avoids deprecation warnings/performance penalties in Plasma5
2023-07-22 20:51:19 +00:00
Alexander Lohnau
b7cf34c11f Simplify slots of some KCMs
Remove Q_SLOTS where not needed, use lambda if we only connect/call it in one place
2023-07-22 20:51:19 +00:00
Alexander Lohnau
f483c1449c Use simpler K_PLUGIN_CLASS macro for KCMs 2023-07-22 20:51:19 +00:00
Alexander Lohnau
ede9e37b40 Use KPluginMetaData::pluginId for getting config plugin name
By removing the postfix we consistently use, we get exactly the same string as before

However, all our pluginId logic is now done as part of the buildsystem.
Before, they were in the JSON metadata, the buildsystem and the string constructor parameter

KPluginFactory has the KPluginMetaData object in any case, do using it
doesn't create any overhead.
2023-07-22 20:51:19 +00:00
Alexander Lohnau
e894f7c000 PluginModel: Do not call begin/end resetModel in constructor
This is only needed if we update the data afterward
2023-07-22 20:51:19 +00:00
Alexander Lohnau
98040c3ffe GIT_SILENT Re-run clang-format 2023-07-22 20:51:19 +00:00
Alexander Lohnau
35a450f366 Port to new PMF connect syntax
This way we catch missing methods/mismatching arguments at compile and
not at runtime.
This fixes some Qt6 regressions due to the removal of deprecated methods.
2023-07-22 20:51:19 +00:00
Alexander Lohnau
c61fad5561 Do not make virtual methods of KCModule Q_SLOT
We do not need those methods to be marked as slots and the KCMUtils
classes like KPluginWidget also don't need it.
Meaning it just results in more moc code being generated.
2023-07-22 20:51:19 +00:00
Alexander Lohnau
9fdc2901b2 Use target-centric CMake approach rest of logging categories 2023-07-22 20:51:19 +00:00
Alexander Lohnau
41d474b1a5 findthisdeviceplugin_config: Check for URL before trying to play sound
Having a clear button and then emitting a warning if an enabled button is clicked doesn't really make sense.
2023-07-22 20:51:19 +00:00
Alexander Lohnau
f740a8bda8 Use target-centric CMake approach for declaring debug category
This makes it easier to read, because we do not have to handle a list of
files that get added to the targets. In other KDE projects, we also
prefer the target centric approach.

In case one wants to reuse the same category in multiple places, it
would be best to create a small static lib. But for now, this is not
needed.
2023-07-22 20:51:19 +00:00
Alexander Lohnau
999f8e00de Remove explicit plugin Id
The one derived from the filename is identical. Deriving it from the filename is the preferred approach.
In KF6, log messages are printed out if the Id is needlessly specified.
A mismatching Id vs basename would print out a warning.
2023-07-22 20:51:19 +00:00
Albert Vaca Cintora
dd4831f823 Add missing NOTIFY to properties 2023-07-22 20:09:46 +02:00
Albert Astals Cid
4fa2e93246 Improve/change "Pair" i18n messages 2023-07-22 18:05:25 +00:00
Albert Vaca Cintora
46cac0bf61 Fix qml runtime warning when accessing property without NOTIFIY 2023-07-22 19:58:56 +02:00
Alexander Lohnau
23f4b848a2 Remove KRunner plugin leftovers
I plan to revive it later on, but as a DBus runner
2023-07-22 19:16:18 +02:00
Alexander Lohnau
7d66b07ef7 Remove unused createId methods 2023-07-22 19:12:33 +02:00
Alexander Lohnau
319696c445 Remove version and website metadata for plugins
The plugin version doesn't matter, because all plugins are shipped as
part of kdeconnect and not separately.
The website was also set inconsistently, some pointed to a custom blog,
the KDE homepage or a broken link. If we want to make announcements more
visible, we should have a link in a more central place.
2023-07-22 19:12:33 +02:00
Alexander Lohnau
4ca8f98b7d Remove obsolete ServiceTypes definitions
Task: https://phabricator.kde.org/T14483
2023-07-22 19:12:33 +02:00
Alexander Lohnau
f066946a84 Remove unused categories from metadata 2023-07-22 19:12:32 +02:00
Alexander Lohnau
f3998e4b5f Fix windows build issues
- Add dummy args param to QProcess::startDetached
- Remove logging category from inline snippet. This was removed due to
  being unused in non-windows builds.
2023-07-22 19:12:28 +02:00
Alexander Lohnau
ac3d439a2a Clean up unneeded version checks
With the min. version bumped, those can be safely removed
2023-07-22 16:17:24 +02:00
Alexander Lohnau
1ee75463e0 Get rid of QOverload/static_cast for overloaded signals
By exclusing deprecated API in the KF5 build, the deprecated signal no
longer cause an ambiguity
2023-07-22 16:17:24 +02:00
Alexander Lohnau
e97af9dc15 Provide default implementation for KdeConnectPlugin::connected
In most plugins, we just provided a dummy implementation
2023-07-22 16:06:21 +02:00
Alexander Lohnau
7b15a5eab7 Fix warnings about old style QML connections 2023-07-22 16:03:24 +02:00
Alexander Lohnau
0b99c3a637 Remove unneeded destructors from plugins
We already have a destructor from the baseclass and don't need to clean
up any resources in the affected plugins
2023-07-22 16:01:21 +02:00
Albert Vaca Cintora
32abeb8ed0 Fix typo causing us to intersect with the wrong set 2023-07-22 15:21:26 +02:00
Albert Vaca Cintora
a33eb46d9b Fix crash due to begin and end belonging to different iterators 2023-07-22 15:13:34 +02:00
Alexander Lohnau
d8d9d62ac1 Remove unused, download missing licenses
`reuse lint` doesn't complain about missing or unused licenses with this change.
2023-07-22 14:22:59 +02:00
l10n daemon script
b7c84d3398 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2023-07-22 01:45:05 +00:00
l10n daemon script
0fdc5d4879 GIT_SILENT Sync po/docbooks with svn 2023-07-21 02:03:19 +00:00
l10n daemon script
2b67cefe39 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2023-07-21 01:47:33 +00:00
Albert Vaca Cintora
c3a2665477 Do not call first() on a temporary list 2023-07-20 23:36:05 +02:00