Commit graph

173 commits

Author SHA1 Message Date
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
Bharadwaj Raju
a45bfe36d5 Fix notification reply window activation and focus
Ensures the reply window is raised using Qt::WindowActive state. This
properly raises the window reliably (including from plasmoid, which
didn't work at all before) and focuses the reply textbox.
2021-03-20 21:50:42 +01:00
Nicolas Fella
3e7ac98f28 Default to qqc2-desktop-style and add it as runtime dependency
On Plasma qqc2-desktop-style is used automatically, but not on other
DEs. Set it as a default and allow overriding it via environment
variables.

Also add it as a runtime dep so distros actually ship it.
2021-03-18 23:47:22 +00:00
Nicolas Fella
2fef3b925d Make use of KNotification's quick reply feature
It can make use of Plasma's native quick reply. If that is not available then it get's turned into a regular action that we hook up with
2021-03-17 14:29:08 +01:00
Albert Astals Cid
7437d87950 GIT_SILENT Upgrade release service version to 21.07.70. 2021-03-13 22:27:42 +01:00
Albert Astals Cid
56e70904c9 GIT_SILENT Upgrade release service version to 21.03.70. 2020-11-08 19:04:04 +01:00
Piyush Aggarwal
011758530b segregate icons into different folders 2020-10-31 14:46:13 +00:00
Nicolas Fella
0c9bfadb62 Follow release service version numbers
Ever since joining the release service we never increased our version number on release.
I've seen distros automatically apply the release service version scheme (20.0X) to the package,
but when running e.g. kdeconnect-cli -v we'd still get 1.4.

This way the version is automatically adjusted by the release tooling so we don't need to care about and cannot forget it any longer.
2020-10-15 12:24:27 +00:00
Nicolas Fella
79164ca8ba Replace manual include dir handling with interface target
We use kdeconnect-version.h in several places and therefore it needs to be in the include path. We currently do this by setting target_include_path in a few places. Replace this with an interface library that we can link against that sets up the correct include path. IMO it is cleaner this way.
2020-07-30 10:53:48 +02:00
Simon Redman
b1276795a1 Bump Frameworks version to 5.71 as required for Kirigami.Avatar 2020-07-05 12:31:07 +00:00
Antonio Larrosa
1d36164230 Use ecm_qt_declare_logging_category to declare the logging categories
This automatizes the generation of logging categories so a
kdeconnect-kde.categories is generated and installed to
/usr/share/qlogging-categories5/ so kdebugsettings can use it.

Also, sets the default logging level to Warning. So now the logs
of users won't be filled with debug messages but they can
modify the configuration easily with kdebugsettings.
2020-05-26 18:55:47 +02:00
Tobias Fella
303a5c09fa Link to invent instead of phabricator 2020-05-17 14:43:38 +02:00
Nate Graham
a9d0cb64b7 [applet] Port to Kirigami.PlaceholderMessage
This new Kirigami component was just introduced with
https://phabricator.kde.org/D29057.

ref T13021
2020-04-22 22:49:26 +00:00
Heiko Becker
03a1357a24 Merge remote-tracking branch 'origin/release/20.04' 2020-04-16 18:26:30 +02:00
Heiko Becker
fba0c2d55f Fix previous commit
KDE_INSTALL_DATADIR already points to PREFIX/share of course.
2020-04-16 18:26:00 +02:00
Nicolas Fella
cdcf3400dd Merge branch 'release/20.04' 2020-04-16 18:01:26 +02:00
Heiko Becker
f1da4b4850 Use KDE_INSTALL_DATADIR 2020-04-16 10:48:11 +02:00
Philip Cohn-Cort
c315170be5 Finally, we have support for sending out Battery information.
## Summary

The core idea is as follows:

1. When a Link loads the BatteryPlugin, we query Solid for a list of batteries.
    1. If the list is empty, we print a warning message and return quickly
    2. Otherwise, we connect *two signals* to every object in that list
2. We send out a single new NetworkPacket as soon as we've processed that list
3. When either of those two signals emits, we send another new NetworkPacket

### Multi-battery Support

BUG: 357193

To handle devices with multiple batteries (requested in that bug), we average
together the battery percentages. This also includes a new field in the packet for
'number of batteries' called `batteryQuantity`. For backwards compatibility, we can
assume it has a default value of one.

This should ensure we support
- devices with no batteries at all (like many desktop machines)
- devices with hot-pluggable batteries (like those laptops with detachable screens)

### Concerns

Note that the implementation isn't perfect.
We'll need some new localizable text to make it clear that we now support sending
battery status information.

Then there's a rather significant question: maybe we should have two battery plugins
on each client, like we do for the `findmyphone`/`findthisdevice` plugins?

## Test Plan

We need to ensure that other clients (including those using the Android codebase)
will respond correctly. The main things to look at are
1. are these new packets sent when the plugin is enabled, and not sent when it's disabled?
2. is the charge percentage accurate?
3. is the charge state (charging, discharging, or full) accurate?
and
4. do we see the correct number of warnings for low-battery?
2020-04-13 05:54:11 +00:00
Nicolas Fella
483047f590 Mark QtQuick.Particles as runtime dependency
BUG: 417340
2020-03-17 17:13:12 +01:00
Richard Liebscher
bb5539c8c3 Make plugins work in SailfishConnect 2020-03-01 20:00:40 +00:00
Nicolas Fella
1a2315cdf7 Move settings app into own folder and make it a KDBusService 2020-01-17 01:32:56 +01:00
Nicolas Fella
894898ec0d find kpeople qml module 2020-01-16 17:11:10 +00:00
Richard Liebscher
b61cf6b28c Build DBus interfaces library for SailfishConnect 2020-01-06 19:28:36 +00:00
Richard Liebscher
ba34672cbd Make build for SailfishConnect possible 2019-12-09 22:14:19 +00:00
Nicolas Fella
173e388177 Bump version number for 1.4 release 2019-12-07 18:14:56 +01:00
Nicolas Fella
fdda1cd0d6 Require recent KF5 version
We require a recent-ish Kirigami version for the app
 # Please enter the commit message for your changes. Lines starting
2019-12-07 18:09:56 +01:00
Nicolas Fella
3f574a8488 Don't build runners 2019-12-07 16:10:18 +00:00
Nicolas Fella
ac791640a6 Merge conditions 2019-10-27 20:41:24 +01:00
Nicolas Fella
0f9fa8e339 Merge find_package calls 2019-10-27 20:39:19 +01:00
Nicolas Fella
724a5a14a8 Don't use KIO in core when building for Sailfish 2019-10-27 19:35:18 +00:00
Nicolas Fella
1c6d45654c Correct indentation 2019-10-27 17:12:57 +01:00
Nicolas Fella
c568827735 merge two if(SAILFISHOS) calls 2019-10-27 17:11:58 +01:00
Nicolas Fella
ae7a3693d5 Rework cmake find calls 2019-10-27 17:02:45 +01:00
Nicolas Fella
0836195f4b Refactor add test cmake code 2019-10-27 16:54:49 +01:00
Nicolas Fella
9d3789e7fd Don't build smsapp on sfos 2019-10-27 16:53:39 +01:00
Nicolas Fella
4e459f0b30 Revert "Disallow deprecated Qt API"
It breaks the build with bluetooth enabled

This reverts commit 1a32a31a03.
2019-08-20 19:15:07 +02:00
Nicolas Fella
1a32a31a03 Disallow deprecated Qt API
We don't use any deprecated Qt API at the moment. Let's keep it that way
2019-08-20 16:02:10 +02:00
Nicolas Fella
4f21368675 Fix build 2019-08-01 14:22:55 +02:00
Nicolas Fella
24777524ad Make PulseAudioQt optional
Hopefully keeps those Pulseaudio deniers out pf my inbox
2019-08-01 13:57:32 +02:00
Jonathan Riddell
a9078b3719 switch to an addon appstream file and get rid of the .desktop file, this will shortly be supported by kde.org/applications 2019-08-01 10:15:03 +01:00
Piyush Aggarwal
ccb9c1fd48 put win check within sfos 2019-07-28 02:34:36 +05:30
Albert Vaca Cintora
dedb4b1ed2 KF5_MIN_VERSION was being defined *after* being used 2019-07-23 00:28:02 +02:00
Nicolas Fella
607b9a6566 Revert "Use ecm_qt_declare_logging_category"
It's missing stuff to work properly. Revert until I figured that out

This reverts commit 8a118a6fae.
2019-07-22 21:29:54 +02:00
Weixuan Xiao
273c2e937a Just keep CMakeLists as it was
until Wayland supports macOS or Apple brings back X11
2019-07-21 22:49:07 +00:00
Albert Vaca Cintora
796953d853 Remove SMS app cmake flag 2019-07-20 18:30:58 +02:00
Simon Redman
9f4716c3c5 Build SMS app by default 2019-07-20 15:46:28 +02:00
Nicolas Fella
f1b0d016ab Always build Kirigami app
Summary: It is functional on the desktop as well and provides a place for controls for desktop to desktop features (e.g. MprisRemote, LockPlugin) and controls for non-Plasma desktops (e.g. Remotekeyboard, not yet implemented)

Test Plan: Builds

Reviewers: #kde_connect, apol, sredman

Reviewed By: apol

Subscribers: piggz, apol, sredman, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15399
2019-07-20 13:08:57 +02:00
Nicolas Fella
99aad18e7a Use UDSEntry::fastInsert 2019-07-17 21:37:19 +00:00
Weixuan Xiao
4f4b6c309f Allow to use private DBus 2019-06-18 01:21:31 +00:00
Nicolas Fella
8a118a6fae Use ecm_qt_declare_logging_category 2019-06-13 00:15:12 +02:00