Commit Graph
19 Commits
Author SHA1 Message Date
Guido Günther 31c7bf7d6b haptic-manager: New object to handle the Haptic DBus interface
To trigger a 200ms rumble at 100%, a 50ms pause and a 300ms rumble at 50%:

   busctl call --user org.sigxcpu.Feedback /org/sigxcpu/Feedback org.sigxcpu.Feedback.Haptic Vibrate 'sa(du)' org.foo.app 3 1.0 200  0.0 50  0.5 300

To cancel an ongoing pattern:

   busctl call --user org.sigxcpu.Feedback /org/sigxcpu/Feedback org.sigxcpu.Feedback.Haptic Vibrate 'sa(du)' org.foo.app 0

The API has lower priority than the event based API to e.g.  not miss
incoming phone calls or cell broadast messages.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2024-12-15 18:54:40 +01:00
Guido Günther 9cebb2c081 feedback-vibra: Add support for patterns
Add a new class that takes an array of durations and magnitudes.
A magnitude of 0 indicates a pause.

We can consider dropping the VibraRumble class at some point as that
is a special case of VibraPeriodic now however as the feedbacks are
encoded in the themes let's make sure VibraPattern is good API before
deprecating VibraRumble.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2024-12-15 18:35:58 +01:00
Guido Günther 0a2392db3f fbd-alert-slider: Small service to track alert sliders
This tracks the alert slider on OnePlus 6/6T devices
and adjusts the profile level accordingly.

This is based on a script by "isyourbrain foss" in the Phosh matrix
channel.
2024-09-27 07:27:08 +00:00
Guido Günther e47ce8e09e led: Add flash LED type
Camera flashes are also exported via the LED subsystem. We use a
separate LED type so they're not picked by default.

We don't use them as fallbacks either.
2024-06-15 11:14:40 +02:00
Guido Günther 4afc8398e2 feedbackd: Pass GMOBILE_USE_UNSTABLE_API to all files
No need to ack that individually
2024-06-13 15:17:52 +02:00
Guido Günther 9aa6696eb8 build: Let daemon dependency depend on generated enum headers
Otherwise it might not be available in the tests
2024-06-13 07:44:25 +02:00
Dylan Van Assche 2b53725fcb fbd-dev-led-qcom-multicolor: Support QCOM LPG LED multicolor
QCOM LPG LEDs can also operate in a multicolor fashion.
Re-use the probing sequence of multicolor LEDs and the hw_pattern
configuration of single color QCOM LPG LEDs.
2024-06-09 11:21:20 +02:00
Dylan Van Assche 10e6d3cba8 fbd-dev-led-qcom: Support QCOM LPG LED single color
QCOM LPG LEDs expose a hw_pattern sysfs entry which accepts a limited
set of patterns but allows to use dedicated hardware for blinking the
LED. This way, battery life can be improved and the LED still blinks,
even if the device is suspended.
2024-06-09 11:21:20 +02:00
Guido Günther 995d21b587 fbd-dev-led: Move multicolor handling to separate class
Everything related to multicolor moves into the new class and we add the
necessary getters and setters so derived classes can access the parent
classes attributes where needed.
2023-02-10 15:15:12 +00:00
Guido Günther 5fc0372b45 Move LED device to separate file
We separate out the led as different LED types have different
ways to set patterns, etc
2023-02-10 15:15:12 +00:00
Guido Günther b10e699efa build: Add dbus sources to the lib dependency
Otherwise we might fail to generate it for the executables
2022-12-15 17:54:08 +01:00
Guido Günther b64ce1290c Add theme validator
Recursively loads a given theme file.
2022-12-12 16:13:38 +01:00
Guido Günther 242519498a Recursively load themes
Themes (other than the default theme) can specify a `parent-name` in the
json file. This theme will be used as a base for the theme. Events and
profiles of the children override those in the parents.

For this we move the lookup code into it's separate class and also add
tests.

Closes: #38
2022-12-11 17:34:38 +01:00
Guido Günther 34f8733b2b build: Don't include main in lib
For that move the error quark to a separate file.
2022-12-08 10:05:47 +01:00
Guido Günther ba91939c85 Add gmobile library 2022-12-08 10:05:47 +01:00
Guido Günther a5b4f99412 feedbackd: Support visual feedback via LEDs
Currently all LED feedbacks are infinite we can improve that
later on by using the 'repeat' attribute of the LED pattern
trigger.
2020-07-05 19:25:44 +00:00
Guido Günther b561114800 feedbackd: Add helper to set up permissions for LEDs
This helper knows about the tiggers and necessary permission.
It's intended to be run via udev.
2020-07-05 19:25:44 +00:00
Rasmus Thomsen 851b46f4a4 build: add proper dependencies on gdbus-codgen-generated headers
Without this it was possible that ninja built a target that needs
the generated header before the header was generated

fixes #14
2020-04-24 15:25:11 +02:00
Guido Günther 3663b7d149 Initial commit
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2020-02-14 17:40:34 +01:00