Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: resolve tab navigation issue in Firefox with column and note rea…
Browse files Browse the repository at this point in the history
…ction menus
Aejkatappaja committed Oct 17, 2024
1 parent d1c6ac2 commit fc00705
Showing 1 changed file with 31 additions and 22 deletions.
53 changes: 31 additions & 22 deletions src/components/MiniMenu/MiniMenu.tsx
Original file line number Diff line number Diff line change
@@ -16,25 +16,34 @@ type MiniMenuProps = {
items: MiniMenuItem[];
};

export const MiniMenu = ({className, items}: MiniMenuProps) => (
<ReactFocusLock autoFocus={false}>
<div className={classNames(className, "mini-menu")}>
{items.map((item) => {
const anchor = uniqueId(`mini-menu-${item.label}`);
return (
<button
data-tooltip-id="scrumlr-tooltip"
data-tooltip-content={item.label}
aria-label={item.label}
id={anchor}
className={classNames("mini-menu__item", {"mini-menu__item--active": item.active})}
key={item.label}
onClick={item?.onClick}
>
{item.icon}
</button>
);
})}
</div>
</ReactFocusLock>
);
export const MiniMenu = ({className, items}: MiniMenuProps) => {
/**
* In Firefox, the tab navigation doesn't work as expected when using
* the columns menu or the note reactions menu. We should activate
* autoFocus to solve this issue.
*/
const isFirefox = navigator.userAgent.includes("Firefox");

return (
<ReactFocusLock autoFocus={isFirefox}>
<div className={classNames(className, "mini-menu")}>
{items.map((item) => {
const anchor = uniqueId(`mini-menu-${item.label}`);
return (
<button
data-tooltip-id="scrumlr-tooltip"
data-tooltip-content={item.label}
aria-label={item.label}
id={anchor}
className={classNames("mini-menu__item", {"mini-menu__item--active": item.active})}
key={item.label}
onClick={item?.onClick}
>
{item.icon}
</button>
);
})}
</div>
</ReactFocusLock>
);
};

0 comments on commit fc00705

Please sign in to comment.