제한된 포인터 입력

터치 면은 Bluetooth가 리포트를 보내는 속도보다 많은 이벤트를 만들 수 있습니다. 작업이 끝없이 쌓이지 않으면서 입력 의미를 지키는 처리 흐름을 설명합니다.

소스 기준: 앱 1.0.0 (3) · 2026년 8월 14일

입력 경계

Compose 조작 화면은 원시 리포트 바이트 대신 이동, 버튼 상태, 클릭, 가로 스크롤이라는 의미 요청을 만듭니다. 포그라운드 서비스가 요청을 검증한 뒤 공용 HID 세션에 전달합니다.

전송 방식Classic HID Device와 BLE HOGP 대체 경로
리포트 범위상대 이동의 각 성분을 부호 있는 8비트 HID 변화량으로 분할
대기열 모델유입·의미·대기 명령 용량을 모두 제한
영속 상태확인된 호스트와 로컬 조작 설정

순서를 바꾸지 않는 이동량 합치기

포인터 이동이 이어지는 동안에는 값을 합칩니다. 버튼·클릭·가로 스크롤 경계를 만나면 그 전에 대기 이동을 먼저 비워, 클릭이 대상 위치를 정한 이동보다 앞서지 않게 합니다.

버튼, 클릭과 휠

버튼 상태는 세 버튼의 한 시점 상태로 표현합니다. 이미 받은 누름의 해제는 우선 작업입니다. 대기열이 가득 찼다는 이유로 호스트에 버튼이 눌린 채 남아서는 안 되기 때문입니다. 한 번·두 번 클릭은 정해진 누름, 리포트, 유지, 해제, 간격 명령으로 펼칩니다.

제스처프로토콜 처리
한 번 클릭60ms 누른 뒤 해제
두 번 클릭100ms 간격의 클릭 두 번
세로 스크롤상대 마우스 리포트의 휠
가로 스크롤Shift 보조 키와 휠을 함께 보내고 사용자의 보조 키 상태 복원

세션과 수명 주기 안전성

서비스가 한 화면보다 오래 전송 역할을 소유하고 연결 상태를 흐름으로 공개합니다. 확인된 호스트는 Android DataStore에 둡니다. 도토리 HID 앱 3종은 같은 서명의 형제 앱 소유권을 조정해 제한된 기기 역할을 하나의 활성 조작 화면만 사용합니다.

검증과 확인된 제약

누산기 용량, 이동 분할과 폐기, 버튼 상태, 클릭 시점, 가로 스크롤 보조 키 복원, 재연결 정책, 형제 앱 소유권 넘김, 영속화 대체 경로와 수명 주기 전달을 시험으로 확인합니다.