diff --git a/packages/web/src/javascripts/Components/SuperEditor/Plugins/BlockPickerPlugin/BlockPickerMenuItem.tsx b/packages/web/src/javascripts/Components/SuperEditor/Plugins/BlockPickerPlugin/BlockPickerMenuItem.tsx
index 51f002a3e..2840a134a 100644
--- a/packages/web/src/javascripts/Components/SuperEditor/Plugins/BlockPickerPlugin/BlockPickerMenuItem.tsx
+++ b/packages/web/src/javascripts/Components/SuperEditor/Plugins/BlockPickerPlugin/BlockPickerMenuItem.tsx
@@ -19,9 +19,7 @@ export function BlockPickerMenuItem({
{modal}
-
- onQueryChange={setQueryString}
- onSelectOption={onSelectOption}
- triggerFn={checkForTriggerMatch}
- options={options}
- menuRenderFn={(anchorElementRef, { selectedIndex, selectOptionAndCleanUp, setHighlightedIndex }) => {
- if (!anchorElementRef.current || !options.length) {
- return null
- }
-
- return (
- mh / 2}
- >
-
- {options.map((option, i: number) => (
- {
- setHighlightedIndex(i)
- selectOptionAndCleanUp(option)
- }}
- onMouseEnter={() => {
- setHighlightedIndex(i)
- }}
- key={option.key}
- option={option}
- />
- ))}
-
-
- )
- }}
- />
+
+
+ onQueryChange={setQueryString}
+ onSelectOption={onSelectOption}
+ triggerFn={checkForTriggerMatch}
+ options={options}
+ menuRenderFn={(anchorElementRef, { selectedIndex, selectOptionAndCleanUp, setHighlightedIndex }) => {
+ if (!anchorElementRef.current || !options.length) {
+ return null
+ }
+ return (
+ anchorElementRef.current!.getBoundingClientRect()}
+ autoFocus={false}
+ autoFocusOnShow={false}
+ className={PopoverClassNames}
+ fitViewport
+ >
+
+ {options.map((option, i: number) => (
+ {
+ setHighlightedIndex(i)
+ selectOptionAndCleanUp(option)
+ }}
+ onMouseEnter={() => {
+ setHighlightedIndex(i)
+ }}
+ key={option.key}
+ option={option}
+ />
+ ))}
+
+
+ )
+ }}
+ />
+
>
)
}
diff --git a/packages/web/src/javascripts/Components/SuperEditor/Plugins/ClassNames.ts b/packages/web/src/javascripts/Components/SuperEditor/Plugins/ClassNames.ts
index fb1f58a49..60ed515b6 100644
--- a/packages/web/src/javascripts/Components/SuperEditor/Plugins/ClassNames.ts
+++ b/packages/web/src/javascripts/Components/SuperEditor/Plugins/ClassNames.ts
@@ -1,9 +1,7 @@
import { classNames } from '@standardnotes/utils'
-export const PopoverClassNames = classNames(
- 'z-dropdown-menu w-full',
- 'cursor-auto flex-col overflow-y-auto rounded bg-default h-auto',
-)
+export const PopoverClassNames =
+ 'max-h-[min(var(--popover-available-height,_50vh),_50vh)] w-[--popover-available-width] overflow-y-auto rounded border border-[--popover-border-color] bg-default shadow-main [backdrop-filter:var(--popover-backdrop-filter)] md:max-w-xs md:bg-[--popover-background-color]'
export const PopoverItemClassNames = classNames(
'flex w-full items-center text-base overflow-hidden py-2 px-3 hover:bg-contrast hover:text-foreground',
diff --git a/packages/web/src/javascripts/Components/SuperEditor/Plugins/ItemSelectionPlugin/ItemSelectionPlugin.tsx b/packages/web/src/javascripts/Components/SuperEditor/Plugins/ItemSelectionPlugin/ItemSelectionPlugin.tsx
index 6b8a9d015..377e17eef 100644
--- a/packages/web/src/javascripts/Components/SuperEditor/Plugins/ItemSelectionPlugin/ItemSelectionPlugin.tsx
+++ b/packages/web/src/javascripts/Components/SuperEditor/Plugins/ItemSelectionPlugin/ItemSelectionPlugin.tsx
@@ -7,11 +7,11 @@ import { ItemOption } from './ItemOption'
import { useApplication } from '@/Components/ApplicationProvider'
import { ContentType, SNNote } from '@standardnotes/snjs'
import { getLinkingSearchResults } from '@/Utils/Items/Search/getSearchResults'
-import Popover from '@/Components/Popover/Popover'
import { INSERT_BUBBLE_COMMAND, INSERT_FILE_COMMAND } from '../Commands'
import { useLinkingController } from '../../../../Controllers/LinkingControllerProvider'
-import { isMobileScreen } from '@/Utils'
import { useTypeaheadAllowingSpacesAndPunctuation } from './useTypeaheadAllowingSpacesAndPunctuation'
+import { Popover, PopoverProvider } from '@ariakit/react'
+import { PopoverClassNames } from '../ClassNames'
type Props = {
currentNote: SNNote
@@ -83,47 +83,47 @@ export const ItemSelectionPlugin: FunctionComponent = ({ currentNote }) =
}, [application, editor, currentNote, queryString, linkingController])
return (
-
- onQueryChange={setQueryString}
- onSelectOption={onSelectOption}
- triggerFn={checkForTriggerMatch}
- options={options}
- menuRenderFn={(anchorElementRef, { selectedIndex, selectOptionAndCleanUp, setHighlightedIndex }) => {
- if (!anchorElementRef.current || !options.length) {
- return null
- }
-
- return (
- mh / 2}
- >
-
- {options.map((option, i: number) => (
- {
- setHighlightedIndex(i)
- selectOptionAndCleanUp(option)
- }}
- onMouseEnter={() => {
- setHighlightedIndex(i)
- }}
- key={option.key}
- option={option}
- />
- ))}
-
-
- )
- }}
- />
+
+
+ onQueryChange={setQueryString}
+ onSelectOption={onSelectOption}
+ triggerFn={checkForTriggerMatch}
+ options={options}
+ menuRenderFn={(anchorElementRef, { selectedIndex, selectOptionAndCleanUp, setHighlightedIndex }) => {
+ if (!anchorElementRef.current || !options.length) {
+ return null
+ }
+ return (
+ anchorElementRef.current!.getBoundingClientRect()}
+ autoFocus={false}
+ autoFocusOnShow={false}
+ className={PopoverClassNames}
+ fitViewport
+ >
+
+ {options.map((option, i: number) => (
+ {
+ setHighlightedIndex(i)
+ selectOptionAndCleanUp(option)
+ }}
+ onMouseEnter={() => {
+ setHighlightedIndex(i)
+ }}
+ key={option.key}
+ option={option}
+ />
+ ))}
+
+
+ )
+ }}
+ />
+
)
}