Commit graph

156 commits

Author SHA1 Message Date
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
Nicolas Fella
9ae99a7878 Use ecm_setup_version 2019-06-12 23:49:19 +02:00
Nicolas Fella
a051173f76 Only find PackageConfig on SFOS 2019-06-12 23:32:07 +02:00
Nicolas Fella
e601755644 Force usage of QStringLiteral and port remaining offenders 2019-06-10 14:40:28 +00:00
Weixuan Xiao
58beafb242 Fix macos build 2019-05-19 09:41:56 +00:00
Piyush Aggarwal
995a3e2425 fix win32 build 2019-05-11 20:56:07 +00:00
Piyush Aggarwal
98bd91bf1c set last modified time for files received in Android-> PC transfers 2019-05-11 19:52:00 +00:00
Nicolas Fella
1d9ea25c2f Make PulseAudioQT mandatory
The ci issue has been sorted out

This reverts commit d3b41924b5.
2019-05-09 01:05:23 +02:00
Nicolas Fella
d3b41924b5 Revert "Make PulseAudioQT mandatory"
This breaks CI as PAQt is not yet available there

This reverts commit b48596d7c3.
2019-05-01 14:53:30 +02:00
Nicolas Fella
b48596d7c3 Make PulseAudioQT mandatory 2019-05-01 14:41:50 +02:00
Nicolas Fella
d4026861ab Clean up includes 2019-04-30 19:03:24 +02:00
Piyush Aggarwal
5b73c081da replace phonon with QtMultimedia 2019-04-30 16:24:09 +00:00
Albert Vaca Cintora
c8b51fb339 Restore FileItemActionPlugin
The alternative using puropose is less mature than this and some of us
were missing the good old dolphin plugin.

This reverts commit a19713fbeb.

# Conflicts:
#	CMakeLists.txt
2019-04-15 22:36:34 +02:00
Matthijs Tijink
2c44f55f55 Add zsh autocomplete file 2019-04-12 16:20:15 +00:00
Nicolas Fella
3f9b43c208 Fix search for PulseAudioQt
It does not follow Frameworks version numbers
2019-03-08 21:58:16 +01:00
Nicolas Fella
47749792f3 Respect users prefered text editor for shared text
Summary:
A user may have Kate installed but another editor set as default for text/plain. Respect that.

Also add .txt extension to the temp file name to make mime-type detection easier.

BUG: 399174

Test Plan:
Set default text editor to Kate -> Text opens in Kate
Set default text editor to Atom -> Text opens in Atom

Reviewers: #kde_connect, broulik, apol

Reviewed By: #kde_connect, broulik, apol

Subscribers: kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D15813
2019-02-09 00:00:01 +01:00
Nicolas Fella
8a9c95dde9 Runner for executing commands on remote device
Summary: Add a runner that allows executing commands on a connected device. It enables a more keyboard-centric workflow than running the commands from the plasmoid.

Test Plan: Connect desktop device. Add some commands there. restart krunner, open it, start typing command or device name. Select entry to execute command. Check for success.

Reviewers: #kde_connect, #plasma, broulik, davidedmundson, apol

Reviewed By: #kde_connect, apol

Subscribers: apol, ngraham, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D14604
2019-02-08 23:59:18 +01:00
Simon Redman
3b92b0de1d Add dependency on kirigami to SMS app
Summary:
Resolves Bug 401255

Bonus: Disable some very noisy debugging from the SMS app

Test Plan:
 - Build KDE Connect with or without Kirigami
   - Verify successful build with no complaints about Kirigami
 - Build KDE Connect's Messenger:
   - Without Kirigami: Verify that CMake warns that Kirigami is not found
   - With Kirigami: Verify that app launches successfully

Reviewers: #kde_connect, nicolasfella

Reviewed By: #kde_connect, nicolasfella

Subscribers: apol, kdeconnect

Tags: #kde_connect

Differential Revision: https://phabricator.kde.org/D17572
2019-01-24 10:39:54 -07:00