diff --git a/src/components/Post/Embed/index.tsx b/src/components/Post/Embed/index.tsx index 3efd231367..1462ef542f 100644 --- a/src/components/Post/Embed/index.tsx +++ b/src/components/Post/Embed/index.tsx @@ -23,7 +23,7 @@ import {ContentHider} from '#/components/moderation/ContentHider' import {PostAlerts} from '#/components/moderation/PostAlerts' import {RichText} from '#/components/RichText' import {Embed as StarterPackCard} from '#/components/StarterPack/StarterPackCard' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import * as bsky from '#/types/bsky' import { type Embed as TEmbed, @@ -284,7 +284,7 @@ export function QuoteEmbed({ childContainerStyle={[a.pt_sm]}> {({active}) => ( <> - {!active && } + {!active && } ) + + if (hover) { + console.log({ + isWeb, + web, + isNative, + native, + }) + } + + if (isWeb && web) { + return isTouchDevice ? null : el + } else if (isNative && native) { + return el + } + + return null } diff --git a/src/components/SubtleWebHover.tsx b/src/components/SubtleWebHover.tsx deleted file mode 100644 index d60968e9cf..0000000000 --- a/src/components/SubtleWebHover.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import {type ViewStyleProp} from '#/alf' - -export function SubtleWebHover({}: ViewStyleProp & {hover: boolean}) { - return null -} diff --git a/src/components/SubtleWebHover.web.tsx b/src/components/SubtleWebHover.web.tsx deleted file mode 100644 index 8e7b48f93e..0000000000 --- a/src/components/SubtleWebHover.web.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import {StyleSheet, View} from 'react-native' - -import {isTouchDevice} from '#/lib/browser' -import {useTheme, type ViewStyleProp} from '#/alf' - -export function SubtleWebHover({ - style, - hover, -}: ViewStyleProp & {hover: boolean}) { - const t = useTheme() - if (isTouchDevice) { - return null - } - let opacity = 0.5 - switch (t.name) { - case 'dark': - opacity = 0.4 - break - case 'dim': - opacity = 0.45 - break - case 'light': - opacity = 0.5 - break - } - return ( - - ) -} - -const styles = StyleSheet.create({ - container: { - position: 'absolute', - left: 0, - right: 0, - bottom: 0, - top: 0, - pointerEvents: 'none', - // @ts-ignore web only - transition: '0.15s ease-in-out opacity', - }, -}) diff --git a/src/screens/PostThread/components/ThreadItemPost.tsx b/src/screens/PostThread/components/ThreadItemPost.tsx index a43c92e0e8..fcdd0c1194 100644 --- a/src/screens/PostThread/components/ThreadItemPost.tsx +++ b/src/screens/PostThread/components/ThreadItemPost.tsx @@ -41,7 +41,7 @@ import {ShowMoreTextButton} from '#/components/Post/ShowMoreTextButton' import {PostControls} from '#/components/PostControls' import {RichText} from '#/components/RichText' import * as Skele from '#/components/Skeleton' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import {Text} from '#/components/Typography' export type ThreadItemPostProps = { @@ -246,7 +246,7 @@ const ThreadItemPostInner = memo(function ThreadItemPostInner({ const {isActive: live} = useActorStatus(post.author) return ( - + - + ) }) -function SubtleHover({children}: {children: ReactNode}) { +function SubtleHoverWrapper({children}: {children: ReactNode}) { const { state: hover, onIn: onHoverIn, @@ -354,7 +354,7 @@ function SubtleHover({children}: {children: ReactNode}) { onPointerEnter={onHoverIn} onPointerLeave={onHoverOut} style={a.pointer}> - + {children} ) diff --git a/src/screens/PostThread/components/ThreadItemTreePost.tsx b/src/screens/PostThread/components/ThreadItemTreePost.tsx index 5d31233585..ed080d0a65 100644 --- a/src/screens/PostThread/components/ThreadItemTreePost.tsx +++ b/src/screens/PostThread/components/ThreadItemTreePost.tsx @@ -40,7 +40,7 @@ import {ShowMoreTextButton} from '#/components/Post/ShowMoreTextButton' import {PostControls} from '#/components/PostControls' import {RichText} from '#/components/RichText' import * as Skele from '#/components/Skeleton' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import {Text} from '#/components/Typography' /** @@ -310,7 +310,7 @@ const ThreadItemTreePostInner = memo(function ThreadItemTreePostInner({ return ( - + - + ) }) -function SubtleHover({children}: {children: React.ReactNode}) { +function SubtleHoverWrapper({children}: {children: React.ReactNode}) { const { state: hover, onIn: onHoverIn, @@ -397,7 +397,7 @@ function SubtleHover({children}: {children: React.ReactNode}) { onPointerEnter={onHoverIn} onPointerLeave={onHoverOut} style={[a.flex_1, a.pointer]}> - + {children} ) diff --git a/src/view/com/notifications/NotificationFeedItem.tsx b/src/view/com/notifications/NotificationFeedItem.tsx index 3034864f11..5809e71065 100644 --- a/src/view/com/notifications/NotificationFeedItem.tsx +++ b/src/view/com/notifications/NotificationFeedItem.tsx @@ -66,7 +66,7 @@ import {InlineLinkText, Link} from '#/components/Link' import * as MediaPreview from '#/components/MediaPreview' import {ProfileHoverCard} from '#/components/ProfileHoverCard' import {Notification as StarterPackCard} from '#/components/StarterPack/StarterPackCard' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import {Text} from '#/components/Typography' import {useSimpleVerificationState} from '#/components/verification' import {VerificationCheck} from '#/components/verification/VerificationCheck' @@ -613,7 +613,7 @@ let NotificationFeedItem = ({ }}> {({hovered}) => ( <> - + {/* TODO: Prevent conditional rendering and move toward composable notifications for clearer accessibility labeling */} diff --git a/src/view/com/post/Post.tsx b/src/view/com/post/Post.tsx index 58cb40f711..78eae70d5e 100644 --- a/src/view/com/post/Post.tsx +++ b/src/view/com/post/Post.tsx @@ -35,7 +35,7 @@ import {PostRepliedTo} from '#/components/Post/PostRepliedTo' import {ShowMoreTextButton} from '#/components/Post/ShowMoreTextButton' import {PostControls} from '#/components/PostControls' import {RichText} from '#/components/RichText' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import * as bsky from '#/types/bsky' export function Post({ @@ -167,7 +167,7 @@ function PostInner({ onPointerLeave={() => { setHover(false) }}> - + {showReplyLine && } diff --git a/src/view/com/posts/PostFeedItem.tsx b/src/view/com/posts/PostFeedItem.tsx index 91eca5ba1d..89ea9b6810 100644 --- a/src/view/com/posts/PostFeedItem.tsx +++ b/src/view/com/posts/PostFeedItem.tsx @@ -58,7 +58,7 @@ import {PostControls} from '#/components/PostControls' import {DiscoverDebug} from '#/components/PostControls/DiscoverDebug' import {ProfileHoverCard} from '#/components/ProfileHoverCard' import {RichText} from '#/components/RichText' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import * as bsky from '#/types/bsky' interface FeedItemProps { @@ -317,7 +317,7 @@ let FeedItemInner = ({ onPointerLeave={() => { setHover(false) }}> - + {isThreadChild && ( diff --git a/src/view/com/posts/ViewFullThread.tsx b/src/view/com/posts/ViewFullThread.tsx index 0f083c330c..dc2edd20de 100644 --- a/src/view/com/posts/ViewFullThread.tsx +++ b/src/view/com/posts/ViewFullThread.tsx @@ -8,7 +8,7 @@ import {useLingui} from '@lingui/react' import {usePalette} from '#/lib/hooks/usePalette' import {makeProfileLink} from '#/lib/routes/links' import {useInteractionState} from '#/components/hooks/useInteractionState' -import {SubtleWebHover} from '#/components/SubtleWebHover' +import {SubtleHover} from '#/components/SubtleHover' import {Link} from '../util/Link' import {Text} from '../util/text/Text' @@ -33,7 +33,7 @@ export function ViewFullThread({uri}: {uri: string}) { noFeedback onPointerEnter={onHoverIn} onPointerLeave={onHoverOut}> - - +