Skip to content

플로팅 위젯 숨기기와 표시 상태 저장 - #33

Merged
Jang990 merged 2 commits into
mainfrom
feat/#32
Sep 9, 2026
Merged

플로팅 위젯 숨기기와 표시 상태 저장#33
Jang990 merged 2 commits into
mainfrom
feat/#32

Conversation

@Jang990

@Jang990 Jang990 commented Sep 9, 2026

Copy link
Copy Markdown
Owner

Closes #32

image

무엇을 바꿨나

위젯을 아예 숨길 수 있고, 마지막 모습을 settings 키에 저장한다. 영상별 video: 저장과 분리해서 영상을 옮겨도 같은 모습으로 뜬다. 숨기고 되돌리는 버튼은 패널 헤더에 있다.

저장하는 값은 floatingHiddenfloatingExpanded 둘이다. 보임과 크기는 서로 다른 버튼이 다루므로 값도 나눈다. 하나로 합치면 한쪽을 바꿀 때 다른 쪽이 함께 덮여서, 펼쳐둔 채 숨긴 위젯이 접힌 모습으로 되돌아온다.

상태의 주인이 floating.js의 모듈 변수에서 wiring.jsstate로 옮겨졌다. 저장되는 값이니 state에 있어야 하고, 덤으로 모듈 전역 둘(isExpanded, lastView)이 사라졌다.

설명이 필요한 선택 둘:

  • 숨기는 버튼은 패널 헤더에만 둔다. 위젯에 를 더하면 접기()와 나란히 놓여 무엇이 무엇인지 헷갈리고, 숨긴 위젯을 되돌릴 자리도 결국 패널이어야 한다.
  • 저장된 값의 유효성은 storage.js가 아니라 ui/floatingState.js가 따진다. 무엇이 올바른 값인지 아는 쪽이 ui다. 참이라고 분명히 적힌 것만 참으로 보고, 나머지는 기본값이 된다.

확인

npm test 137개 통과, npm run test:e2e 24개 통과.

미확인

픽스처는 셀렉터가 낡은 것을 잡지 못한다. 실제 유튜브에서 확인할 것:

  1. 목록을 불러온 뒤 패널 헤더의 위젯 숨기기를 누른다 → 위젯이 사라지고 버튼이 위젯 보이기로 바뀐다.
  2. 새로고침한다 → 위젯이 여전히 없다. 위젯 보이기를 누르면 돌아온다.
  3. 위젯을 펼쳐둔 채 다른 영상으로 옮긴다 → 그 영상에서도 펼쳐진 채로 뜬다.
  4. 헤더 버튼이 넷이 되면서 좁은 사이드바에서 줄바꿈되지 않는지 본다.

🤖 Generated with Claude Code

https://claude.ai/code/session_01PuyL1VJDKFV2CL9XK86onP

@Jang990 Jang990 added the feat 새 기능 label Sep 9, 2026
Jang990 and others added 2 commits September 9, 2026 17:52
@Jang990
Jang990 merged commit 1bdfe07 into main Sep 9, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feat 새 기능

Projects

None yet

Development

Successfully merging this pull request may close these issues.

플로팅 위젯 숨기기와 표시 상태 저장

1 participant