diff --git a/src/app/browser/components/button.tsx b/src/app/browser/components/button.tsx index 480a2d3..2bb35dd 100644 --- a/src/app/browser/components/button.tsx +++ b/src/app/browser/components/button.tsx @@ -15,17 +15,26 @@ function ButtonMac(props: { const window_focused = useContext(WindowFocusedContext); const accent_colour = useAccentColour(); + + const [hovered, setMouseOver] = useState(false); + const onMouseOver = useCallback(() => setMouseOver(true), []); + const onMouseOut = useCallback(() => setMouseOver(false), []); + const [pressed, setPressIn] = useState(false); const onPressIn = useCallback(() => setPressIn(true), []); const onPressOut = useCallback(() => setPressIn(false), []); - - const active = window_focused && (props.primary || pressed); + + const pressed_appearance = window_focused && pressed && hovered; + const active = window_focused && (props.primary || pressed_appearance); return {props.title} @@ -91,6 +100,7 @@ function ButtonWindows(props: { const [pressed, setPressIn] = useState(false); const onPressIn = useCallback(() => setPressIn(true), []); const onPressOut = useCallback(() => setPressIn(false), []); + const active = window_focused && (props.primary || pressed); return