diff --git a/apps/web/e2e/search.spec.ts b/apps/web/e2e/search.spec.ts index 0a48f38..a5c89b5 100644 --- a/apps/web/e2e/search.spec.ts +++ b/apps/web/e2e/search.spec.ts @@ -39,8 +39,13 @@ test('search finds page content, highlights it, and is keyboard-operable', async await page.keyboard.type(`the unique ${word} lives in this body`); await page.reload(); await expect(page.locator('.editor-content')).toContainText(word); - // Leave edit mode so "/" is a shortcut, not editor input. - await page.locator('.editor-page__mode-toggle').click(); + // The reload already landed back in read mode (the mode state resets), so + // "/" acts as the global shortcut here. This spec used to click the mode + // toggle again "to leave edit mode" — which actually RE-ENTERED it; that + // passed only while entering edit mode left focus on the toggle button. + // Since the editor grabs focus on entering edit mode (PR #140), "/" would + // become ordinary editor input there, racing the deferred focus — the + // intermittent-then-persistent failure of this pack. // Open search with the "/" shortcut. await page.keyboard.press('/'); diff --git a/apps/web/src/styles/base.css b/apps/web/src/styles/base.css index d217318..44ad026 100644 --- a/apps/web/src/styles/base.css +++ b/apps/web/src/styles/base.css @@ -1638,6 +1638,13 @@ ul[data-type='task_list'] li > label { margin-top: 0.25em; } +/* Editor/auth NodeView only (the bare-input shape has no label): its line + metrics sit the checkbox ~3px lower than in the public view, so pull the + label up by that much — tuned to Stefan's eye on the live stage (#137). */ +ul[data-type='task_list'] li > label { + margin-top: calc(0.25em - 3px); +} + ul[data-type='task_list'] li p:first-of-type { margin-top: 0; }