From b8c1440e4d4b33c311edeb68787bd8cfe96dcfc3 Mon Sep 17 00:00:00 2001 From: ByungCheol Date: Sat, 27 Jun 2026 19:01:57 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=95=B1=20=ED=97=A4=EB=8D=94=20?= =?UTF-8?q?=EB=A1=9C=EA=B3=A0=EB=A7=8C(=EB=AA=A8=EB=B0=94=EC=9D=BC)=C2=B7?= =?UTF-8?q?=EB=9F=B0=EC=B2=98=20=EB=9D=BC=EB=B2=A8=20=ED=95=9C=20=EC=A4=84?= =?UTF-8?q?=C2=B7Electron=20=EA=B5=AC=EA=B8=80=20=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=ED=8C=9D=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - AppHeader: 좁은 화면(폰)은 브랜드명 텍스트 숨기고 로고만 → 두 줄 줄바꿈 방지 - 안드로이드 런처 라벨 '돈돼지가계부'(한 줄), 앱 내부 브랜드명은 유지 - Electron: accounts.google.com 팝업을 앱 내부 자식 창으로 열어 GIS 로그인 결과(credential)가 앱 창으로 돌아오게 함(외부 브라우저 X) Co-Authored-By: Claude Opus 4.8 --- android/app/src/main/res/values/strings.xml | 4 ++-- electron/main.cjs | 5 +++++ src/components/layout/AppHeader.vue | 5 +++++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml index e3b25d2..5aecda6 100644 --- a/android/app/src/main/res/values/strings.xml +++ b/android/app/src/main/res/values/strings.xml @@ -1,7 +1,7 @@ - 돈돼지 가계부 - 돈돼지 가계부 + 돈돼지가계부 + 돈돼지가계부 kr.sblog.slimbudget kr.sblog.slimbudget diff --git a/electron/main.cjs b/electron/main.cjs index 7ad2be5..b45b068 100644 --- a/electron/main.cjs +++ b/electron/main.cjs @@ -78,6 +78,11 @@ function createWindow() { // 외부(앱 외 도메인) 링크는 기본 브라우저로, 앱 내 링크는 창에서 처리 win.webContents.setWindowOpenHandler(({ url }) => { + // 구글 로그인(GIS) 팝업은 앱 내부 자식 창으로 열어야 opener 로 로그인 결과(postMessage)가 돌아온다. + // 외부 브라우저로 보내면 계정 선택 후 credential 이 앱으로 전달되지 않아 로그인이 끊긴다. + if (/^https:\/\/accounts\.google\.com\//i.test(url)) { + return { action: 'allow' } + } if (/^https?:\/\//i.test(url) && !url.startsWith(APP_URL)) { shell.openExternal(url) return { action: 'deny' } diff --git a/src/components/layout/AppHeader.vue b/src/components/layout/AppHeader.vue index 13dc2e4..844eecd 100644 --- a/src/components/layout/AppHeader.vue +++ b/src/components/layout/AppHeader.vue @@ -86,6 +86,7 @@ async function handleLogout() { } .brand-text { letter-spacing: -0.01em; + white-space: nowrap; } .header-right { display: flex; @@ -103,5 +104,9 @@ async function handleLogout() { .app-header { padding: 0 1rem; } + /* 좁은 화면(폰/앱): 브랜드명 텍스트 숨기고 로고만 — 두 줄 줄바꿈 방지 */ + .brand-text { + display: none; + } }