feat: show messages under the menu instead of waiting for a key
This commit is contained in:
1 parent
51d29d84a6
commit
dc0f680652
4 files changed
+108
-100
No files matched your search
@@ -317,9 +317,6 @@ msgid ""
|
|||||||
"password."
|
"password."
|
||||||
msgstr "Das waren zu viele Versuche. Die Gesichtsentsperrung ist pausiert, bis du mit deinem Passwort entsperrst."
|
msgstr "Das waren zu viele Versuche. Die Gesichtsentsperrung ist pausiert, bis du mit deinem Passwort entsperrst."
|
||||||
|
|
||||||
#: src/lib/menu.sh:122
|
|
||||||
msgid "Press any key to continue..."
|
|
||||||
msgstr "Beliebige Taste drücken …"
|
|
||||||
|
|
||||||
#: src/lib/menu.sh:130
|
#: src/lib/menu.sh:130
|
||||||
msgid "[y/N]"
|
msgid "[y/N]"
|
||||||
|
|||||||
+65
-68
@@ -8,7 +8,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: plasma-face-unlock 1.0.0\n"
|
"Project-Id-Version: plasma-face-unlock 1.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/plasma-face-unlock/"
|
"Report-Msgid-Bugs-To: https://github.com/LoonixTools/plasma-face-unlock/"
|
||||||
"issues\n"
|
"issues\n"
|
||||||
"POT-Creation-Date: 2026-09-22 18:45+0200\n"
|
"POT-Creation-Date: 2026-09-22 23:06+0200\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -55,7 +55,8 @@ msgstr ""
|
|||||||
msgid "First, set up your face."
|
msgid "First, set up your face."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/plasma-face-unlock:100 src/plasma-face-unlock:120 src/lib/menu.sh:338
|
#: src/plasma-face-unlock:100 src/plasma-face-unlock:120 src/lib/menu.sh:348
|
||||||
|
#: src/lib/menu.sh:352 src/lib/menu.sh:358 src/lib/menu.sh:360
|
||||||
msgid "Could not save the setting."
|
msgid "Could not save the setting."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -83,16 +84,16 @@ msgstr ""
|
|||||||
msgid "No face is set up yet."
|
msgid "No face is set up yet."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/plasma-face-unlock:148 src/lib/menu.sh:157 src/lib/menu.sh:460
|
#: src/plasma-face-unlock:148 src/lib/menu.sh:167 src/lib/menu.sh:472
|
||||||
msgid "on"
|
msgid "on"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/plasma-face-unlock:148 src/lib/menu.sh:159 src/lib/menu.sh:169
|
#: src/plasma-face-unlock:148 src/lib/menu.sh:169 src/lib/menu.sh:179
|
||||||
#: src/lib/menu.sh:461
|
#: src/lib/menu.sh:473
|
||||||
msgid "off"
|
msgid "off"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/plasma-face-unlock:150 src/lib/menu.sh:478
|
#: src/plasma-face-unlock:150 src/lib/menu.sh:490
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "%s samples, %s learned"
|
msgid "%s samples, %s learned"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -122,7 +123,7 @@ msgstr ""
|
|||||||
msgid "Turn it off (faces are kept)"
|
msgid "Turn it off (faces are kept)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/plasma-face-unlock:176 src/lib/menu.sh:540
|
#: src/plasma-face-unlock:176 src/lib/menu.sh:555
|
||||||
msgid "Add a face"
|
msgid "Add a face"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -221,7 +222,7 @@ msgstr ""
|
|||||||
msgid "The camera could not be used."
|
msgid "The camera could not be used."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/daemon.sh:111 src/lib/menu.sh:233
|
#: src/lib/daemon.sh:111 src/lib/menu.sh:243
|
||||||
msgid "The recognition models are missing. Reinstall the package."
|
msgid "The recognition models are missing. Reinstall the package."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -318,176 +319,172 @@ msgid ""
|
|||||||
"password."
|
"password."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:122
|
#: src/lib/menu.sh:140
|
||||||
msgid "Press any key to continue..."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/lib/menu.sh:130
|
|
||||||
msgid "[y/N]"
|
msgid "[y/N]"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:149 src/lib/menu.sh:382
|
#: src/lib/menu.sh:159 src/lib/menu.sh:392
|
||||||
msgid "ON"
|
msgid "ON"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:151 src/lib/menu.sh:383
|
#: src/lib/menu.sh:161 src/lib/menu.sh:393
|
||||||
msgid "OFF"
|
msgid "OFF"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:167
|
#: src/lib/menu.sh:177
|
||||||
msgid "strict (blink or turn your head)"
|
msgid "strict (blink or turn your head)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:168
|
#: src/lib/menu.sh:178
|
||||||
msgid "basic (screens and phone edges)"
|
msgid "basic (screens and phone edges)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:170
|
#: src/lib/menu.sh:180
|
||||||
msgid "normal"
|
msgid "normal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:171
|
#: src/lib/menu.sh:181
|
||||||
msgid "strict"
|
msgid "strict"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:172
|
#: src/lib/menu.sh:182
|
||||||
msgid "relaxed"
|
msgid "relaxed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:173
|
#: src/lib/menu.sh:183
|
||||||
msgid "island with the face"
|
msgid "island with the face"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:174
|
#: src/lib/menu.sh:184
|
||||||
msgid "small pill with a lock"
|
msgid "small pill with a lock"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:175
|
#: src/lib/menu.sh:185
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "%s seconds"
|
msgid "%s seconds"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:176 src/lib/menu.sh:313
|
#: src/lib/menu.sh:186 src/lib/menu.sh:323
|
||||||
msgid "automatic"
|
msgid "automatic"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:193
|
#: src/lib/menu.sh:203
|
||||||
msgid "Face unlock"
|
msgid "Face unlock"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:197
|
#: src/lib/menu.sh:207
|
||||||
msgid "Service"
|
msgid "Service"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:197
|
#: src/lib/menu.sh:207
|
||||||
msgid "not running"
|
msgid "not running"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:199
|
#: src/lib/menu.sh:209
|
||||||
msgid "Turning face unlock on again starts it."
|
msgid "Turning face unlock on again starts it."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:210 src/lib/menu.sh:212 src/lib/menu.sh:457
|
#: src/lib/menu.sh:220 src/lib/menu.sh:222 src/lib/menu.sh:469
|
||||||
#: src/lib/menu.sh:541
|
#: src/lib/menu.sh:556
|
||||||
msgid "Faces"
|
msgid "Faces"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:210
|
#: src/lib/menu.sh:220
|
||||||
msgid "none set up yet"
|
msgid "none set up yet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:212
|
#: src/lib/menu.sh:222
|
||||||
msgid "all turned off"
|
msgid "all turned off"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:218
|
#: src/lib/menu.sh:228
|
||||||
msgid "none found"
|
msgid "none found"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:220 /tmp/tmp.q9gMIu3Tjj/settings.sh:9
|
#: src/lib/menu.sh:230 /tmp/tmp.FOzKaHKE4a/settings.sh:9
|
||||||
msgid "Camera"
|
msgid "Camera"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:222
|
#: src/lib/menu.sh:232
|
||||||
msgid "Lock screen"
|
msgid "Lock screen"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:223
|
#: src/lib/menu.sh:233
|
||||||
msgid "sudo"
|
msgid "sudo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:224
|
#: src/lib/menu.sh:234
|
||||||
msgid "Admin prompts"
|
msgid "Admin prompts"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:225 /tmp/tmp.q9gMIu3Tjj/settings.sh:6
|
#: src/lib/menu.sh:235 /tmp/tmp.FOzKaHKE4a/settings.sh:6
|
||||||
msgid "Photo check"
|
msgid "Photo check"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:228
|
#: src/lib/menu.sh:238
|
||||||
msgid "Paused"
|
msgid "Paused"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:228
|
#: src/lib/menu.sh:238
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "for %d more minutes, or until the password is used"
|
msgid "for %d more minutes, or until the password is used"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:230
|
#: src/lib/menu.sh:240
|
||||||
msgid "Last unlock"
|
msgid "Last unlock"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:309
|
#: src/lib/menu.sh:319
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "automatic (%s)"
|
msgid "automatic (%s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:319
|
#: src/lib/menu.sh:329
|
||||||
msgid "(infrared)"
|
msgid "(infrared)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:323
|
#: src/lib/menu.sh:333
|
||||||
msgid "(not connected)"
|
msgid "(not connected)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:379 src/lib/menu.sh:542
|
#: src/lib/menu.sh:389 src/lib/menu.sh:557
|
||||||
msgid "Settings"
|
msgid "Settings"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:380
|
#: src/lib/menu.sh:390
|
||||||
msgid "Up/Down: select, Space or Right: change, q: back"
|
msgid "Up/Down: select, Space or Right: change, q: back"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:381
|
#: src/lib/menu.sh:391
|
||||||
msgid "Settings marked * are for the whole computer and ask for your password."
|
msgid "Settings marked * are for the whole computer and ask for your password."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:458
|
#: src/lib/menu.sh:470
|
||||||
msgid "Up/Down: select, Space: on/off, r: rename, d: delete, a: add, q: back"
|
msgid "Up/Down: select, Space: on/off, r: rename, d: delete, a: add, q: back"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:459
|
#: src/lib/menu.sh:471
|
||||||
msgid "No face is set up yet. Press a to add one."
|
msgid "No face is set up yet. Press a to add one."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:502
|
#: src/lib/menu.sh:516
|
||||||
msgid "New name:"
|
msgid "New name:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:509
|
#: src/lib/menu.sh:523
|
||||||
#, sh-printf-format
|
#, sh-printf-format
|
||||||
msgid "Delete \"%s\"?"
|
msgid "Delete \"%s\"?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:539
|
#: src/lib/menu.sh:554
|
||||||
msgid "Turn face unlock on or off"
|
msgid "Turn face unlock on or off"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:543
|
#: src/lib/menu.sh:558
|
||||||
msgid "Try it"
|
msgid "Try it"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/lib/menu.sh:544
|
#: src/lib/menu.sh:559
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -571,35 +568,35 @@ msgstr ""
|
|||||||
msgid "Bubble for sudo and admin prompts too"
|
msgid "Bubble for sudo and admin prompts too"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:91
|
#: src/agent/bubblecontroller.cpp:92
|
||||||
msgid "Blink once"
|
msgid "Blink once"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:93
|
#: src/agent/bubblecontroller.cpp:94
|
||||||
msgid "Look at the screen"
|
msgid "Look at the screen"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:95
|
#: src/agent/bubblecontroller.cpp:96
|
||||||
msgid "Move closer"
|
msgid "Move closer"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:97
|
#: src/agent/bubblecontroller.cpp:98
|
||||||
msgid "Too dark"
|
msgid "Too dark"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:117
|
#: src/agent/bubblecontroller.cpp:118
|
||||||
msgid "Use your password"
|
msgid "Use your password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:123
|
#: src/agent/bubblecontroller.cpp:124
|
||||||
msgid "Not recognized"
|
msgid "Not recognized"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:125
|
#: src/agent/bubblecontroller.cpp:126
|
||||||
msgid "Try again and blink"
|
msgid "Try again and blink"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/bubblecontroller.cpp:127
|
#: src/agent/bubblecontroller.cpp:128
|
||||||
msgid "Camera unavailable"
|
msgid "Camera unavailable"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -743,26 +740,26 @@ msgid ""
|
|||||||
"with glasses for example, from the menu."
|
"with glasses for example, from the menu."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/qml/Enroll.qml:156
|
#: src/agent/qml/Enroll.qml:157
|
||||||
msgid "Name (optional)"
|
msgid "Name (optional)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/qml/Enroll.qml:171
|
#: src/agent/qml/Enroll.qml:172
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/qml/Enroll.qml:177
|
#: src/agent/qml/Enroll.qml:178
|
||||||
msgid "Finish now"
|
msgid "Finish now"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/qml/Enroll.qml:182
|
#: src/agent/qml/Enroll.qml:183
|
||||||
msgid "Try again"
|
msgid "Try again"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/qml/Enroll.qml:182
|
#: src/agent/qml/Enroll.qml:183
|
||||||
msgid "Get started"
|
msgid "Get started"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/agent/qml/Enroll.qml:187
|
#: src/agent/qml/Enroll.qml:188
|
||||||
msgid "Done"
|
msgid "Done"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
+7
-7
@@ -135,16 +135,16 @@ else
|
|||||||
PFU_C_GREEN='' PFU_C_YELLOW='' PFU_C_RED=''
|
PFU_C_GREEN='' PFU_C_YELLOW='' PFU_C_RED=''
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Set by pfu_bad and pfu_note. The menu redraws straight after an action, which
|
# What pfu_ok, pfu_bad and pfu_note printed. The menu redraws straight after an
|
||||||
# would wipe the screen; this marks that something was printed the user still
|
# action, which wipes the screen, so it shows these again under the new frame
|
||||||
# has to read.
|
# rather than holding everything up for a key press.
|
||||||
PFU_UI_NEEDS_ACK=''
|
PFU_UI_NOTICES=()
|
||||||
|
|
||||||
pfu_say() { printf '%s\n' "$*"; }
|
pfu_say() { printf '%s\n' "$*"; }
|
||||||
pfu_head() { printf '\n%s%s%s\n\n' "$PFU_C_BOLD$PFU_C_BLUE" "$*" "$PFU_C_RESET"; }
|
pfu_head() { printf '\n%s%s%s\n\n' "$PFU_C_BOLD$PFU_C_BLUE" "$*" "$PFU_C_RESET"; }
|
||||||
pfu_ok() { printf '%s✔%s %s\n' "$PFU_C_GREEN" "$PFU_C_RESET" "$*"; }
|
pfu_ok() { PFU_UI_NOTICES+=("$PFU_C_GREEN✔$PFU_C_RESET $*"); printf '%s✔%s %s\n' "$PFU_C_GREEN" "$PFU_C_RESET" "$*"; }
|
||||||
pfu_bad() { PFU_UI_NEEDS_ACK=1; printf '%s✘%s %s\n' "$PFU_C_RED" "$PFU_C_RESET" "$*" >&2; }
|
pfu_bad() { PFU_UI_NOTICES+=("$PFU_C_RED✘$PFU_C_RESET $*"); printf '%s✘%s %s\n' "$PFU_C_RED" "$PFU_C_RESET" "$*" >&2; }
|
||||||
pfu_note() { PFU_UI_NEEDS_ACK=1; printf '%s•%s %s\n' "$PFU_C_DIM" "$PFU_C_RESET" "$*"; }
|
pfu_note() { PFU_UI_NOTICES+=("$PFU_C_DIM•$PFU_C_RESET $*"); printf '%s•%s %s\n' "$PFU_C_DIM" "$PFU_C_RESET" "$*"; }
|
||||||
|
|
||||||
pfu_have() { command -v "$1" > /dev/null 2>&1; }
|
pfu_have() { command -v "$1" > /dev/null 2>&1; }
|
||||||
|
|
||||||
|
|||||||
+36
-22
@@ -118,10 +118,20 @@ pfu_ui_read_line() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
pfu_pause() {
|
# _pfu_ui_take_notices
|
||||||
printf '\n %s' "$(pfu_msg "Press any key to continue...")"
|
# The messages the last action left, as lines for under a frame, in
|
||||||
read -rsn1 _ || true
|
# PFU_UI_NOTICE_TEXT. Each is shown once.
|
||||||
printf '\n'
|
PFU_UI_NOTICE_TEXT=''
|
||||||
|
|
||||||
|
_pfu_ui_take_notices() {
|
||||||
|
local n
|
||||||
|
PFU_UI_NOTICE_TEXT=''
|
||||||
|
(( ${#PFU_UI_NOTICES[@]} )) || return 0
|
||||||
|
PFU_UI_NOTICE_TEXT=$'\n'
|
||||||
|
for n in "${PFU_UI_NOTICES[@]}"; do
|
||||||
|
PFU_UI_NOTICE_TEXT+=" $n"$'\n'
|
||||||
|
done
|
||||||
|
PFU_UI_NOTICES=()
|
||||||
}
|
}
|
||||||
|
|
||||||
# pfu_ui_confirm <question>
|
# pfu_ui_confirm <question>
|
||||||
@@ -335,19 +345,19 @@ _pfu_setting_change() {
|
|||||||
|
|
||||||
case "$scope" in
|
case "$scope" in
|
||||||
user)
|
user)
|
||||||
pfu_config_set "$key" "$next" || { pfu_bad "$(pfu_msg "Could not save the setting.")"; pfu_pause; }
|
pfu_config_set "$key" "$next" || pfu_bad "$(pfu_msg "Could not save the setting.")"
|
||||||
;;
|
;;
|
||||||
sys)
|
sys)
|
||||||
printf '\n'
|
printf '\n'
|
||||||
pfu_ui_cooked pfu_root set "$key" "$next" || pfu_pause
|
pfu_ui_cooked pfu_root set "$key" "$next" || pfu_bad "$(pfu_msg "Could not save the setting.")"
|
||||||
PFU_KV_CACHE=()
|
PFU_KV_CACHE=()
|
||||||
;;
|
;;
|
||||||
pam)
|
pam)
|
||||||
printf '\n'
|
printf '\n'
|
||||||
if [[ $next == yes ]]; then
|
if [[ $next == yes ]]; then
|
||||||
pfu_ui_cooked pfu_root pam-enable "$key" || pfu_pause
|
pfu_ui_cooked pfu_root pam-enable "$key" || pfu_bad "$(pfu_msg "Could not save the setting.")"
|
||||||
else
|
else
|
||||||
pfu_ui_cooked pfu_root pam-disable "$key" || pfu_pause
|
pfu_ui_cooked pfu_root pam-disable "$key" || pfu_bad "$(pfu_msg "Could not save the setting.")"
|
||||||
fi
|
fi
|
||||||
# Remembered, so that turning face unlock off and on again brings
|
# Remembered, so that turning face unlock off and on again brings
|
||||||
# it back.
|
# it back.
|
||||||
@@ -428,6 +438,8 @@ pfu_ui_settings() {
|
|||||||
|
|
||||||
frame+=$'\n'" ${PFU_C_DIM}${legend}${PFU_C_RESET}"$'\n'
|
frame+=$'\n'" ${PFU_C_DIM}${legend}${PFU_C_RESET}"$'\n'
|
||||||
frame+=" ${PFU_C_DIM}${hint}${PFU_C_RESET}"$'\n'
|
frame+=" ${PFU_C_DIM}${hint}${PFU_C_RESET}"$'\n'
|
||||||
|
_pfu_ui_take_notices
|
||||||
|
frame+="$PFU_UI_NOTICE_TEXT"
|
||||||
printf '%s' "$frame"
|
printf '%s' "$frame"
|
||||||
|
|
||||||
key="$(pfu_read_key)" || return 0
|
key="$(pfu_read_key)" || return 0
|
||||||
@@ -483,6 +495,8 @@ pfu_ui_faces() {
|
|||||||
frame+="$row"$'\n'
|
frame+="$row"$'\n'
|
||||||
done
|
done
|
||||||
frame+=$'\n'" ${PFU_C_DIM}${hint}${PFU_C_RESET}"$'\n'
|
frame+=$'\n'" ${PFU_C_DIM}${hint}${PFU_C_RESET}"$'\n'
|
||||||
|
_pfu_ui_take_notices
|
||||||
|
frame+="$PFU_UI_NOTICE_TEXT"
|
||||||
printf '%s' "$frame"
|
printf '%s' "$frame"
|
||||||
|
|
||||||
key="$(pfu_read_key)" || return 0
|
key="$(pfu_read_key)" || return 0
|
||||||
@@ -510,11 +524,7 @@ pfu_ui_faces() {
|
|||||||
pfu_ctl remove "${PFU_FACE_IDS[cursor]}" > /dev/null
|
pfu_ctl remove "${PFU_FACE_IDS[cursor]}" > /dev/null
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
a|A)
|
a|A) pfu_ui_cooked pfu_do_setup ;;
|
||||||
pfu_ui_cooked pfu_do_setup
|
|
||||||
[[ -n $PFU_UI_NEEDS_ACK ]] && pfu_pause
|
|
||||||
PFU_UI_NEEDS_ACK=''
|
|
||||||
;;
|
|
||||||
q|Q|escape) return 0 ;;
|
q|Q|escape) return 0 ;;
|
||||||
*) ;;
|
*) ;;
|
||||||
esac
|
esac
|
||||||
@@ -526,13 +536,18 @@ pfu_ui_faces() {
|
|||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
|
|
||||||
pfu_ui_menu() {
|
pfu_ui_menu() {
|
||||||
local choice
|
local choice keep=0
|
||||||
|
|
||||||
pfu_ui_term_raw
|
pfu_ui_term_raw
|
||||||
trap 'pfu_ui_term_restore' EXIT INT TERM
|
trap 'pfu_ui_term_restore' EXIT INT TERM
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
clear 2>/dev/null || true
|
# After a test the menu goes under what the camera saw instead.
|
||||||
|
if (( keep )); then
|
||||||
|
keep=0
|
||||||
|
else
|
||||||
|
clear 2>/dev/null || true
|
||||||
|
fi
|
||||||
pfu_head " $PFU_PRETTY"
|
pfu_head " $PFU_PRETTY"
|
||||||
pfu_ui_status
|
pfu_ui_status
|
||||||
printf '\n'
|
printf '\n'
|
||||||
@@ -542,6 +557,8 @@ pfu_ui_menu() {
|
|||||||
printf ' [4] %s\n' "$(pfu_msg "Settings")"
|
printf ' [4] %s\n' "$(pfu_msg "Settings")"
|
||||||
printf ' [5] %s\n' "$(pfu_msg "Try it")"
|
printf ' [5] %s\n' "$(pfu_msg "Try it")"
|
||||||
printf ' [q] %s\n' "$(pfu_msg "Quit")"
|
printf ' [q] %s\n' "$(pfu_msg "Quit")"
|
||||||
|
_pfu_ui_take_notices
|
||||||
|
printf '%s' "$PFU_UI_NOTICE_TEXT"
|
||||||
printf '\n > '
|
printf '\n > '
|
||||||
|
|
||||||
choice="$(pfu_read_key)" || {
|
choice="$(pfu_read_key)" || {
|
||||||
@@ -552,7 +569,6 @@ pfu_ui_menu() {
|
|||||||
esac
|
esac
|
||||||
printf '%s\n' "$choice"
|
printf '%s\n' "$choice"
|
||||||
|
|
||||||
PFU_UI_NEEDS_ACK=''
|
|
||||||
case "$choice" in
|
case "$choice" in
|
||||||
1)
|
1)
|
||||||
pfu_config_load
|
pfu_config_load
|
||||||
@@ -561,18 +577,16 @@ pfu_ui_menu() {
|
|||||||
else
|
else
|
||||||
pfu_ui_cooked pfu_do_enable
|
pfu_ui_cooked pfu_do_enable
|
||||||
fi
|
fi
|
||||||
[[ -n $PFU_UI_NEEDS_ACK ]] && pfu_pause
|
|
||||||
;;
|
|
||||||
2)
|
|
||||||
pfu_ui_cooked pfu_do_setup
|
|
||||||
[[ -n $PFU_UI_NEEDS_ACK ]] && pfu_pause
|
|
||||||
;;
|
;;
|
||||||
|
2) pfu_ui_cooked pfu_do_setup ;;
|
||||||
3) pfu_ui_faces ;;
|
3) pfu_ui_faces ;;
|
||||||
4) pfu_ui_settings ;;
|
4) pfu_ui_settings ;;
|
||||||
5)
|
5)
|
||||||
printf '\n'
|
printf '\n'
|
||||||
pfu_ui_cooked pfu_test
|
pfu_ui_cooked pfu_test
|
||||||
pfu_pause
|
# Already on screen, with the rest of the test.
|
||||||
|
PFU_UI_NOTICES=()
|
||||||
|
keep=1
|
||||||
;;
|
;;
|
||||||
q|Q) pfu_ui_term_restore; trap - EXIT INT TERM; return 0 ;;
|
q|Q) pfu_ui_term_restore; trap - EXIT INT TERM; return 0 ;;
|
||||||
# Anything else (Enter, arrow keys, stray characters) just
|
# Anything else (Enter, arrow keys, stray characters) just
|
||||||
|
|||||||
Reference in new issue
Block a user