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:
@@ -157,6 +157,7 @@ on_timer_expired (gpointer data)
|
|||||||
self->pos++;
|
self->pos++;
|
||||||
|
|
||||||
if (self->pos == self->durations->len) {
|
if (self->pos == self->durations->len) {
|
||||||
|
self->pos = 0;
|
||||||
self->timer_id = 0;
|
self->timer_id = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -172,10 +173,8 @@ fbd_feedback_vibra_pattern_end_vibra (FbdFeedbackVibra *vibra)
|
|||||||
FbdFeedbackManager *manager = fbd_feedback_manager_get_default ();
|
FbdFeedbackManager *manager = fbd_feedback_manager_get_default ();
|
||||||
FbdDevVibra *dev = fbd_feedback_manager_get_dev_vibra (manager);
|
FbdDevVibra *dev = fbd_feedback_manager_get_dev_vibra (manager);
|
||||||
|
|
||||||
if (self->timer_id) {
|
self->pos = 0;
|
||||||
self->pos = 0;
|
g_clear_handle_id (&self->timer_id, g_source_remove);
|
||||||
g_clear_handle_id (&self->timer_id, g_source_remove);
|
|
||||||
}
|
|
||||||
|
|
||||||
fbd_dev_vibra_stop (dev);
|
fbd_dev_vibra_stop (dev);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user