From aab2e220c519b2e0330f89675f517bfbcb14d626 Mon Sep 17 00:00:00 2001 From: ppc Date: Tue, 13 Aug 2024 18:39:46 +0100 Subject: [PATCH] add server card context menu --- amnet-native/app/ServerManager.tsx | 51 +++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/amnet-native/app/ServerManager.tsx b/amnet-native/app/ServerManager.tsx index 656f79b..b294e56 100644 --- a/amnet-native/app/ServerManager.tsx +++ b/amnet-native/app/ServerManager.tsx @@ -8,31 +8,52 @@ import TimeAgo from "../components/TimeAgo"; import RealmContext from "../models/RealmContext"; import {AMServer} from "../models/AMServer"; +import ContextMenu from "react-native-context-menu-view"; -const {useQuery} = RealmContext; +const {useRealm, useQuery} = RealmContext; function ServerCard(props: { server: AMServer, navigation: any }) { + const realm = useRealm(); const pageCallback = useCallback(() => { props.navigation.navigate('server-card-in', { serverId: props.server._id.toHexString() }); }, [props.navigation, props.server]); + const pageContextMenuCallback = useCallback((action) => { + switch (action.nativeEvent.index) { + case 0: + pageCallback(); + break; + + case 1: + realm.write(() => { + realm.delete(props.server); + }); + break; + } + }, [realm, props.server]); + return ( - - - - - {props.server.serverAddress} - - - - - {props.server.lastUsed - ? () - : (never)} - - + + + + + + {props.server.serverAddress} + + + + + {props.server.lastUsed + ? () + : (never)} + + + ) }