diff --git a/src/renderer/src/components/AppDetail/AppDetail.tsx b/src/renderer/src/components/AppDetail/AppDetail.tsx index b9286d5..2667e76 100644 --- a/src/renderer/src/components/AppDetail/AppDetail.tsx +++ b/src/renderer/src/components/AppDetail/AppDetail.tsx @@ -183,6 +183,26 @@ const AppDetail: React.FC = () => { setSelectedFile(null); }, []); + // Handle mouse back button (XButton1) to navigate back from code view + useEffect(() => { + const handleMouseClick = (e: MouseEvent) => { + // XButton1 (back button) is typically button 3 on mice with side buttons + if (e.button === 3 && viewMode === "code") { + // Prevent any default browser back action + e.preventDefault(); + handleBackToList(); + } + }; + + // Add event listener for mouse clicks + document.addEventListener("mousedown", handleMouseClick); + + // Clean up event listener on unmount + return () => { + document.removeEventListener("mousedown", handleMouseClick); + }; + }, [viewMode, handleBackToList]); + const handleDownloadFile = useCallback( async (fileKey: string, fileName: string) => { if (!currentDomain || downloadingKey) return;