Repository navigation
Releases
v1.0.2 릴리즈
Typoon 1.0.2 릴리즈 노트
직접 릴리즈 페이지에서 apk 파일을 다운로드 받거나, 구글 플레이 스토어에서 다운로드/업데이트하세요!
이번 업데이트는 일부 텍스트가 변환이 잘 되지 않았던 문제를 해결했습니다. 업데이트를 하는 것을 권장합니다.
1.0.1 이후 반영된 변경사항 (커밋/이슈 기준 전체)
- 텍스트 공유 시 받은 모달에서 버튼 내 글자가 두줄 이상으로 나오는 문제 수정
- 모달에서 기본 출력 시 버튼들이 하단 컨트롤러 바(뒤로가기/홈/최근 항목) 아래에 겹치게 나오는 문제 수정
- 광고를 추가했습니다. 구글 애드몹으로 광고가 나오기 시작했습니다. 광고가 차단되거나 인터넷에 연결되어 있지 않다면, 기존처럼 배너 이미지가 나옵니다. 광고가 불편할 수 있겠지만, 많은 양해 부탁드립니다.
- 맥OS 등에서 한글은
NFD형식을 사용하는데,NFD형식의 한글을 입력받으면 제대로 처리 하지 못하는 문제 수정 - 특정 텍스트의 경우, 반대로 버튼을 두번 눌러야 제대로 처리되던 문제 수정
deprecated된 API(LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES)를 사용하던 문제 수정- 일부 사용자에게는 더 넓은 화면이 표시되지 않을 수 있던 문제 수정(안드로이드 15 이상)
- 기타 코드들을 최적화
- 홈 화면 변환과 클립보드
suggestion계산을 백그라운드 디스패처로 통일해서 UI 스레드 부담을 줄임 ConversionEngine의 예외 단어/피드백 페널티를 원자적 스냅샷으로 관리하게 해서 동시성 리스크를 줄이고, 입력sanitizer도zero-width/control문자와 줄바꿈 처리를 더 엄격하게 정리- 클립보드 관련 설정은
no-backup저장소로 분리해서 일반 설정과 백업 경계를 나눴고, 검색은 쿼리 길이 상한, 초성 검색 스캔 범위 축소, 디바운스를 넣음
- 홈 화면 변환과 클립보드
Typoon 1.0.2 Release Notes
You can download the apk file directly from the release page, or download/update it from the Google Play Store!
This update fixes an issue where some text was not being converted properly. Updating is recommended.
Changes since 1.0.1
- Fixed an issue where text inside buttons appeared on two or more lines in the modal received when sharing text
- Fixed an issue where buttons overlapped with the bottom controller bar (Back/Home/Recent) when the modal was displayed by default
- Added advertisements. Ads now appear via Google AdMob. If ads are blocked or there is no internet connection, a banner image will appear as before. We understand ads may be inconvenient and appreciate your understanding.
- Fixed an issue where Korean text in
NFDformat (used in macOS, etc.) was not processed correctly when input - Fixed an issue where certain text required pressing a button twice to be processed properly
- Fixed the use of a deprecated API (
LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES) - Fixed an issue where some users could not see a wider screen (Android 15 and above)
- Various code optimizations
- Unified home screen conversion and clipboard suggestion calculations under a background dispatcher to reduce UI thread load
- Managed exception words/feedback penalties in `ConversionEngine
v1.0.1 릴리즈
Typoon 1.0.1 릴리즈 노트
직접 릴리즈 페이지에서 apk 파일을 다운로드 받거나, 구글 플레이 스토어에서 다운로드/업데이트하세요!
이번 업데이트는 반드시 업데이트 하시길 강력 권장합니다. 업데이트로 인해 기존 기록이 삭제/초기화 될 수 있습니다. 이번 업데이트 이후에는 그대로 유지될 것입니다.
1.0.0 이후 반영된 변경사항 (커밋/이슈 기준 전체)
[커밋 0ff5508]앱 아이콘을 교체해 브랜드 식별성을 개선했습니다. 이전에는 런처에서 구분감이 약했는데, 아이콘 변경으로 앱 인지가 쉬워졌습니다.[#8 / f093fcd]문제: 릴리즈 산출물이 Git에 섞여 저장소가 오염될 수 있었습니다. 수정:.gitignore를 정리하고 추적되던 산출물을 제외 처리했습니다. 결과: 릴리즈 파일이 버전관리 품질을 해치지 않게 됐습니다.[#7 / e0f0e8f]문제: 앱 시작 시 로케일 초기화 과정에서 메인 스레드 블로킹 가능성이 있었습니다. 수정: 시작 경로에서runBlocking의존을 제거하고 비동기 흐름으로 전환했습니다. 결과: 콜드 스타트 안정성과 응답성이 좋아졌습니다.[#6 / 92e6fb0]문제: 설정 화면 CSV 내보내기 결과 스낵바가 실제 UI에서 보이지 않는 경로가 있었습니다. 수정: 스낵바 호스트를Scaffold에 올바르게 연결했습니다. 결과: 성공/실패 피드백이 사용자에게 정상 노출됩니다.[#5 / 1982a03]문제: 업데이트 시 Room fallback 경로로 인해 기존 데이터가 삭제될 위험이 있었습니다(치명적). 수정: 파괴적 fallback을 제거하고 명시적 마이그레이션 경로로 전환했습니다. 결과: 업데이트 시 데이터 보존 안정성이 크게 올라갔습니다.[#4 / 74c3b84]문제: 예외 단어 중복 저장 및 키 충돌로 크래시 가능성이 있었습니다. 수정: 중복 방지 및 충돌 안전 처리를 추가했습니다. 결과: 예외 단어 관리가 더 안정적으로 동작합니다.[#3 / fd516a1]문제: 온보딩에서 콘텐츠가 잘리는 화면이 있었습니다. 수정: 온보딩 콘텐츠를 스크롤 가능하게 변경했습니다. 결과: 작은 화면/긴 텍스트에서도 온보딩이 잘리지 않습니다.[#2 / f52440e]문제: Edge-to-edge 관련 deprecated API를 사용하고 있었습니다. 수정: 최신 권장 경로로 교체했습니다. 결과: 최신 Android 동작과의 호환성이 개선됐습니다.[#1 / 6e83d0d]문제: 메인 화면군에서 safe drawing 처리 일관성이 부족해 기기별 여백/겹침 문제가 생길 수 있었습니다. 수정: 주요 화면 인셋 처리 로직을 정리했습니다. 결과: 다양한 화면/시스템바 환경에서 레이아웃 안정성이 좋아졌습니다.[커밋 0f851e3]코드 품질 파이프라인을 강화했습니다.Checkstyle/PMD/SpotBugs/ErrorProne및qualityGate를 추가해 정적 분석 기준을 자동화했습니다.[#9 / 5c0941f]문제: 최신 버전 확인과 릴리즈 노트 표시 기능이 제한적이었습니다. 수정: GitHub 릴리즈 조회, 언어별 노트 파싱(<!-- lang:ko -->,<!-- lang:en -->), 업데이트 권장 다이얼로그를 구현했습니다. 결과: 앱 안에서 최신 변경사항과 업데이트 안내를 더 명확히 확인할 수 있습니다.[#10 / 787db64]문제: ConversionEngine 책임이 뭉쳐 유지보수 난도가 높았습니다. 수정: 엔진 내부 책임을 분리하고 불필요 suppress 의존을 줄였습니다. 결과: 코드 가독성과 변경 안정성이 향상됐습니다.[#11 / 787db64]문제: 리스트indexOf중심 조회로 변환 경로 성능 저하 여지가 있었습니다. 수정: 핵심 조회를O(1)룩업 중심으로 바꿨습니다. 결과: 변환 처리 성능이 개선됐습니다.[#12 / 787db64]문제: 하드코딩된 단어 데이터가 코드와 강하게 결합되어 있었습니다. 수정: 데이터/상수를 외부 구조로 분리했습니다. 결과: 데이터 유지보수와 확장이 쉬워졌습니다.[#13 / 787db64]문제: 복합 자모(겹받침/복합 모음) 엣지 케이스 정확도가 부족했습니다. 수정: 한글 조합/복원 로직을 보강했습니다. 결과: 난이도 높은 입력에서 복원 정확도가 개선됐습니다.[#14 / 787db64]문제:apple안녕처럼 붙은 혼합 토큰 처리 품질이 기대에 못 미쳤습니다. 수정: 혼합 문자열 분해/스코어링 경로를 개선했습니다. 결과: 붙어 있는 영한 텍스트 변환 품질이 올라갔습니다.[#15 / 787db64]문제: Dynamic Color 옵션이 있어도 실제 적용이 약했습니다. 수정: Android 12+에서dynamicDarkColorScheme/dynamicLightColorScheme를 실적용하고 하위 버전은 fallback 팔레트를 사용하도록 정리했습니다. 결과: 시스템 테마와 색상 일관성이 개선됐습니다.[#20 / 787db64]문제: 저신뢰 변환 결과에 대한 사용자 가이드가 약했습니다. 수정: confidence 기반 경고/가이드를 결과 UI에 반영했습니다. 결과: 사용자가 결과를 더 안전하게 검토할 수 있습니다.[#22 / 787db64]문제: Quick Settings Tile 접근성 안내가 부족했습니다. 수정: label/description/상태 안내 문구를 보강했습니다. 결과: 접근성 서비스 사용 시 문맥 전달이 좋아졌습니다.[#23 / 787db64 + 5ed1d7a]문제: 기록 저장 원자성, direction 파싱 안전성, 외부 인텐트 처리 안정성, 시스템바/레이아웃 경계 이슈가 복합적으로 존재했습니다. 수정: 저장/파싱/오프로딩 경로를 하드닝하고, 스플래시·서브페이지·상하단 인셋·배너 표시를 재정렬했습니다. 결과: 전체 앱 안정성과 화면 일관성이 크게 향상됐습니다.[#9/#23 / 5ed1d7a]문제: 릴리즈 노트가 길면 읽기 어려웠고, 일부 화면에서 하단 시스템바 겹침/광고 다크모드 미반영이 있었습니다. 수정: 릴리즈 노트 다이얼로그 스크롤 보강, 서브 페이지 safe inset 처리, 광고 배너 다크 리소스 선택 로직 개선 및 투명 여백 트리밍을 적용했습니다. 결과: 읽기성/시각 품질/레이아웃 완성도가 좋아졌습니다.[#17 / d8ca72a]문제: 클립보드 오타 의심 텍스트를 선제적으로 제안하는 UX가 부족했습니다. 수정: 홈 화면 추천 카드(적용/닫기), 오탐 완화 휴리스틱, 설정 ON/OFF를 추가했습니다. 결과: 홈 플로우를 방해하지 않으면서 빠른 복구 제안을 받을 수 있습니다.[#19 / d8ca72a]문제: 검색에서 한글/초성/특수문자 입력 안정성이 부족했습니다. 수정: 안전한 FTS prefix 쿼리, LIKE fallback(와일드카드 이스케이프), 초성 전용 매칭 경로, 결과 병합/중복제거를 구현했습니다. 결과: 검색 정확도와 예외 입력 안정성이 향상됐습니다.[#18 / d8ca72a]문제: 테스트가 엔진 중심으로 편중되어 데이터 계층 회귀 탐지가 약했습니다. 수정:HistoryRepositoryImpl,HistorySearchPolicy,TextPayloadSanitizer,CsvExporter,AppPreferences테스트를 추가하고 GitHub Actions unit-test 워크플로우를 구성했습니다. 결과: 회귀 탐지 범위와 CI 신뢰성이 강화됐습니다.[빌드/품질 / d8ca72a+5ed1d7a]빌드 스크립트 경고(redundant qualifier)를 정리하고 테스트 의존성을 확장해 빌드 가독성과 유지보수를 개선했습니다.
Close 되었지만 1.0.1 기능으로는 포함하지 않은 항목
[#16]접근성 서비스 기반 전역 텍스트 즉시 변환은 프라이버시 민감도, 정책 심사 리스크, 오탐 운영비용을 고려해 이번 버전에서는 비채택으로 close 처리했습니다.[#21]이슈는 close 상태이나, 1.0.1 기준으로 별도 신규 migration instrumented 테스트 파일 추가는 포함되지 않았습니다(대신 unit test/CI 강화는#18에 반영).
Typoon 1.0.1 Release Notes
You can download the apk file directly from the release page, or download/update it from the Google Play Store!
This update is strongly recommended and should be installed without fail. Due to this update, existing records may be deleted/reset. After this update, they will be preserved as is.
Complete Changes Since 1.0.0 (Commit/Issue Based)
[commit 0ff5508]Updated the app icon for better visual identity and launcher recognition.[#8 / f093fcd]Problem: release artifacts could pollute source control. Fix: tightened.gitignoreand untracked build outputs. Result: cleaner repository hygiene.[#7 / e0f0e8f]Problem: app startup had potential main-thread blocking during locale initialization. Fix: removed startuprunBlockingdependency and switched to async flow. Result: smoother cold start and better responsiveness.[#6 / 92e6fb0]Problem: CSV export snackbar feedback in Settings could fail to appear. Fix: correctly wired snackbar host intoScaffold. Result: success/failure feedback now consistently visible.[#5 / 1982a03]Problem: update path risked data loss due to destructive Room fallback (critical). Fix: replaced destructive fallback with explicit migrations. Result: much safer data preservation on updates.[#4 / 74c3b84]Problem: duplicate exception-word inserts and key collisions could cause crashes. Fix: added duplicate prevention and collision-safe handling. Result: more stable dictionary/exception management.[#3 / fd516a1]Problem: onboarding content could be clipped on some screens. Fix: made onboarding content scrollable. Result: no clipping on small screens or long text.[#2 / f52440e]Problem: deprecated edge-to-edge API path was in use. Fix: migrated to current recommended API path. Result: improved platform compatibility.[#1 / 6e83d0d]Problem: inconsistent safe-drawing behavior across major screens could cause overlap/spacing issues. Fix: normalized inset handling across main UI surfaces. Result: more predictable layout across devices.[commit 0f851e3]Added stronger static analysis gates:Checkstyle/PMD/SpotBugs/ErrorProneand a unifiedqualityGate.[#9 / 5c0941f]Problem: latest-version and release-note UX was limited. Fix: added GitHub release fetch, localized note parsing (<!-- lang:ko -->,<!-- lang:en -->), and update recommendation dialog. Result: clearer in-app update visibility.[#10 / 787db64]Problem: ConversionEngine responsibilities were tightly coupled. Fix: refactored into clearer responsibilities and reduced suppression-heavy structure. Result: improved maintainability.[#11 / 787db64]Problem: listindexOf-style lookups could degrade performance. Fix: moved key lookup paths to O(1)-oriented structures. Result: faster conversion paths.[#12 / 787db64]Problem: hardcoded conversion data was tightly coupled to logic. Fix: separated data/constants from core logic. Result: easier updates and cleaner architecture.[#13 / 787db64]Problem: edge cases with complex Hangul composition (double finals/compound vowels) reduced accuracy. Fix: reinforced Hangul composition/recovery logic. Result: better recovery quality on difficult inputs.[#14 / 787db64]Problem: mixed-token strings likeapple안녕were not handled accurately enough. Fix: improved token split/scoring pipeline. Result: better mixed Korean/English conversion quality.[#15 / 787db64]Problem: Dynamic Color setting existed but wasn’t fully applied. Fix: applieddynamicDarkColorScheme/dynamicLightColorSchemeon Android 12+ with fallback palettes below. Result: better theme consistency with system colors.[#20 / 787db64]Problem: low-confidence output lacked actionable UI guidance. Fix: added confidence-based warnings and user guidance in Result UI. Result: safer interpretation of uncertain outputs.[#22 / 787db64]Problem: Quick Settings Tile accessibility context was limited. Fix: improved label/description/state messaging. Result: better accessibility clarity.[#23 / 787db64 + 5ed1d7a]Problem: combined stability concerns around atomic history writes, direction parsing safety, external intent processing, and edge-to-edge behavior. Fix: hardened write/parse/off-main-thread paths and reworked splash/sub-page/system-bar/bottom-area layout handling. Result: stronger runtime stability and visual consistency.[#9/#23 / 5ed1d7a]Problem: long release notes were hard to read; some pages had bottom-system-bar overlap; dark-mode ad banner selection had inconsistencies. Fix: improved release-note dialog scrolling, applied safe bottom inset on non-bottom-nav pages, and fixed dark-resource ad banner selection with transparent-edge trimming. Result: better readability and polished UI behavior.[#17 / d8ca72a]Problem: no proactive typo suggestion for suspicious clipboard text. Fix: added a non-intrusive home suggestion card (Apply/Dismiss), heuristic filtering, and Settings toggle. Result: faster recovery without disrupting the home flow.[#19 / d8ca72a]Problem: history search stability/quality for Hangul/choseong/special chars needed improvement. Fix: added safe FTS prefix builder, LIKE fallback with escaping, choseong-only matching path, and merged deduplicated result strategy. Result: better search quality and safer handling of edge inputs.[#18 / d8ca72a]Problem: tests were too concentrated on engine logic, leaving data-layer regressions less protected. Fix: added tes...
v1.0.0 릴리즈
첫번째 버전입니다. 버그가 있을 수 있습니다.
버그나 기능 개선 등은 언제든 환영입니다!
This is the first version. There may be bugs.
Bug reports or feature improvements are always welcome!