Skip to content

refactor: 명령 레지스트리·키맵 기반 UI 기반 구조 (Windows·macOS) - #98

Open
soyuo wants to merge 29 commits into
devfrom
feature/ui-foundation
Open

soyuo wants to merge 29 commits into
devfrom
feature/ui-foundation

Conversation

@soyuo

@soyuo soyuo commented Oct 19, 2026 •

Copy link
Copy Markdown
Member

변경 목적

Figma·명세 대비 누락 기능을 카테고리별로 나눠 구현할 수 있도록, 두 플랫폼 UI를 공용 명령 레지스트리·키맵 기반으로 바꾸고 기능별 파일 골격을 만듭니다. 기존 동작은 유지합니다.

변경 사항

  • Windows: 창 상태를 ui_windows_internal.h로 옮기고 axyne_win_* 도우미와 기능 훅 테이블 추가, 기능별 파일 12개(ui_<기능>_windows.c)
  • macOS: 뷰 인터페이스를 ui_macos_internal.h로 옮기고 기능별 카테고리 파일 12개
  • 메뉴를 명령 레지스트리에서 Figma 순서로 생성. 아직 구현하지 않은 새 항목은 비활성으로 표시
  • 단축키를 키맵 기반으로 처리 (Ctrl/Cmd+K 2단계 키, AltGr 제외, 디버그 문맥). 기존 키는 그대로이고, 사용자가 바꾼 키가 기본값보다 우선
  • 명령 팔레트와 단축키 참조를 레지스트리에서 생성
  • 하단 패널 탭 모델(출력/문제/터미널/디버그 콘솔). 네이티브 터미널은 터미널 탭에 통합
  • 설정 파일을 settings.json으로 저장(기존 preferences.json은 대체 읽기, 삭제하지 않음)
  • 명령 레지스트리 플랫폼 열거형을 AxyneCommandPlatform으로 바꿔 build_target.h와의 충돌 해소
  • 결정 기록: docs/specs/ui-foundation-windows.md, docs/specs/ui-foundation-macos.md

구현 범위

  • C17 코어
  • Windows / Win32
  • macOS / AppKit
  • 테스트
  • 문서

검증

  • 공용 테스트 전체(ASan/UBSan), 메뉴 일관성 테스트 통과, Windows 컴파일 확인
  • macOS 코드는 CI에서 처음 컴파일됩니다. 메뉴·단축키·터미널 탭 실제 동작 확인 필요

soyuo added 29 commits October 10, 2026 20:19
# Conflicts:
#	tests/test_menu_consistency.c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant