Browser tab: no focus highlight on the page
Every key on the app's keyboard takes focus from the page for a moment and gives it back, so the site's focus ring (a 2px blue outline on the search box, and a brighter border) flashed with each letter. Outline rings are turned off with the page's clean-up CSS, and the guest preload strips outline, border and box-shadow from the site's own :focus / :focus-within / :focus-visible rules, keeping anything else those rules do. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+4
-2
@@ -1,6 +1,6 @@
|
||||
# Browser tab
|
||||
|
||||
One web page, full screen in the tab: no address bar, bookmarks or scrollbars — just the page, in the
|
||||
One web page, full screen in the tab: no address bar, bookmarks, scrollbars or focus highlights — just the page, in the
|
||||
same area the Graphics tab uses. It loads when the app starts and keeps running while other tabs are
|
||||
showing, so it is ready the moment it is opened. Built for It Is Written
|
||||
(`https://it-is-written-waters-church.vercel.app/`), but any web page works.
|
||||
@@ -65,7 +65,9 @@ the search and could put different results on the program feed.
|
||||
- **`browser-guest-preload.cjs`** runs inside the page (invisible to the site) and reports what the app
|
||||
cannot see from outside: a tapped text field, a tapped reference (found with the app's own
|
||||
`scripture-scan.js` — the same rules ProPresenter Sync uses), scroll, activity, five fingers, and — only
|
||||
while a follower is linked — a script-free copy of the page's DOM.
|
||||
while a follower is linked — a script-free copy of the page's DOM. It also takes the look (outline,
|
||||
border, glow) out of the site's focus styles: every key on the app's keyboard takes focus from the page
|
||||
for a moment, so a focus highlight would flash with each letter typed.
|
||||
- **`browser-tab.js`** owns the tab: the pages, the keyboard (via `createPrayerKeyboard` with a "sink"),
|
||||
scripture taps, scrolling for the phone / OSC / admin, and the follower's copy. On the follower it
|
||||
shows that copy in sandboxed frames (no scripts); in a plain browser (admin offstage copy, `npm start`)
|
||||
|
||||
Reference in New Issue
Block a user