Add user PIN protection (#719)

## Description
Adds (back) the ability to set a per-user PIN. This is required to
switch to the user. If the user has a PIN, this overrides and ignores
the "Sign in automatically" setting for that user.

The PIN consists of any combination of D-Pad directional buttons. If you
forget the PIN, you can click the button to login via the server instead
(ie QuickConnect or username/password) which will also remove the PIN so
you can set a new one if desired.

### Related issues
Closes #268 
Replaces #398
Related to #321 & #356

### Screenshots
![enter_pin
Large](https://github.com/user-attachments/assets/aa25364d-1266-410d-846e-8dc32c56a794)
This commit is contained in:
Ray 2026-01-19 11:39:29 -05:00 committed by GitHub
parent 946043342a
commit 0f52616d21
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 20 additions and 21 deletions

View file

@ -142,8 +142,6 @@ class ServerRepository
} else {
val user = serverAndUsers.users.firstOrNull { it.id == userId }
if (user != null) {
// TODO pin-related
// if (user != null && !user.hasPin) {
return changeUser(serverAndUsers.server, user)
}
}