feat(native): a proxy's sign-in page in the app has a way out and says what cannot work there

Behind Pangolin or authentik the app shows the proxy's sign-in page itself, and
nothing on it led back to the address screen: a failed passkey left users stuck
on every launch. A bar over that page now offers to change the server and says
that passkeys and security keys do not work there, as a web view cannot use them
for a domain the app is not tied to. It steps aside while the keyboard is up.
On iOS the page also gets the room the keyboard takes, so a button under it can
be scrolled into view. The address screen hands the bar its words in the user's
language when it connects.
This commit is contained in:
Maurice
2026-11-10 09:36:50 +01:00
parent 1454b58ea1
commit 0b3d2873c2
36 changed files with 322 additions and 3 deletions
+8 -1
View File
@@ -26,8 +26,15 @@ export interface TrekShellPlugin {
* `welcome` is the one-time code of a TREK Cloud purchase: the first load
* opens the server's welcome page with it, which signs the buyer in. A build
* without this option ignores it and opens the server as usual.
* `labels` are the words of the bar the app shows over a proxy's sign-in page,
* in the user's language: the server's UI is not there to say them.
*/
setServer(options: { url: string; signInHosts?: string[]; welcome?: string }): Promise<void>;
setServer(options: {
url: string;
signInHosts?: string[];
welcome?: string;
labels?: { signInHint: string; changeServer: string };
}): Promise<void>;
/** Forgets the server and returns to the address screen. */
resetServer(): Promise<void>;
/** Loads the remembered server again, after it could not be reached. */