Guido Günther
437b19edd4
fbd-feedback-manager: Make sure to dispose sound device as well
...
Fixes another leak.
2021-04-26 09:34:23 +00:00
Guido Günther
04648dcf27
feedback-manager: Track DBus clients and end feedbacks if they go away
...
When the client goes away we build up a list of events to end feedback
for to make sure the hash table isn't modified in place. tThe alternative
approach would be to disconnect the on_event_feedbacks_ended handler,
duplicate the DBus signal emission and use g_hash_table_foreach_remove
but that looks less robust than using the same code path.
Closes : #25
2021-04-22 14:44:30 +02:00
Guido Günther
dc8c8c9594
fbd-manager: Keep DBus sender around
2021-04-22 14:43:30 +02:00
Guido Günther
40d318c9aa
feedback-manager: Fix formatting
...
It was off in several places. Now that there's no outstanding
MRs clean it up via
uncrustify --replace -c phosh.cfg src/fbd-feedback-manager.c
2021-01-11 10:35:03 +01:00
Dylan Van Assche
3ac9494821
fbd-feedback-manager: Allow device-specific feedbackd themes
...
Reads the compatible list of the device and tries to find a device-specific theme file in all directories. If no configuration is found, we fall back to a default theme file. The device-specific theme file can always be overriden by specifying the FEEDBACK_THEME environment variable
2021-01-01 18:49:38 +01:00
Guido Günther
8a631cae3e
feedback-manager: Dispose leds too
2020-07-24 12:53:13 +02:00
Guido Günther
e7f527bf62
feedback-manager: Don't forget to remove not found events from the hash table
...
This plugs a leak.
2020-07-24 12:53:13 +02:00
Guido Günther
cf56999bf7
feedback-manager: Deeply free the feedback list
...
Instead of freeing each elemnt after each iteration and then the list
itself at the very end just fully free the list. g_autoslist does
not work well on oder glib so do that manually.
This is just cosmetics.
2020-07-24 12:53:13 +02:00
Guido Günther
e8dfe6974a
fbd-feedback-manager: Check if feedback is usable
...
If we don't find any usable feedbacks for an event return
FBD_EVENT_END_REASON_NOT_FOUND.
2020-07-22 10:28:42 +00:00
Guido Günther
542fe52cc2
feedback-manager: Fix indentation
2020-07-22 10:28:42 +00:00
Guido Günther
6692d8922b
feedback-manager: Add hint to select feedback profile per event
...
This e.g. allows events that are meant for haptic only to avoid
emitting a sound by omitting the 'full' level and using "quiet"
instead.
Closes : #7
2020-07-10 09:20:04 +00:00
Guido Günther
421c163bdd
feedback-manager: Prepare for per event hints
...
Move feedback profile level into a separate function for that.
2020-07-10 09:20:04 +00: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
bdf251e565
feedback-manager: Only act on add
...
We would otherwise ignore the action when no vibra device was yet found.
Make sure we release the old device when updating.
2020-06-02 16:36:24 +00:00
Guido Günther
5d947f51b1
feedback-manager: Fix indentation and typo
2020-06-02 16:36:24 +00:00
Guido Günther
784152ba67
feedback-manager: Drop superfluous g_clear_error
...
The error is a g_autoptr
2020-06-02 16:36:24 +00:00
Guido Günther
9cb62dee1d
Allow to lower the feedback level per application
...
We munge the application id the same way as it's done
for notifications so these can eventually move into
the same schema.
2020-04-20 07:23:44 +00:00
Guido Günther
3663b7d149
Initial commit
...
Signed-off-by: Guido Günther <agx@sigxcpu.org >
2020-02-14 17:40:34 +01:00