aports/community/calls/feedbackd.patch
2024-06-23 20:42:00 +00:00

36 lines
1.4 KiB
Diff

From b5af7f5e7de0d68df62403c7097302bdaee8aaea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
Date: Sat, 15 Jun 2024 18:16:33 +0200
Subject: [PATCH] calls-ringer: Don't restart when feedback got ended
explicitly
If a user e.g. lowers the gobal feedback level we don't want to
retrigger the events.
Without this calls assumes events ended naturally and restarts the
ringing without any events. As that is never ended even subsequent calls
don't receive any ringing.
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/734>
---
src/calls-ringer.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/calls-ringer.c b/src/calls-ringer.c
index 61fdc6ff2..12ba93e05 100644
--- a/src/calls-ringer.c
+++ b/src/calls-ringer.c
@@ -194,7 +194,8 @@ on_feedback_ended (LfbEvent *event,
/* When no feedback is available on the system (e.g. no vibration motor or LEDs)
* it will get ended immediately on triggering. Changing the target state will
* break loop that would otherwise occur. */
- if (lfb_event_get_end_reason (event) == LFB_EVENT_END_REASON_NOT_FOUND)
+ if (lfb_event_get_end_reason (event) == LFB_EVENT_END_REASON_NOT_FOUND ||
+ lfb_event_get_end_reason (event) == LFB_EVENT_END_REASON_EXPLICIT)
self->target_state = CALLS_RING_STATE_INACTIVE;
set_ring_state (self, CALLS_RING_STATE_INACTIVE);
--
GitLab