Start the browser contextual tour when the tab opens, including blank tabs.

Co-authored-by: Orca <help@stably.ai>
This commit is contained in:
brennanb2025
2026-06-07 15:45:41 -07:00
co-authored by Orca
parent 654e6d7ad4
commit 8f070e6dcf
4 changed files with 4 additions and 10 deletions
+1 -1
View File
@@ -357,7 +357,7 @@
<div class="when-note">
<strong>When does this show?</strong>
<ul>
<li>First time a <strong>new user</strong> opens the in-app browser on a <strong>loaded local page</strong> (not a blank tab, not a remote/SSH runtime browser).</li>
<li>First time a <strong>new user</strong> opens an in-app browser tab on a <strong>local desktop browser</strong> (not a remote/SSH runtime browser).</li>
<li>Only once per profile, and only one contextual tour per session.</li>
<li>Step 3 is the last step — it appears after Next on step 2. In production, advancing to step 3 would open the <strong>···</strong> menu automatically.</li>
</ul>
@@ -721,9 +721,6 @@ export default function BrowserPane({
const setBrowserPageUrl = useAppStore((s) => s.setBrowserPageUrl)
const runtimeEnvironmentActive = Boolean(activeRuntimeEnvironmentId?.trim())
const activeBrowserPageId = activeBrowserPage?.id ?? null
const activeBrowserPageIsBlank =
!runtimeEnvironmentActive &&
(activeBrowserPage?.url === 'about:blank' || activeBrowserPage?.url === ORCA_BROWSER_BLANK_URL)
const browserPageIds = useMemo(() => browserPages.map((page) => page.id), [browserPages])
const automationVisiblePageIds = useBrowserAutomationVisiblePageIds(browserPageIds)
// Why: inactive Electron webviews must stay mounted in their original DOM
@@ -758,10 +755,7 @@ export default function BrowserPane({
useContextualTour(
'browser',
isActive &&
activeBrowserPage !== null &&
!runtimeEnvironmentActive &&
!activeBrowserPageIsBlank,
isActive && activeBrowserPage !== null && !runtimeEnvironmentActive,
'browser_visible'
)
@@ -448,7 +448,7 @@ describe('browser contextual tour mock generator', () => {
<div class="when-note">
<strong>When does this show?</strong>
<ul>
<li>First time a <strong>new user</strong> opens the in-app browser on a <strong>loaded local page</strong> (not a blank tab, not a remote/SSH runtime browser).</li>
<li>First time a <strong>new user</strong> opens an in-app browser tab on a <strong>local desktop browser</strong> (not a remote/SSH runtime browser).</li>
<li>Only once per profile, and only one contextual tour per session.</li>
<li>Step 3 is the last step — it appears after Next on step 2. In production, advancing to step 3 would open the <strong>···</strong> menu automatically.</li>
</ul>
+1 -1
View File
@@ -71,7 +71,7 @@ export const FEATURE_INTERACTIONS = [
},
{
id: 'browser',
interaction: 'non-blank browser page viewed'
interaction: 'in-app browser opened'
},
{
id: 'tasks',