Task #222: Safari showBadges init 게이팅 분리#224
Merged
edwardkim merged 1 commit intoApr 20, 2026
Merged
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
490c285 to
51246c5
Compare
4 tasks
edwardkim
added a commit
that referenced
this pull request
Apr 20, 2026
2026-04-20~21 사이클 정리: PR 처리 9건: - admin merge 5: #209 #214 #215 #221 #224 - cherry-pick + close 2: #213 (+중복 #210 close), #181 (+golden 재생성) - dependabot close 2: #211 #212 (devel 수동 bump + target-branch=devel 설정) - 보류 1: #165 skia (별도 사이클) 이슈 close 7: #173 #195 #202 #205 #207 #210 #222 신규 이슈 등록 1: #204 (표 Undo/Redo) Chrome Web Store / Edge Add-ons v0.2.1 심사 통과 (2026-04-21). local/task205 폐기: PR #209+#214 가 중복 처리하여 잔여 고유 기여 분리 곤란. 기여자 7명 감사 기록. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
edwardkim
added a commit
that referenced
this pull request
Apr 21, 2026
한글판 README.md 와 영문판 README_EN.md 의 섹션 구조·내용을 1:1 일치시킴. 주요 변경: - Roadmap + Milestones 섹션을 상단(로드맵/이정표 위치) 으로 이동 - v0.5.0 ~ v0.7.x 이정표에 v0.2.1 사이클 전체 반영 (Chrome/Edge 심사 통과, PR #213/#215/#221/#169/#209/#214/#224/#181) - rhwp-firefox (v0.1.1 AMO 준비) + rhwp-safari (v0.2.1) 섹션 추가 - 기여자 감사 목록 확장: @seo-rii, @planet6897, @yl-star7 추가 (9명) - Features: OLE/Chart/EMF native rendering 항목 추가 (#221) - Project Structure: src/emf/, src/ooxml_chart/, rhwp-firefox/, rhwp-shared/ 반영 - Trademark 섹션 신규 (한글판 동일 위치) - AI 페어 프로그래밍 섹션: Git Workflow / Task Workflow / Debugging Protocol / Documentation Rules 완전 반영 - 로드맵 링크를 mydocs/eng/report/rhwp-milestone.md 로 보정 - 테스트 수치 783 → 935 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
edwardkim
added a commit
that referenced
this pull request
Apr 22, 2026
한글판 README.md 와 영문판 README_EN.md 의 섹션 구조·내용을 1:1 일치시킴. 주요 변경: - Roadmap + Milestones 섹션을 상단(로드맵/이정표 위치) 으로 이동 - v0.5.0 ~ v0.7.x 이정표에 v0.2.1 사이클 전체 반영 (Chrome/Edge 심사 통과, PR #213/#215/#221/#169/#209/#214/#224/#181) - rhwp-firefox (v0.1.1 AMO 준비) + rhwp-safari (v0.2.1) 섹션 추가 - 기여자 감사 목록 확장: @seo-rii, @planet6897, @yl-star7 추가 (9명) - Features: OLE/Chart/EMF native rendering 항목 추가 (#221) - Project Structure: src/emf/, src/ooxml_chart/, rhwp-firefox/, rhwp-shared/ 반영 - Trademark 섹션 신규 (한글판 동일 위치) - AI 페어 프로그래밍 섹션: Git Workflow / Task Workflow / Debugging Protocol / Documentation Rules 완전 반영 - 로드맵 링크를 mydocs/eng/report/rhwp-milestone.md 로 보정 - 테스트 수치 783 → 935 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
요약
#222 해결.
rhwp-safari/src/content-script.js의init()가settings.showBadges단일 조건으로processLinks()/observeDynamicContent()실행을 게이트하고 있어,showBadges=false이면서hoverPreview=true또는autoOpen=true인 조합에서도 링크 바인딩이 아예 수행되지 않았다.전략:
init()의 실행 게이트를showBadges || hoverPreview || autoOpen기능 기반 OR 조건으로 분리. 배지 렌더링 분기(processLinks()내부if (settings.showBadges))는 기존 위치와 동작을 그대로 유지하여, 배지 토글이 배지 DOM에만 영향하도록 한다.변경 내역
rhwp-safari/src/content-script.js—init()의 실행 조건을settings.showBadges단일 조건에서settings.showBadges || settings.hoverPreview || settings.autoOpenOR 조건으로 분리. 배지 렌더링 분기(processLinks()내부if (settings.showBadges))는 유지.observeDynamicContent()도 동일 조건으로 정렬.변경 전/후
function init() { - if (settings.showBadges) { + const shouldProcess = settings.showBadges || settings.hoverPreview || settings.autoOpen; + if (shouldProcess) { processLinks(); observeDynamicContent(); } }변경 파일
rhwp-safari/src/content-script.js— init 게이트 조건 분리 (단일 파일)동작 정렬 (핵심 시나리오)
showBadges=false, hoverPreview=true, autoOpen=trueshowBadges=true, hoverPreview=false, autoOpen=falseshowBadges=false, hoverPreview=false, autoOpen=falseobserveDynamicContent동일 조건검증
node --check rhwp-safari/src/content-script.js— 문법 오류 없음showBadges=false, hoverPreview=true, autoOpen=true→shouldProcess=true, 배지 미삽입,interceptHwpClick/attachHoverEvents바인딩 동작showBadges=true, hoverPreview=false, autoOpen=false→ 배지 삽입,interceptHwpClick내부autoOpen=false즉시 return,attachHoverEvents내부hoverPreview=false즉시 returnshowBadges=false, hoverPreview=false, autoOpen=false→shouldProcess=false, 초기 스캔/동적 관찰 미실행observeDynamicContent()→processLinks(node)호출 → 위와 동일 분기 적용변경 전
2026-04-20.19.41.42.mov
변경 후
2026-04-20.20.22.04.mov
영향 범위
관련
processLinks()내부 배지/인터셉트/호버 바인딩이 각 설정의 자체 게이트를 가지고 있으므로,init()진입 조건만 분리하면 충분