From 4c684d75a3f40057e3cea8d6cb93c0337fcc42df Mon Sep 17 00:00:00 2001 From: TerryM Date: Fri, 5 Jun 2026 21:09:42 +0800 Subject: [PATCH] Revert "fix: hide download URL in in-app browser guide" This reverts commit 3275aff121a348622eb62d3a73c1970300b0dc01. --- src/components/InAppDownloadGuide.tsx | 30 ++++++++++++++++----------- src/locales/en.ts | 13 ++++++------ src/locales/id.ts | 14 ++++++------- src/locales/ja.ts | 15 +++++++------- src/locales/ko.ts | 15 +++++++------- src/locales/ms.ts | 13 ++++++------ src/locales/vi.ts | 14 ++++++------- src/locales/zh-CN.ts | 14 ++++++------- 8 files changed, 62 insertions(+), 66 deletions(-) diff --git a/src/components/InAppDownloadGuide.tsx b/src/components/InAppDownloadGuide.tsx index 04b63e2..65acbc5 100644 --- a/src/components/InAppDownloadGuide.tsx +++ b/src/components/InAppDownloadGuide.tsx @@ -47,13 +47,13 @@ export function InAppDownloadGuideProvider({ }) { const { t } = useI18n(); const { showToast } = useToast(); - const [open, setOpen] = useState(false); + const [detail, setDetail] = useState(null); useEffect(() => { const onShow = (event: Event) => { const ce = event as CustomEvent; if (!ce.detail) return; - setOpen(true); + setDetail(ce.detail); }; window.addEventListener(IN_APP_DOWNLOAD_GUIDE_EVENT, onShow); return () => @@ -61,19 +61,19 @@ export function InAppDownloadGuideProvider({ }, []); useEffect(() => { - if (!open) return; + if (!detail) return; const onKey = (event: KeyboardEvent) => { - if (event.key === "Escape") setOpen(false); + if (event.key === "Escape") setDetail(null); }; window.addEventListener("keydown", onKey); return () => window.removeEventListener("keydown", onKey); - }, [open]); + }, [detail]); - const close = () => setOpen(false); + const close = () => setDetail(null); - const handleCopyPageLink = async () => { - if (typeof window === "undefined") return; - const ok = await copyTextToClipboard(window.location.href); + const handleCopy = async () => { + if (!detail) return; + const ok = await copyTextToClipboard(detail.url); if (ok) { showToast(t("inAppDownloadCopied")); } else { @@ -89,7 +89,7 @@ export function InAppDownloadGuideProvider({ return ( <> {children} - {open + {detail ? createPortal(
+
+

+ {detail.url} +

+
+
diff --git a/src/locales/en.ts b/src/locales/en.ts index 177dfcd..ef79b74 100644 --- a/src/locales/en.ts +++ b/src/locales/en.ts @@ -266,16 +266,15 @@ export const enDict: Dict = { backToHome: "Back to Home", inAppDownloadTitle: "Please open in your system browser to download", inAppDownloadIntro: - "Your current in-app browser cannot download files. Open this page in your system browser, then tap download again.", + "Your current in-app browser cannot download files. Copy the link below and open it in your system browser — the file will save directly.", inAppDownloadIntroNamed: - "{browser} cannot download files directly. Open this page in your system browser, then tap download again.", + "{browser} cannot download files directly. Copy the link below and open it in your system browser — the file will save directly.", inAppDownloadStepCopy: - 'Tap the menu (top-right) and choose "Open in default browser".', + 'Tap "Copy link" below — that is the direct file download URL.', inAppDownloadStepOpen: - "If that option is missing, tap “Copy page link” below and open it in Safari, Chrome, or another browser.", + "Open your system browser (Safari, Chrome, etc.) and paste the link into the address bar.", inAppDownloadStepDownload: - "Once the page opens in your system browser, tap the download button again to save the file.", - inAppDownloadCopyPageLink: "Copy page link", - inAppDownloadCopied: "Page link copied", + "The file will start downloading to your downloads folder automatically.", + inAppDownloadCopied: "Link copied", inAppDownloadCopyFail: "Could not copy the link, please copy it manually", }; diff --git a/src/locales/id.ts b/src/locales/id.ts index 94442ba..583f9b0 100644 --- a/src/locales/id.ts +++ b/src/locales/id.ts @@ -269,16 +269,14 @@ export const idDict: Dict = { backToHome: "Kembali ke Beranda", inAppDownloadTitle: "Silakan buka di peramban sistem untuk mengunduh", inAppDownloadIntro: - "Peramban dalam aplikasi saat ini tidak dapat mengunduh berkas. Buka halaman ini di peramban sistem, lalu ketuk unduh lagi.", + "Peramban dalam aplikasi saat ini tidak dapat mengunduh berkas. Salin tautan di bawah dan buka di peramban sistem — berkas akan langsung tersimpan.", inAppDownloadIntroNamed: - "{browser} tidak dapat mengunduh berkas secara langsung. Buka halaman ini di peramban sistem, lalu ketuk unduh lagi.", + "{browser} tidak dapat mengunduh berkas secara langsung. Salin tautan di bawah dan buka di peramban sistem — berkas akan langsung tersimpan.", inAppDownloadStepCopy: - 'Buka menu di kanan atas dan pilih "Buka di peramban".', + 'Ketuk "Salin tautan" di bawah (ini adalah URL unduhan langsung berkas).', inAppDownloadStepOpen: - "Jika opsi itu tidak ada, ketuk “Salin tautan halaman” di bawah lalu buka di Safari, Chrome, dll.", - inAppDownloadStepDownload: - "Setelah halaman terbuka di peramban sistem, ketuk tombol unduh lagi untuk menyimpan berkas.", - inAppDownloadCopyPageLink: "Salin tautan halaman", - inAppDownloadCopied: "Tautan halaman disalin", + "Buka peramban sistem (Safari, Chrome, dll.) dan tempel tautan ke bilah alamat.", + inAppDownloadStepDownload: "Berkas akan otomatis terunduh ke folder Unduhan.", + inAppDownloadCopied: "Tautan disalin", inAppDownloadCopyFail: "Tidak dapat menyalin, silakan salin secara manual", }; diff --git a/src/locales/ja.ts b/src/locales/ja.ts index 34d44f4..2a7943c 100644 --- a/src/locales/ja.ts +++ b/src/locales/ja.ts @@ -270,15 +270,14 @@ export const jaDict: Dict = { backToHome: "ホームへ戻る", inAppDownloadTitle: "システムブラウザで開いてダウンロードしてください", inAppDownloadIntro: - "現在のアプリ内ブラウザはファイルをダウンロードできません。このページをシステムブラウザで開き、もう一度ダウンロードしてください。", + "現在のアプリ内ブラウザではファイルをダウンロードできません。下のリンクをコピーし、システムブラウザで開けば自動的にダウンロードされます。", inAppDownloadIntroNamed: - "{browser} はファイルを直接ダウンロードできません。このページをシステムブラウザで開き、もう一度ダウンロードしてください。", - inAppDownloadStepCopy: "右上のメニューを開き、「ブラウザで開く」を選びます。", + "{browser} のアプリ内ブラウザではファイルをダウンロードできません。下のリンクをコピーし、システムブラウザで開けば自動的にダウンロードされます。", + inAppDownloadStepCopy: + "下の「リンクをコピー」をタップします(ファイルの直接ダウンロード URL です)。", inAppDownloadStepOpen: - "該当の項目がなければ、下の「ページリンクをコピー」をタップし、Safari や Chrome で開いてください。", - inAppDownloadStepDownload: - "システムブラウザでページが開いたら、もう一度ダウンロードボタンをタップしてファイルを保存します。", - inAppDownloadCopyPageLink: "ページリンクをコピー", - inAppDownloadCopied: "ページリンクをコピーしました", + "システムブラウザ(Safari、Chrome など)を開き、アドレスバーにリンクを貼り付けます。", + inAppDownloadStepDownload: "ファイルは自動的にダウンロード先に保存されます。", + inAppDownloadCopied: "リンクをコピーしました", inAppDownloadCopyFail: "コピーに失敗しました。手動でコピーしてください", }; diff --git a/src/locales/ko.ts b/src/locales/ko.ts index e60c7f2..4e5b395 100644 --- a/src/locales/ko.ts +++ b/src/locales/ko.ts @@ -265,15 +265,14 @@ export const koDict: Dict = { backToHome: "홈으로", inAppDownloadTitle: "시스템 브라우저에서 열어 다운로드하세요", inAppDownloadIntro: - "현재 앱 내 브라우저는 파일을 다운로드할 수 없습니다. 시스템 브라우저에서 이 페이지를 다시 열어 다운로드 버튼을 눌러 주세요.", + "현재 앱 내 브라우저로는 파일을 다운로드할 수 없습니다. 아래 링크를 복사해서 시스템 브라우저에서 열면 바로 저장됩니다.", inAppDownloadIntroNamed: - "{browser}는 파일을 직접 다운로드할 수 없습니다. 시스템 브라우저에서 이 페이지를 다시 열어 다운로드 버튼을 눌러 주세요.", - inAppDownloadStepCopy: '오른쪽 위 메뉴에서 "브라우저로 열기"를 선택하세요.', + "{browser} 앱 내 브라우저로는 파일을 다운로드할 수 없습니다. 아래 링크를 복사해서 시스템 브라우저에서 열면 바로 저장됩니다.", + inAppDownloadStepCopy: + '아래의 "링크 복사"를 누릅니다(파일 직접 다운로드 주소입니다).', inAppDownloadStepOpen: - "해당 옵션이 없다면 아래 “페이지 링크 복사”를 눌러 Safari나 Chrome 등에서 여세요.", - inAppDownloadStepDownload: - "시스템 브라우저에서 페이지가 열리면 다운로드 버튼을 다시 눌러 파일을 저장하세요.", - inAppDownloadCopyPageLink: "페이지 링크 복사", - inAppDownloadCopied: "페이지 링크가 복사되었습니다", + "시스템 브라우저(Safari, Chrome 등)를 열고 주소창에 링크를 붙여 넣습니다.", + inAppDownloadStepDownload: "파일이 자동으로 다운로드 폴더에 저장됩니다.", + inAppDownloadCopied: "링크를 복사했습니다", inAppDownloadCopyFail: "복사하지 못했습니다. 직접 복사해 주세요", }; diff --git a/src/locales/ms.ts b/src/locales/ms.ts index 72282c6..f3761fc 100644 --- a/src/locales/ms.ts +++ b/src/locales/ms.ts @@ -268,16 +268,15 @@ export const msDict: Dict = { backToHome: "Kembali ke Laman Utama", inAppDownloadTitle: "Sila buka dalam pelayar sistem untuk muat turun", inAppDownloadIntro: - "Pelayar dalam aplikasi semasa tidak dapat memuat turun fail. Buka halaman ini dalam pelayar sistem, kemudian ketik muat turun semula.", + "Pelayar dalam aplikasi semasa tidak dapat memuat turun fail. Salin pautan di bawah dan buka dalam pelayar sistem — fail akan disimpan terus.", inAppDownloadIntroNamed: - "{browser} tidak dapat memuat turun fail secara langsung. Buka halaman ini dalam pelayar sistem, kemudian ketik muat turun semula.", + "{browser} tidak dapat memuat turun fail secara langsung. Salin pautan di bawah dan buka dalam pelayar sistem — fail akan disimpan terus.", inAppDownloadStepCopy: - 'Buka menu di atas kanan dan pilih "Buka dalam pelayar".', + 'Ketik "Salin pautan" di bawah (ini adalah URL muat turun fail terus).', inAppDownloadStepOpen: - "Jika pilihan tersebut tiada, ketik “Salin pautan halaman” di bawah dan buka dalam Safari, Chrome, dll.", + "Buka pelayar sistem (Safari, Chrome, dsb.) dan tampal pautan ke bar alamat.", inAppDownloadStepDownload: - "Selepas halaman dibuka dalam pelayar sistem, ketik butang muat turun semula untuk menyimpan fail.", - inAppDownloadCopyPageLink: "Salin pautan halaman", - inAppDownloadCopied: "Pautan halaman disalin", + "Fail akan dimuat turun secara automatik ke folder Muat Turun.", + inAppDownloadCopied: "Pautan disalin", inAppDownloadCopyFail: "Tidak dapat menyalin, sila salin secara manual", }; diff --git a/src/locales/vi.ts b/src/locales/vi.ts index 0c0d07d..3e1d376 100644 --- a/src/locales/vi.ts +++ b/src/locales/vi.ts @@ -264,16 +264,14 @@ export const viDict: Dict = { backToHome: "Về trang chủ", inAppDownloadTitle: "Vui lòng mở bằng trình duyệt hệ thống để tải", inAppDownloadIntro: - "Trình duyệt trong ứng dụng hiện tại không thể tải tệp. Hãy mở trang này trong trình duyệt hệ thống rồi nhấn tải lại.", + "Trình duyệt trong ứng dụng hiện tại không thể tải tệp. Sao chép liên kết bên dưới và mở trong trình duyệt hệ thống — tệp sẽ tự động tải về.", inAppDownloadIntroNamed: - "{browser} không thể tải tệp trực tiếp. Hãy mở trang này trong trình duyệt hệ thống rồi nhấn tải lại.", + "{browser} không thể tải tệp trực tiếp. Sao chép liên kết bên dưới và mở trong trình duyệt hệ thống — tệp sẽ tự động tải về.", inAppDownloadStepCopy: - 'Mở menu ở góc trên bên phải và chọn "Mở trong trình duyệt".', + 'Nhấn "Sao chép liên kết" bên dưới (đây là URL tải tệp trực tiếp).', inAppDownloadStepOpen: - "Nếu không có lựa chọn đó, nhấn “Sao chép liên kết trang” bên dưới rồi mở trong Safari, Chrome,…", - inAppDownloadStepDownload: - "Khi trang được mở trong trình duyệt hệ thống, hãy nhấn lại nút tải để lưu tệp.", - inAppDownloadCopyPageLink: "Sao chép liên kết trang", - inAppDownloadCopied: "Đã sao chép liên kết trang", + "Mở trình duyệt hệ thống (Safari, Chrome…) và dán liên kết vào thanh địa chỉ.", + inAppDownloadStepDownload: "Tệp sẽ tự động tải xuống thư mục Tải về.", + inAppDownloadCopied: "Đã sao chép liên kết", inAppDownloadCopyFail: "Không sao chép được, vui lòng tự sao chép", }; diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 0e3fc85..356c09d 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -247,15 +247,13 @@ export const zhDict: Dict = { backToHome: "返回首页", inAppDownloadTitle: "请使用系统浏览器打开后下载", inAppDownloadIntro: - "当前内置浏览器无法下载文件。请在系统浏览器中打开本页面,然后再次点击下载按钮。", + "当前内置浏览器无法下载文件。复制下方链接,到系统浏览器打开即可直接下载。", inAppDownloadIntroNamed: - "{browser} 内置浏览器无法下载文件。请在系统浏览器中打开本页面,然后再次点击下载按钮。", - inAppDownloadStepCopy: "点击右上角菜单,选择「在默认浏览器中打开」。", + "{browser} 内置浏览器无法下载文件。复制下方链接,到系统浏览器打开即可直接下载。", + inAppDownloadStepCopy: "点击下方「复制链接」(这是文件的直接下载地址)。", inAppDownloadStepOpen: - "如果没有该选项,可点击下方「复制页面链接」,再到 Safari、Chrome 等浏览器中打开。", - inAppDownloadStepDownload: - "系统浏览器打开页面后,再次点击下载按钮即可把文件保存到下载文件夹。", - inAppDownloadCopyPageLink: "复制页面链接", - inAppDownloadCopied: "页面链接已复制", + "打开系统浏览器(Safari、Chrome 等),把链接粘贴到地址栏。", + inAppDownloadStepDownload: "文件会自动开始下载到下载文件夹。", + inAppDownloadCopied: "链接已复制", inAppDownloadCopyFail: "复制失败,请手动复制", };