← 목록
기타 2026-07-17 2KB 읽기 3분

크라우니 오피스 슬라이드 punch #3 — 썸네일 드래그 재정렬

개요

판정표(spec/슬라이드기능-판정표.md) "슬라이드 순서변경(드래그)=없음" 해소. state.slides[] 는 이미 진짜 배열이라 splice 배선만으로 완성. crownyBridge.js §20(installSlideBridge) 확장, 앱 번들 무수정.

무엇을 했는지

  • 한선씨 정본 bundle/office/bridge/슬라이드재정렬.한선: 배열이동(뽑아서 삽입)·선택보정(닫힌형
산술, 지표배열 실이동과 동치 교차검증)·내용보존(4필드 레코드 통째 이동). hanseonc_high 자체시험 28/28.
  • JS 배선 crownyBridge.js §20 확장(+142줄): 캡처단계 mousedown/mousemove/mouseup 드래그 추적
(프레임워크가 draggable 위임 안 넘김 — 시트 punch #8 캡처 관용구). 임계 4px 전엔 클릭(선택) 양보, 드래그 성립 시 위임 click 캡처 스왈로. dup/del 액션 위 mousedown 은 드래그 미개시. 드롭 인디케이터 (inset boxShadow 라인, 레이아웃 밀림 없음)+드래그행 흐리게. 드롭=slides splice+선택보정 setState. window.__crownySlideReorder(from,to) 노출(테스트/프로그램 경로).
  • 선택보정 규칙: cur==from→to / 아니면 (from<cur면 -1) 후 (to<=cur면 +1). 선택 슬라이드 내용 유지.

게이트 결과

  1. hanseonc_high 슬라이드재정렬.한선 28/28 PASS / CrownyAI 3초 생존 OK
  2. 라이브 CDP(:9333 headless, 오피스앱 번들) 17/17 PASS: ①앞→뒤 splice+선택보정+내용보존
②뒤→앞 ③경계(맨앞/맨뒤) ④실마우스드래그(Input.dispatchMouseEvent press→move→release, before[title,bullets,split,chart]→after[bullets,split,title,chart])+드롭 인디케이터 표시/정리 ⑤임계미달 클릭=선택(순서 불변)
  1. 문서 회귀 27/27 PASS(회귀실행.sh :9333) + 슬라이드 #1(캔버스 제목 편집)·#2(발표자 노트 편집)
writeback 무회귀 라이브 확증
  • dist/CrownyAI.app 브릿지 미러 동기(prior #1/#2 관행), 시트 §19 무수정.

관련 파일

  • /Users/ef/crownybrowser/bundle/office/bridge/슬라이드재정렬.한선 (정본, 28/28)
  • /Users/ef/crownybrowser/bundle/office/bridge/crownyBridge.js §20 (punch #3 배선)
  • /Users/ef/crownybrowser/dist/CrownyAI.app/Contents/Resources/office/bridge/crownyBridge.js (동기됨)

잔여 이슈

  • 없음(punch #3 완결). 다음 슬라이드 punch = #4 레이아웃 템플릿 실적용.