From 653201f26869aa758958cfcc28c0cf19f98f0452 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Fri, 7 Aug 2026 10:10:14 +0000 Subject: [PATCH] pin the app types on the four locked screens that had none MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The allow-list existed on fourteen screens and was missing from every other one, which the previous commit turned from fifty lines into one. These four are locked — the user cannot change what is in the panel — so an appType that stops resolving strands them on the empty teal box in PanelSlot with no picker and no way back. Checked against what is actually persisted rather than against the defaults: `screens/desktop` holds `officerdev/desktop` and `screens/files` holds `officerdev/file-browser`, both already inside the list they are now being given. `screens/terminal` and `screens/dashboards` have no row at all — those screens have never been opened on this machine — so they seed from the default, which also matches. Nothing is rewritten by this. Browser and Email stay unguarded on purpose. Their panels resolve through `components`, which PanelSlot keys on the *panel id*, and their layouts carry `appType: null` — the app type is never consulted, so pinning it would pin nothing. Co-Authored-By: Claude Opus 5 --- .../Screens/Dashboard/Dashboards/DashboardsScreen.tsx | 1 + .../Screens/Dashboard/Desktop/DesktopScreen.tsx | 6 +++++- .../officer-web/Screens/Dashboard/Files/FilesScreen.tsx | 9 ++++++++- .../Screens/Dashboard/Terminal/TerminalScreen.tsx | 6 +++++- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/apps/officer-web/Screens/Dashboard/Dashboards/DashboardsScreen.tsx b/src/apps/officer-web/Screens/Dashboard/Dashboards/DashboardsScreen.tsx index 6f4e16e6..60800adc 100644 --- a/src/apps/officer-web/Screens/Dashboard/Dashboards/DashboardsScreen.tsx +++ b/src/apps/officer-web/Screens/Dashboard/Dashboards/DashboardsScreen.tsx @@ -18,6 +18,7 @@ export const DashboardsScreen = () => { { if (!id) diff --git a/src/apps/officer-web/Screens/Dashboard/Desktop/DesktopScreen.tsx b/src/apps/officer-web/Screens/Dashboard/Desktop/DesktopScreen.tsx index 7726308c..9bf06ca4 100644 --- a/src/apps/officer-web/Screens/Dashboard/Desktop/DesktopScreen.tsx +++ b/src/apps/officer-web/Screens/Dashboard/Desktop/DesktopScreen.tsx @@ -8,7 +8,11 @@ export const DesktopScreen = () => { return (
- +
); }; diff --git a/src/apps/officer-web/Screens/Dashboard/Files/FilesScreen.tsx b/src/apps/officer-web/Screens/Dashboard/Files/FilesScreen.tsx index c86c0b61..e66eb4c0 100644 --- a/src/apps/officer-web/Screens/Dashboard/Files/FilesScreen.tsx +++ b/src/apps/officer-web/Screens/Dashboard/Files/FilesScreen.tsx @@ -9,7 +9,14 @@ export const FilesScreen = () => { return (
- + {/* The file-viewer panels `ephemeral` adds are a layout of their own, rendered beside this one — + they never enter `workspace.value`, so the allow-list does not have to know about them. */} +
); }; diff --git a/src/apps/officer-web/Screens/Dashboard/Terminal/TerminalScreen.tsx b/src/apps/officer-web/Screens/Dashboard/Terminal/TerminalScreen.tsx index b94b0d71..e52af62b 100644 --- a/src/apps/officer-web/Screens/Dashboard/Terminal/TerminalScreen.tsx +++ b/src/apps/officer-web/Screens/Dashboard/Terminal/TerminalScreen.tsx @@ -8,7 +8,11 @@ export const TerminalScreen = () => { return (
- +
); };