Fix bugs with incall functionality around statusbar showing call duration

This commit is contained in:
Miles Alan 2020-08-22 11:19:27 -05:00
parent c5b665ca4f
commit 5f8aad0386
4 changed files with 11 additions and 16 deletions

View file

@ -23,7 +23,7 @@ handlenewnotiffile(){
if [ "$(wc -l "$NOTIFFILE" | cut -d' ' -f1)" -lt 3 ]; then
echo "Invalid notification file $NOTIFFILE found (<3 lines -- see notif spec in sxmo_notifwrite.sh), deleting!" >&2
rm "$NOTIFFILE"
rm -f "$NOTIFFILE"
else
sxmo_setpineled green 1;
notificationhook &
@ -32,9 +32,9 @@ handlenewnotiffile(){
NOTIFMSG="$(tail -n+3 "$NOTIFFILE" | cut -c1-70)"
if dunstify --action="2,open" "$NOTIFMSG" | grep 2; then
eval "$NOTIFACTION"
setsid -f sh -c "$NOTIFACTION" &
elif [ -e "$NOTIFWATCHFILE" ]; then
inotifywait "$NOTIFWATCHFILE" && rm -f "$NOTIFFILE" &
(inotifywait "$NOTIFWATCHFILE" && rm -f "$NOTIFFILE") &
fi
fi
}
@ -48,24 +48,19 @@ recreateexistingnotifs() {
monitorforaddordelnotifs() {
while true; do
find "$NOTIFDIR"/ -type f -mindepth 1 | read -r || sxmo_setpineled green 0
inotifywait -e create,attrib,moved_to,delete,delete_self,moved_from "$NOTIFDIR"/ | (
INOTIFYOUTPUT="$(cat)"
INOTIFYEVENTTYPE="$(echo "$INOTIFYOUTPUT" | cut -d" " -f2)"
case "$INOTIFYEVENTTYPE" in
"CREATE"|"MOVED_TO","ATTRIB")
NOTIFFILE="$NOTIFDIR/$(echo "$INOTIFYOUTPUT" | cut -d" " -f3)"
handlenewnotiffile "$NOTIFFILE"
;;
"DELETE"|"DELETE_SELF"|"MOVED_FROM")
# E.g. if no more notifications unset LED
find "$NOTIFDIR"/ -type f -mindepth 1 | read -r || sxmo_setpineled green 0
;;
esac
echo "$INOTIFYEVENTTYPE" | grep -E "CREATE|MOVED_TO|ATTRIB" || continue
NOTIFFILE="$NOTIFDIR/$(echo "$INOTIFYOUTPUT" | cut -d" " -f3)"
handlenewnotiffile "$NOTIFFILE"
) & wait
done
}
pgrep -f "$(command -v sxmo_notificationmonitor.sh)" | grep -Ev "^${$}$" | xargs kill
rm -f $NOTIFDIR/incomingcall
sxmo_setpineled green 0
recreateexistingnotifs
monitorforaddordelnotifs

View file

@ -25,7 +25,7 @@ notificationmenu() {
PICKEDNOTIFFILE="$(echo "$CHOICES" | grep "$PICKEDCONTENT" | cut -d^ -f2 | tr -d ' ')"
NOTIFACTION="$(head -n1 "$PICKEDNOTIFFILE")"
eval "$NOTIFACTION" &
setsid -f sh -c "$NOTIFACTION" &
rm "$PICKEDNOTIFFILE"
}