701 Commits
Author SHA1 Message Date
Guido Günther f2fde30f60 Merge branch 'periodic-magnitude' into 'main'
Use [0.0, 0.1] for periodic pattern too

Closes #86 and #84

See merge request Librem5/feedbackd!162
2025-03-21 18:15:30 +00:00
Guido Günther 3d062c0952 default/theme: Use [0.0, 1.0] for vibra-periodic
We switch `message-new-cellbroadcast` to VibraPeriodic as that is better
recognizable than the periodic pattern.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:15:57 +01:00
Guido Günther c37bfecbe0 vibra-periodic: Add a fallback for the previous [0, 0xFFFF] range
This keeps old themes working

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:15:57 +01:00
Guido Günther da93a16cda vibra-periodic: Deserialize magnitude and fade-in-level manually
This allows us to add proper fallbacks

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:15:56 +01:00
Guido Günther 91c34f4099 vibra-periodic: Use better defaults for fade-in-*
Lets start at zero when not specified otherwise and also set an
arbitrary fade-in-time as setting it to the duration isn't very helpful.

While at that move the defaults to the feedback rather than the device
so we ensure consistency over different device implementations.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:14:55 +01:00
Guido Günther 89b33dcbab vibra-periodic: Use same range as in rumble and periodic
We use [0.0, 1.0] in the other haptic feedbacks so let's make periodic
do the same.

We adjust dev-vibra to match that.

Closes: https://source.puri.sm/Librem5/feedbackd/-/issues/86
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:14:55 +01:00
Guido Günther f94de01a85 vibra-periodic: Modernize doc comment and property definitions
Also untabify. No functional change.

Gpb-Dch: Ignore
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:14:55 +01:00
Guido Günther cf0a420c3f doc: Mention theme reload on SIGHUP
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-21 12:14:55 +01:00
Guido Günther ac2f0d33c7 Merge branch 'magnitude-range' into 'main'
dev-vibra: Allow full magnitude in rumble

See merge request Librem5/feedbackd!161
2025-03-20 08:32:10 +00:00
Guido Günther 7b026b40cc dev-vibra: Allow full magnitude in rumble
Lets not artificially cap the magnitude in the device specific
implementation.

Since the default magnitude for the common rumble feedback was set to
0.5 in the previous commit the effective magnitude in existing themes
remains unchanged for that event.

The pattern feedbacks didn't make it into a release yet so there's
nothing that could get broken.

The change doubles the effective when using the Vibra DBus API but as it
seems that libmanette didn't land support yet lets just ignore that
here.

Periodic feedback is unaffected as it uses a different internal API.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-20 07:48:42 +00:00
Guido Günther f089ad2fd0 vibra-rumble: Add magnitude property
We add a magnitude property and set it to 0.5 by default. This ensure
the relative magnitude stays the same when switching from 0xFFFF to
0x7FFF in dev-vibra.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-20 07:48:42 +00:00
Guido Günther 69c4ee3344 Merge branch 'noti-feedback' into 'main'
data: Add an event for notification-new-generic

See merge request Librem5/feedbackd!160
2025-03-16 10:01:19 +00:00
Guido Günther 24aafefd0a data: Make button press feedback less intrusive
This way it can be kept enabled in more situations.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-16 09:29:58 +00:00
Guido Günther 5da0e4ff5d data: Add an event for notification-new-generic
We didn't do so until now to not make people go crazy with buzzing
phones. Now that we can fine tune the feedback strength better lets see
how this works.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-16 09:29:58 +00:00
Guido Günther eda028e1ea Merge branch 'integration_test_depend_on_daemon' into 'main'
tests: Depend on daemon for integration test

See merge request Librem5/feedbackd!159
2025-03-16 09:29:02 +00:00
Evangelos Ribeiro Tzaras 9dd6174e53 tests: Depend on compiled schemas
The carefree developer might try running meson test
before meson compile, leaving them with failing
feedback-vibra and feedback-profile tests:

Start of feedbackd tests
Start of fbd tests
Start of feedback-vibra tests
fbd-feedback-manager-DEBUG: No vibra capable device found
fbd-feedback-manager-DEBUG: Failed to init leds device: No usable LEDs found
not ok /feedbackd/fbd/feedback-vibra/pattern - GLib-GIO-FATAL-ERROR: No GSettings schemas are installed on the system
Bail out!

Signed-off-by: Evangelos Ribeiro Tzaras <devrtz@fortysixandtwo.eu>
2025-03-16 09:33:45 +01:00
Evangelos Ribeiro Tzaras d5ad81cac5 tests: Depend on daemon for integration test
The carefree developer might try running meson test
before meson compile, leaving them with a failing integration test:

Start of lfb-integration tests
dbus-daemon[326641]: [session uid=1000 pid=326641 pidfd=8] Activating service name='org.sigxcpu.Feedback' requested by ':1.0' (uid=1000 pid=326640 comm="$(pwd)/_build/tests/te")
+ exec $(pwd)/_build/src/feedbackd
$(pwd)/_build/run: 18: exec: $(pwd)/_build/src/feedbackd: not found

