Skip to content

[slide-edit-affordance] 슬라이드 rail command keyboard shortcut intent 제공 #576

Description

@developer-1px

배경

PPT repo에는 PPTX 기본 조작인 슬라이드 추가, 복제, 삭제, 복사, 잘라내기, 붙여넣기 keyboard shortcut 파서가 ppt-slide-keyboard-shortcuts / ppt-slide-rail-command-shortcuts 로컬 모델로 남아 있다.

canvas의 slide-edit-affordance에는 slide rail descriptor, listbox keyboard, reorder shortcut, slide clipboard payload/placement는 있지만, Cmd/Ctrl+M, Cmd/Ctrl+D, Delete/Backspace, Cmd/Ctrl+C/X/V 같은 rail command shortcut intent helper는 없다.

제안

slide-edit-affordance에서 제품 중립적인 slide rail command keyboard shortcut affordance를 제공한다.

  • Cmd/Ctrl+M -> add slide
  • Cmd/Ctrl+D -> duplicate active/focused slide
  • Delete / Backspace -> delete active/focused slide
  • Cmd/Ctrl+C / Cmd/Ctrl+X / Cmd/Ctrl+V -> slide clipboard command intent
  • Alt 또는 Shift 조합은 기본적으로 소비하지 않는다.
  • delete/paste 가능 여부는 host가 주입한다.
  • intent/model/shortcut key metadata를 export해서 PPT 같은 host가 로컬 문자열을 만들지 않게 한다.

인수 조건

  • getSlideEditRailCommandKeyboardShortcutIntent 또는 동등한 API가 위 shortcut을 command intent로 매핑한다.
  • active/focused slide가 없으면 add를 제외한 target command는 null/noop 처리한다.
  • delete 불가, paste 불가 상태에서는 해당 shortcut을 소비하지 않는다.
  • package index export와 단위 테스트가 추가된다.
  • PPT repo의 로컬 ppt-slide-keyboard-shortcuts / ppt-slide-rail-command-shortcuts 모델 문자열과 파서를 제거하고 canvas helper를 사용한다.

막힘/의존성

  • copy/cut/paste 실행 자체는 host clipboard 구현에 남는다. canvas helper는 shortcut intent와 metadata만 제공한다.
  • slide 추가 위치, paste 위치는 host의 기존 rail/clipboard command effect 정책을 따른다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions