Browse Source

fix bug flutter

master
mortezaei 2 months ago
parent
commit
a9b1451d00
  1. 11
      src/app/layout.tsx
  2. 13
      src/components/ui/report-actions-sheet.tsx

11
src/app/layout.tsx

@ -30,6 +30,17 @@ export default function RootLayout({
}>) {
return (
<html lang="en">
<head>
<script
dangerouslySetInnerHTML={{
__html: `
if (typeof window !== 'undefined') {
window.onFlutterResponse = window.onFlutterResponse || function() {};
}
`,
}}
/>
</head>
<body className={`${faminela.variable} ${amiri.variable}`}>
<Providers>
<div className="app-shell">{children}</div>

13
src/components/ui/report-actions-sheet.tsx

@ -80,14 +80,23 @@ export function ReportActionsSheet({ onClose }: ReportActionsSheetProps) {
}, [isClosing, onClose]);
useEffect(() => {
window.onFlutterResponse = (event) => {
const handleFlutterResponse = (event: {
action: string;
success: boolean;
data?: { latitude: number; longitude: number };
}) => {
if (event.action === "get_location" && event.success && event.data) {
const message = `Location: ${event.data.latitude}, ${event.data.longitude}`;
alert(message);
}
};
window.onFlutterResponse = handleFlutterResponse;
return () => {
window.onFlutterResponse = undefined;
if (window.onFlutterResponse === handleFlutterResponse) {
window.onFlutterResponse = undefined;
}
};
}, []);

Loading…
Cancel
Save