Skip to content

SnapStateStore.clear(for:pid:)가 호출부 없는 죽은 코드 #102

Description

@pignuante

#97에서 추가한 SnapStateStoreWindowUndoStore의 구조를 그대로 따랐는데, clear(for:pid:)만 호출부가 없다.

현황

  • WindowUndoStore.clear(for:pid:) — undo 복원이 직전 frame에 도달했을 때 소비한 항목을 지우는 데 실제로 쓰인다(WindowCommandExecutor).
  • SnapStateStore.clear(for:pid:)호출부 없음.

스냅 상태 무효화는 FrameCalculator.isAlreadySnapped가 기록된 frame과 현재 frame을 대조하는 방식으로 이뤄진다. 즉 창이 외부에서 움직이면 기록이 남아 있어도 판정에서 무시되므로 동작상 문제는 없다. 디스플레이 재구성 시에는 clearAll()이 호출된다(AppDelegate).

판단 필요

  1. 제거 — 무효화가 frame 대조로 충분하다면 미사용 API를 두지 않는다.
  2. 유지/배선 — 명시적으로 지워야 할 지점이 있다면 연결한다. 후보: 비-스냅 명령 성공 후, 또는 undo 후. 다만 둘 다 frame 대조로 이미 무효화되므로 실익은 크지 않다.

LRU 용량이 64라 미사용 항목이 쌓여도 메모리는 상한이 있다(보안 리뷰에서 확인). 순수 정리 항목.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions