fix: note tag delete button not showing on iOS (#1403)

This commit is contained in:
Aman Harwara
2022-08-16 14:40:03 +05:30
committed by GitHub
parent 901b1516d3
commit 2ea9f862fe
2 changed files with 11 additions and 5 deletions

View File

@@ -11,6 +11,8 @@ import {
import { ViewControllerManager } from '@/Controllers/ViewControllerManager' import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { SNTag } from '@standardnotes/snjs' import { SNTag } from '@standardnotes/snjs'
import { observer } from 'mobx-react-lite' import { observer } from 'mobx-react-lite'
import { useResponsiveAppPane } from '../ResponsivePane/ResponsivePaneProvider'
import { AppPaneId } from '../ResponsivePane/AppPaneMetadata'
type Props = { type Props = {
viewControllerManager: ViewControllerManager viewControllerManager: ViewControllerManager
@@ -18,6 +20,8 @@ type Props = {
} }
const NoteTag = ({ viewControllerManager, tag }: Props) => { const NoteTag = ({ viewControllerManager, tag }: Props) => {
const { toggleAppPane } = useResponsiveAppPane()
const noteTags = viewControllerManager.noteTagsController const noteTags = viewControllerManager.noteTagsController
const { autocompleteInputFocused, focusedTagUuid, tags } = noteTags const { autocompleteInputFocused, focusedTagUuid, tags } = noteTags
@@ -46,15 +50,17 @@ const NoteTag = ({ viewControllerManager, tag }: Props) => {
) )
const onTagClick: MouseEventHandler = useCallback( const onTagClick: MouseEventHandler = useCallback(
(event) => { async (event) => {
if (tagClicked && event.target !== deleteTagRef.current) { if (tagClicked && event.target !== deleteTagRef.current) {
setTagClicked(false) setTagClicked(false)
void viewControllerManager.navigationController.setSelectedTag(tag) await viewControllerManager.navigationController.setSelectedTag(tag)
toggleAppPane(AppPaneId.Items)
} else { } else {
setTagClicked(true) setTagClicked(true)
tagRef.current?.focus()
} }
}, },
[viewControllerManager, tagClicked, tag], [viewControllerManager, tagClicked, tag, toggleAppPane],
) )
const onFocus = useCallback(() => { const onFocus = useCallback(() => {
@@ -132,7 +138,7 @@ const NoteTag = ({ viewControllerManager, tag }: Props) => {
{showDeleteButton && ( {showDeleteButton && (
<a <a
ref={deleteTagRef} ref={deleteTagRef}
type="button" role="button"
className="ml-2 -mr-1 flex cursor-pointer border-0 bg-transparent p-0" className="ml-2 -mr-1 flex cursor-pointer border-0 bg-transparent p-0"
onBlur={onBlur} onBlur={onBlur}
onClick={onDeleteTagClick} onClick={onDeleteTagClick}

View File

@@ -70,7 +70,7 @@ const AutocompleteTagResult = ({ viewControllerManager, tagResult, closeOnBlur }
<button <button
ref={tagResultRef} ref={tagResultRef}
type="button" type="button"
className="flex w-full cursor-pointer items-center border-0 bg-transparent px-3 py-1.5 text-left text-sm text-text hover:bg-contrast hover:text-foreground focus:bg-info-backdrop focus:bg-info focus:text-info-contrast focus:shadow-none" className="flex w-full cursor-pointer items-center border-0 bg-transparent px-3 py-1.5 text-left text-sm text-text hover:bg-contrast hover:text-foreground focus:bg-info focus:text-info-contrast focus:shadow-none"
onClick={() => onTagOptionClick(tagResult)} onClick={() => onTagOptionClick(tagResult)}
onFocus={onFocus} onFocus={onFocus}
onBlur={onBlur} onBlur={onBlur}