vibra-pattern: Reset pos when done

This allows to reuse the feedback.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
This commit is contained in:
Guido Günther
2025-03-06 10:57:37 +01:00
parent 70fd0a8759
commit 88dd60413e
+3 -4
View File
@@ -157,6 +157,7 @@ on_timer_expired (gpointer data)
self->pos++;
if (self->pos == self->durations->len) {
self->pos = 0;
self->timer_id = 0;
return;
}
@@ -172,10 +173,8 @@ fbd_feedback_vibra_pattern_end_vibra (FbdFeedbackVibra *vibra)
FbdFeedbackManager *manager = fbd_feedback_manager_get_default ();
FbdDevVibra *dev = fbd_feedback_manager_get_dev_vibra (manager);
if (self->timer_id) {
self->pos = 0;
g_clear_handle_id (&self->timer_id, g_source_remove);
}
self->pos = 0;
g_clear_handle_id (&self->timer_id, g_source_remove);
fbd_dev_vibra_stop (dev);
}