Signed-off-by: Evangelos Ribeiro Tzaras <devrtz@fortysixandtwo.eu>
2025-03-16 09:33:45 +01:00
Guido Günther 63b08d4443 Merge branch 'haptic-motor-strength' into 'main'
haptic: Honor maximum strength gsetting

Closes #84

See merge request Librem5/feedbackd!156
2025-03-11 15:03:31 +00:00
Guido Günther 41c1521790 vibra-periodic: Honor max strength
Since we scale down the magnitude we also scale down the fade in level
to keep the ratio between the two the same.

Closes: https://source.puri.sm/Librem5/feedbackd/-/issues/84

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-09 12:28:08 +01:00
Guido Günther 6d6cd905fc vibra-rumble: Honor max haptic strength
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-09 12:28:08 +01:00
Guido Günther cc02a4d48a vibra-pattern: Honor max haptic strength
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-09 12:28:08 +01:00
Guido Günther bb1b5d0e1f feedback-vibra: Add and track max-haptic-strength gsetting
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-09 12:28:08 +01:00
Guido Günther 8e4f15758b data: Refresh schema when it changed
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-08 22:14:54 +01:00
Guido Günther f681949fe6 Merge branch 'vibra-pattern-theme' into 'main'
fbd-feedback-vibra-pattern: Deserialize properties

See merge request Librem5/feedbackd!155
2025-03-08 21:14:13 +00:00
Guido Günther 85c4545adf doc: Document the VibraPattern feedback
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-06 11:00:05 +01:00
Guido Günther 7b19feb25f fbd-feedback-vibra-pattern: Deserialize properties
This allows us to use them in feedback themes

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-06 11:00:04 +01:00
Guido Günther 54060b4e38 vibra-pattern: End pending vibra when a new one is triggered
This wasn't much of an issue for the DBus API but when using
it as event feedback it matters as we might start the new
feedback just before the old one ended due to timers being
slighlty late.
2025-03-06 10:57:37 +01:00
Guido Günther e92df04e80 vibra-pattern: Check for NULL dev
When running e.g. in the theme validator we might not have a vibra dev.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-06 10:57:37 +01:00
Guido Günther 88dd60413e vibra-pattern: Reset pos when done
This allows to reuse the feedback.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-06 10:57:37 +01:00
Guido Günther 70fd0a8759 data/haptic: Document duration unit in the protocol
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-06 10:57:37 +01:00
Guido Günther 836fbe0920 treewide: Fix typos
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-06 10:57:37 +01:00
Guido Günther a1d39e54a1 Merge branch 'format-meson' into 'main'
Split out libfeedback.h and check more things in CI

See merge request Librem5/feedbackd!158
2025-03-05 11:40:25 +00:00
Guido Günther b5b16c09b6 ci: Make yamllint happy
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther 47772ce2dc README: Add getting in touch section
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther 521de770c8 doc: Make mardown lint happy
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther d974deb6bc ci: Add consistency check
Simplifies releases

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther cae5aba0cc build: Make doc warnings fatal
This restructure showed that we introduce them just so easily

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther 2bd2f549c0 ci: Check meson file formats
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther 99cc84c646 build: Format meson files
This will make adding future files less noisy.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther fe17c6d5ee ci: Update shared scripts and dot files to 0ed15ed 2025-03-05 11:30:50 +00:00
Guido Günther 73d5a02bfc libfeedback: Make libfeedback.h only include other files
Move the init functions to their own header so we don't clutter
libfeedback.h more in the future.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 11:30:50 +00:00
Guido Günther d36ac3162c Merge branch 'stop-flash-led' into 'main'
feedback-led: Ensure flash LED is stopped when prefer-flash is false

Closes #82

See merge request Librem5/feedbackd!153
2025-02-14 17:25:55 +00:00
Sam Day 21f9176e5e feedback-led: Ensure flash LED is stopped when prefer-flash gets disabled
Fixes: #82

Signed-off-by: Sam Day <me@samcday.com>
2025-02-07 22:51:09 +01:00
Guido Günther bbe8d5f4db Merge branch 'rel-0.7.0' into 'main'
treewide: Document changes and release 0.7.0

See merge request Librem5/feedbackd!152
2025-02-03 13:48:42 +00:00
Guido Günther efb414765f treewide: Document changes and release 0.7.0 2025-02-03 14:38:51 +01:00
Guido Günther 2bd7d02d38 Merge branch 'custom-sound' into 'main'
Allow to use custom sound files

Closes #81

See merge request Librem5/feedbackd!150
2025-02-03 13:07:25 +00:00
Guido Günther 9969faef0d packaging: Add symbols from 0.7.0
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-01-26 16:12:50 +01:00
Guido Günther 27ff654f9d build: Bump dev versions
Allows us to bump symbols and have proper dependencies in consuming
projects

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-01-26 16:12:50 +01:00
Guido Günther 832d2c3ce5 cli: Allow to provide custom sound file
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-01-26 16:12:50 +01:00
Guido Günther c9c69304e6 feedback-manager: Add sound feedback for custom sound file
If a custom sound is provided for the event, use that instead of the one
from the theme. We always add the sound event, even when the theme
doesn't have sound feedback for that event honoring the users choice.

Closes: https://source.puri.sm/Librem5/feedbackd/-/merge_requests/150

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-01-26 16:12:46 +01:00