Files
Luke Gustafson 6c40d2f0cc v1.4.0 (#31)
* fix: register physical Tab key on iPadOS/iOS hardware keyboards (#14)

The native module only registered Shift+Tab but not bare Tab, so iOS
intercepted it for UI focus navigation. Register an unmodified Tab
UIKeyCommand with wantsPriorityOverSystemBehavior and handle both
Tab and Shift+Tab in the same JS branch.

Fixes Termix-SSH/Support#557

* fix: pass jumpHosts, forceKeyboardInteractive, and overrideCredentialUsername to terminal connection (#15)

These fields were defined on SSHHost but omitted from the terminal
hostConfig passthrough. Without jumpHosts the backend cannot route
through jump servers; without forceKeyboardInteractive hosts that
require keyboard-interactive auth fail silently; without
overrideCredentialUsername shared credentials use the wrong username.

Fixes Termix-SSH/Support#422
Fixes Termix-SSH/Support#638

* fix: improve mobile terminal scroll recovery (#17)

* Add mobile remote desktop sessions (#18)

* feat: add mobile remote desktop sessions

* feat: add remote desktop input controls

* feat: polish remote desktop controls

* feat: add mobile terminal font selection (#19)

* feat: add mobile shift tab hotkey (#20)

* feat: initial UI redesign

* feat: revamp server login system

* chore: update app icon/background color

* fix: remove unused fields in the settings tab

* feat: improve the user pin system and update all settings modals to use new ui

* fix: active server not updating unless app restarts

* feat: add version in settings

* feat: improve host page UI (updated host form and added credential management)

* fix: preserve composed iOS terminal input

* ci: restore mobile checks

* feat: rewrite of connection system for all types

* fix: preserve mobile jump hosts (#30)

* fix: guard android user ca trust (#29)

* fix: capture ios hardware tab key (#27)

* fix: reset terminal input after special keys (#28)

* fix: open oidc in system browser (#26)

* fix: preserve websocket auth context (#25)

* fix: keep none-auth terminal prompts alive (#23)

* fix: allow local network SSL in Android app (#21)

* feat: allow oidc passkeys

* feat: bundeled xterm into app and added docker loading screen

* feat: add 2fa, api key, and active sessions to settings and addressed multiple bug fixes and inconsistencies with termix web

* chore: update repo images and readme

* chore: update readme to split table for screenshots

* chore: rename ios to apple in build workflow

* fix: android build failure

* feat: add snippet management and fix several bugs

* fix: web login and oidc incorrect logic

* chore: run linter

---------

Co-authored-by: ZacharyZcR <zacharyzcr1984@gmail.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-03 16:49:50 -05:00

90 lines
2.5 KiB
CSS

@tailwind base;
@tailwind components;
@tailwind utilities;
/*
* Termix Mobile theme tokens — ported 1:1 from the web app
* (../Termix/Termix/src/ui/index.css). Colors are stored as
* space-separated RGB triplets so Tailwind's <alpha-value> works
* (e.g. bg-accent-brand/10, border-border/60).
*
* The base :root (light) and .dark blocks below give NativeWind a
* static baseline for the `dark:` variant. Full multi-theme + custom
* accent switching happens at runtime via vars() in ThemeContext, which
* applies the matching THEME_VARS map (see app/constants/theme.ts).
*/
:root {
--accent-brand: 245 145 69; /* #f59145 */
--background: 255 255 255;
--foreground: 17 18 16;
--card: 255 255 255;
--card-foreground: 17 18 16;
--popover: 255 255 255;
--popover-foreground: 17 18 16;
--primary: 24 25 23;
--primary-foreground: 250 250 250;
--secondary: 245 245 245;
--secondary-foreground: 24 25 23;
--muted: 245 245 245;
--muted-foreground: 115 115 115;
--accent: 245 245 245;
--accent-foreground: 24 25 23;
--destructive: 231 0 11;
--border: 229 229 229;
--input: 229 229 229;
--ring: 161 161 161;
--surface: 245 245 245;
--surface-dim: 235 235 235;
--chart-1: 212 212 212;
--chart-2: 115 115 115;
--chart-3: 82 82 82;
--chart-4: 64 64 64;
--chart-5: 38 38 38;
--sidebar: 250 250 250;
--sidebar-foreground: 17 18 16;
--sidebar-primary: 24 25 23;
--sidebar-primary-foreground: 250 250 250;
--sidebar-accent: 245 245 245;
--sidebar-accent-foreground: 24 25 23;
--sidebar-border: 229 229 229;
--sidebar-ring: 161 161 161;
}
.dark {
--background: 12 13 11;
--foreground: 250 250 250;
--card: 24 25 23;
--card-foreground: 250 250 250;
--popover: 24 25 23;
--popover-foreground: 250 250 250;
--primary: 229 229 229;
--primary-foreground: 24 25 23;
--secondary: 38 38 38;
--secondary-foreground: 250 250 250;
--muted: 35 35 35;
--muted-foreground: 164 164 164;
--accent: 35 35 35;
--accent-foreground: 250 250 250;
--destructive: 255 100 103;
--border: 50 50 50;
--input: 56 56 56;
--ring: 115 115 115;
--surface: 18 19 17;
--surface-dim: 14 15 13;
--chart-1: 212 212 212;
--chart-2: 115 115 115;
--chart-3: 82 82 82;
--chart-4: 64 64 64;
--chart-5: 38 38 38;
--sidebar: 20 21 19;
--sidebar-foreground: 250 250 250;
--sidebar-primary: 20 71 230;
--sidebar-primary-foreground: 250 250 250;
--sidebar-accent: 35 35 35;
--sidebar-accent-foreground: 250 250 250;
--sidebar-border: 50 50 50;
--sidebar-ring: 115 115 115;
}