Better platform handling
This commit is contained in:
@@ -53,17 +53,10 @@ export function Trigger({
|
|||||||
onOut: onMouseLeave,
|
onOut: onMouseLeave,
|
||||||
} = useInteractionState()
|
} = useInteractionState()
|
||||||
const {state: focused, onIn: onFocus, onOut: onBlur} = useInteractionState()
|
const {state: focused, onIn: onFocus, onOut: onBlur} = useInteractionState()
|
||||||
const {
|
|
||||||
state: pressed,
|
|
||||||
onIn: onPressIn,
|
|
||||||
onOut: onPressOut,
|
|
||||||
} = useInteractionState()
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<DropdownMenu.Trigger asChild>
|
<DropdownMenu.Trigger asChild>
|
||||||
<Pressable
|
<Pressable
|
||||||
onPressIn={onPressIn}
|
|
||||||
onPressOut={onPressOut}
|
|
||||||
onFocus={onFocus}
|
onFocus={onFocus}
|
||||||
onBlur={onBlur}
|
onBlur={onBlur}
|
||||||
style={flatten([web({outline: 0})])}
|
style={flatten([web({outline: 0})])}
|
||||||
@@ -77,7 +70,7 @@ export function Trigger({
|
|||||||
state: {
|
state: {
|
||||||
hovered,
|
hovered,
|
||||||
focused,
|
focused,
|
||||||
pressed,
|
pressed: false,
|
||||||
},
|
},
|
||||||
handlers: {},
|
handlers: {},
|
||||||
})}
|
})}
|
||||||
|
|||||||
@@ -9,6 +9,9 @@ export type TriggerChildProps =
|
|||||||
isNative: true
|
isNative: true
|
||||||
control: Dialog.DialogOuterProps['control']
|
control: Dialog.DialogOuterProps['control']
|
||||||
state: {
|
state: {
|
||||||
|
/**
|
||||||
|
* Web only, `false` on native
|
||||||
|
*/
|
||||||
hovered: false
|
hovered: false
|
||||||
focused: boolean
|
focused: boolean
|
||||||
pressed: boolean
|
pressed: boolean
|
||||||
@@ -27,7 +30,10 @@ export type TriggerChildProps =
|
|||||||
state: {
|
state: {
|
||||||
hovered: boolean
|
hovered: boolean
|
||||||
focused: boolean
|
focused: boolean
|
||||||
pressed: boolean
|
/**
|
||||||
|
* Native only, `false` on web
|
||||||
|
*/
|
||||||
|
pressed: false
|
||||||
}
|
}
|
||||||
handlers: {}
|
handlers: {}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ export function Menus() {
|
|||||||
<Menu.Root>
|
<Menu.Root>
|
||||||
<Menu.Trigger>
|
<Menu.Trigger>
|
||||||
{({state, handlers}) => {
|
{({state, handlers}) => {
|
||||||
console.log(state)
|
console.log(state.hovered, state.focused, state.pressed)
|
||||||
return <Text {...handlers}>Open</Text>
|
return <Text {...handlers}>Open</Text>
|
||||||
}}
|
}}
|
||||||
</Menu.Trigger>
|
</Menu.Trigger>
|
||||||
|
|||||||
Reference in New Issue
Block a user