Commit Graph

185 Commits

Author SHA1 Message Date
Peter Steinberger
eaac00ebc3 feat: share wake gate via SwabbleKit 2025-12-23 01:31:59 +01:00
Peter Steinberger
ba54a4eced feat(ios): toggle debug canvas status 2025-12-21 14:21:06 +01:00
Peter Steinberger
75c1b370da fix: align canvas defaults and A2UI auto-nav 2025-12-21 12:32:36 +01:00
Peter Steinberger
0df20f4208 fix: clear canvas error banner on load 2025-12-21 03:21:48 +01:00
Peter Steinberger
727741e70d fix: use A2UI message context 2025-12-21 01:48:21 +01:00
Peter Steinberger
7cdeed35ce build: update iOS lint scripts 2025-12-21 01:48:21 +01:00
Peter Steinberger
7359c5ca13 fix: restore canvas action bridge 2025-12-21 01:07:35 +01:00
Peter Steinberger
172a59e03e chore(ios): link AppIntents framework 2025-12-21 00:24:24 +01:00
Peter Steinberger
ec86e49a5b refactor: serve canvas host on gateway port 2025-12-20 17:13:36 +01:00
Peter Steinberger
5163e83c74 fix: route voice wake to main 2025-12-20 15:33:28 +01:00
Peter Steinberger
ad3fef6b6b refactor(canvas): host A2UI via gateway 2025-12-20 12:17:27 +00:00
Peter Steinberger
246ed17f08 style: polish logging and lint hints 2025-12-20 01:48:29 +01:00
Peter Steinberger
7c9005e3a4 fix: tighten iOS main-actor handling 2025-12-20 01:48:29 +01:00
Peter Steinberger
3d05589486 fix: harden device model decoding 2025-12-20 01:48:29 +01:00
Peter Steinberger
95369a949d fix(ios): make parseA2UIActionBody nonisolated 2025-12-19 18:10:10 +01:00
Peter Steinberger
d8d189c5f2 fix(ios): refine canvas and screen handling 2025-12-19 17:47:04 +01:00
Peter Steinberger
be5ea7a288 refactor: replace canvas.show with canvas.present 2025-12-19 03:35:33 +01:00
Peter Steinberger
3f680103a6 feat: route mac control via nodes 2025-12-19 03:16:25 +01:00
Peter Steinberger
6ae65abf8a feat: add node screen recording across apps 2025-12-19 02:57:00 +01:00
Peter Steinberger
cd8ffa8cf7 fix(canvas): load A2UI resources across platforms 2025-12-19 01:53:55 +00:00
Peter Steinberger
af143a6135 iOS: fix camera clip clamp regression test 2025-12-19 00:53:06 +01:00
Peter Steinberger
5879979f34 iOS: allow Tailnet/MagicDNS canvas actions 2025-12-19 00:52:52 +01:00
Peter Steinberger
e3ca38389a iOS: allow A2UI actions from local canvas host 2025-12-18 23:31:49 +01:00
Peter Steinberger
8e6ae25313 iOS: allow HTTP loads in WKWebView 2025-12-18 19:59:43 +01:00
Peter Steinberger
f69d61a4a6 iOS: support jpeg canvas snapshots 2025-12-18 19:48:29 +01:00
Peter Steinberger
7d2ab6cbf7 feat(node): show camera capture HUD 2025-12-18 14:49:07 +01:00
Peter Steinberger
9d8ec2ddb4 fix(ios): restore ScreenController.mode 2025-12-18 13:56:40 +01:00
Peter Steinberger
5e2ab06325 chore(naming): remove remaining iris references 2025-12-18 13:30:22 +01:00
Peter Steinberger
8b3495bf0c chore(naming): remove Iris codename 2025-12-18 13:18:33 +01:00
Peter Steinberger
2658900eca feat(canvas): remove setMode; host A2UI in scaffold 2025-12-18 13:18:24 +01:00
Peter Steinberger
f56ee14e11 A2UI: share web UI and action bridge 2025-12-18 11:38:32 +01:00
Peter Steinberger
11f525cd96 iOS: support canvas.a2ui push/reset 2025-12-18 10:44:32 +01:00
Peter Steinberger
356474c8f7 ci: raise iOS coverage 2025-12-18 10:34:09 +01:00
Peter Steinberger
5608efc2f0 iOS: fix BridgeClient SwiftFormat indent 2025-12-18 08:40:59 +01:00
Peter Steinberger
66ff9d78bc ui: improve idle background blend mode fallback 2025-12-18 08:32:06 +01:00
Peter Steinberger
bc5bf51bd8 Nodes: advertise canvas invoke commands 2025-12-18 02:06:35 +00:00
Peter Steinberger
3f3b59953a fix(ui): harden idle background animation 2025-12-18 02:27:11 +01:00
Peter Steinberger
390613b46f Nodes: handle canvas.* commands on iOS/Android 2025-12-18 01:20:20 +00:00
Peter Steinberger
ba44406989 iOS: centralize canvas commands and capabilities 2025-12-18 02:16:31 +01:00
Peter Steinberger
9bd9cc13ce iOS: alias canvas.* invoke commands 2025-12-18 01:57:31 +01:00
Peter Steinberger
81ee4d7e04 gateway: persist and surface node capabilities 2025-12-18 01:36:38 +01:00
Peter Steinberger
b3292e3124 iOS: allow settings light mode 2025-12-18 01:29:45 +01:00
Peter Steinberger
155830f104 ui(nodes): unify idle background animation 2025-12-18 01:22:26 +01:00
Peter Steinberger
f61d88542a iOS: reorder settings sections 2025-12-18 01:00:36 +01:00
Peter Steinberger
1d1d42f1da style(ios): use Offline bridge status 2025-12-18 00:20:37 +01:00
Peter Steinberger
e9ea394f3e nodes: better default display names 2025-12-17 23:15:15 +01:00
Peter Steinberger
a4656602db style(swift): fix lint 2025-12-17 21:51:36 +01:00
Peter Steinberger
3725d08d00 Presence: add device identity fields 2025-12-17 21:51:36 +01:00
Peter Steinberger
dfcdc4a07a Bridge: advertise node capabilities 2025-12-17 20:03:56 +00:00
Peter Steinberger
c6ce562072 Mobile: prevent sleep setting 2025-12-17 21:01:47 +01:00
Peter Steinberger
38ba295496 feat(chat): Swift chat parity (abort/sessions/stream) 2025-12-17 20:51:27 +01:00
Peter Steinberger
8d42bd7147 Discovery: wide-area bridge DNS-SD
# Conflicts:
#	apps/ios/Sources/Bridge/BridgeDiscoveryModel.swift
#	src/cli/dns-cli.ts
2025-12-17 20:31:02 +01:00
Peter Steinberger
f221f577ff iOS: satisfy SwiftFormat in bridge discovery 2025-12-17 18:01:01 +01:00
Peter Steinberger
a9de193625 Nodes: auto-discover clawdis.internal 2025-12-17 17:01:30 +01:00
Peter Steinberger
8a1710abf9 iOS: allow unicast DNS-SD discovery domain 2025-12-17 14:14:17 +01:00
Peter Steinberger
99e2d82751 test(ios): bump app coverage 2025-12-14 06:09:28 +00:00
Peter Steinberger
1384fbed97 test(ios): cover RootCanvas bridge states 2025-12-14 05:51:48 +00:00
Peter Steinberger
e3e474b724 test(ios): exercise ScreenController eval 2025-12-14 05:51:12 +00:00
Peter Steinberger
668514d29b test(ios): cover ScreenController webview setup 2025-12-14 05:42:39 +00:00
Peter Steinberger
0c5b7995a2 Merge remote-tracking branch 'origin/main' 2025-12-14 05:31:06 +00:00
Peter Steinberger
504990193b fix(camera): harden capture pipeline 2025-12-14 05:30:34 +00:00
Peter Steinberger
c80fbb3f71 fix(ios): update observation env in smoke tests 2025-12-14 05:27:19 +00:00
Peter Steinberger
96293461b6 style(ios): swiftformat 2025-12-14 05:17:59 +00:00
Peter Steinberger
86fac4bb86 ui(ios): animate idle background 2025-12-14 05:17:59 +00:00
Peter Steinberger
286c1865c0 fix(ios): use Observation environment in settings 2025-12-14 05:17:59 +00:00
Peter Steinberger
e941333d8c iOS: Fix canvas touch events and auto-hide status bubble
- Disable scroll on WKWebView to allow touch events to reach canvas
- Add WKNavigationDelegate to intercept clawdis:// deep links from canvas
- Wire up onDeepLink callback to handle taps on canvas buttons
- Auto-hide status bubble after 3 seconds
2025-12-14 05:14:26 +00:00
Peter Steinberger
2c5a612329 refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
Peter Steinberger
1d16c110c1 feat(ios): sync wake words via gateway 2025-12-14 05:06:27 +00:00
Peter Steinberger
9374c0b786 style(ios): swiftformat 2025-12-14 04:47:15 +00:00
Peter Steinberger
a09fd319ef feat(ios): add discovery debug logs 2025-12-14 04:36:00 +00:00
Peter Steinberger
84d466ed1a fix(camera): retain capture delegates 2025-12-14 04:31:04 +00:00
Peter Steinberger
58b00c67c2 style(swift): fix lint and formatting warnings 2025-12-14 03:49:34 +00:00
Peter Steinberger
dd623e4607 test(ios): cover bridge client + more views 2025-12-14 03:39:33 +00:00
Peter Steinberger
c8051f43a5 test(ios): add smoke coverage tests 2025-12-14 03:29:08 +00:00
Peter Steinberger
610692f072 feat(ios): add always-on status overlay 2025-12-14 03:00:55 +00:00
Peter Steinberger
0b912bb312 fix(ios): satisfy Sendable in bridge timeout 2025-12-14 03:00:55 +00:00
Peter Steinberger
4724df9a07 test(ios): cover settings host/port parsing 2025-12-14 02:47:07 +00:00
Peter Steinberger
733e7fb12d test(ios): cover voice trigger + camera clamps 2025-12-14 02:47:06 +00:00
Peter Steinberger
c05ba68b4d fix(ios): timeout bridge connect 2025-12-14 02:41:51 +00:00
Peter Steinberger
47cdc7a4ec test(ios): add bridge session + keychain suites 2025-12-14 02:37:47 +00:00
Peter Steinberger
030282ab30 Merge remote-tracking branch 'origin/main' 2025-12-14 02:37:13 +00:00
Peter Steinberger
7200fb7bea fix(ios): make fastlane beta lane work 2025-12-14 02:35:59 +00:00
Peter Steinberger
e4b9362b4d fix(ios): make fastlane beta lane work 2025-12-14 02:35:35 +00:00
Peter Steinberger
02f5356dfd fix(camera): modernize mp4 export 2025-12-14 02:34:22 +00:00
Peter Steinberger
96d152d95a chore(fastlane): support p8 key path 2025-12-14 02:20:25 +00:00
Peter Steinberger
344e496286 chore(fastlane): support p8 key path 2025-12-14 02:19:51 +00:00
Peter Steinberger
7c4290ea39 fix(ios): make connection badge visible 2025-12-14 02:19:20 +00:00
Peter Steinberger
480c7b1033 Merge remote-tracking branch 'origin/main' into tmp/ios-statusicon 2025-12-14 02:18:09 +00:00
Peter Steinberger
6415fa0c52 fix(ios): show connection status badge 2025-12-14 02:17:54 +00:00
Peter Steinberger
2ae6b66958 test(ios): share scheme and add deep link tests 2025-12-14 02:17:44 +00:00
Peter Steinberger
388aa6c234 feat(ios): add fastlane setup 2025-12-14 02:10:31 +00:00
Peter Steinberger
4ce9048b98 test(ios): add unit test target 2025-12-14 02:05:50 +00:00
Peter Steinberger
6cd9e85f6a fix(ios): set CFBundleIconName 2025-12-14 02:05:44 +00:00
Peter Steinberger
4d2dce54d1 feat(camera): share jpeg transcoder + default maxWidth 2025-12-14 02:00:48 +00:00
Peter Steinberger
7cc619559b fix(ios): remove white border from app icon 2025-12-14 01:58:35 +00:00
Peter Steinberger
7e31cc4ccd feat(ios): unify manual bridge config and auto-reconnect 2025-12-14 01:55:40 +00:00
Peter Steinberger
0365f86288 fix(ios): ensure app icon asset catalog 2025-12-14 01:50:51 +00:00
Peter Steinberger
c12bbe6750 fix(ios): use mac icon + avoid voice wake crash 2025-12-14 01:09:40 +00:00
Peter Steinberger
ce32693b3f feat(camera): add snap/clip capture 2025-12-14 00:48:58 +00:00
Peter Steinberger
74d638bb88 feat(ios): reconnect to last discovered gateway 2025-12-14 00:48:16 +00:00