Skip to content

Itda 0.9.2

Choose a tag to compare

@jiunbae jiunbae released this 19 Oct 16:54
· 80 commits to main since this release
v0.9.2
87d6375

Windows 화면 공유 속도, 다중 모니터 창, Windows 대상 파일 전송 수정

실제 Windows 11 PC(3840×2160 모니터 2대, 주 모니터가 오른쪽, AMD 내장 + RTX 3080)에서 Windows 빌드를 직접 실행해 찾은 문제들입니다.

  • 이 PC 공유가 빨라졌습니다. 화면 캡처를 GDI에서 DXGI Desktop Duplication으로 바꿨습니다. 듀얼 4K에서 프레임당 55–60ms이던 캡처가 2–9ms로 줄어, 로컬 측정 기준 초당 약 9프레임에서 약 20프레임이 되었습니다. 바뀐 영역만 복사합니다. HDR·10비트 데스크톱도 8비트로 변환해 받습니다. 여러 뷰어가 캡처 하나를 함께 씁니다. Duplication을 쓸 수 없거나 끊기면(잠금 화면, 해상도 변경, 회전된 모니터) 예전처럼 GDI로 캡처하고 2초마다 다시 시도합니다.
  • 화면별 창이 빈 모니터에 열립니다. 주 모니터가 맨 왼쪽이 아닌 PC에서는 "모니터 2" 창이 세션 창과 같은 모니터에 겹쳐 열렸습니다.
  • 모니터 하나를 볼 때 창이 그 모니터 비율에 맞춰집니다. 이전에는 모든 모니터를 합친 가로 비율 그대로라 좌우에 큰 검은 여백이 남았습니다.
  • Windows PC로 파일을 보낼 때 (Mac에서 포함)
    • Windows가 허용하지 않는 이름(CON, nul.txt, COM1, 끝의 마침표·공백, : ? 등)을 시작 전에 막습니다. 폴더 안의 항목까지 미리 확인하므로 반쯤 만든 폴더가 남지 않습니다. 이전에는 이런 파일이 실제로 만들어지거나 이름이 조용히 바뀌었습니다.
    • 업로드를 취소하면 원격의 임시 .partial 파일을 지우고 "전송을 취소했습니다"로 안내합니다.
    • 대소문자만 바꾸는 이름 변경과 그 되돌리기가 됩니다.
    • 이름 충돌과 SFTP 오류를 알기 쉬운 문구로 보여 줍니다.
    • \\?\C:\…, ~ 경로를 쓸 수 있습니다.
  • Remote Management만 켜진 Mac도 연결된다고 도움말과 오류 문구에 안내합니다(#3).

Validation: 실제 PC에서 확인한 항목입니다.

  • 화면 공유: 두 모니터를 보고하는 ExtendedDesktopSize, SetDesktopSize 거절(1/1), ZRLE 전체 디코드, CU와 Fence, 뷰어 2명 동시 접속, 커서 위치, 음수 원점 데스크톱의 포인터 좌표.
  • Windows 네이티브 뷰어: 화면별 창 열기·모으기·모니터 하나 보기, 창 닫기에 따른 세션 수명.
  • 파일 E2E: 업로드·다운로드 해시 비교, 충돌 처리, 휴지통과 되돌리기, 취소, 대소문자 변경, 잘못된 이름 21건, 특수 경로.
  • 단위 테스트: macOS 58개 통과. Windows는 57개 통과, 대화형 로그온이 필요한 자격 증명 테스트 2개는 콘솔에서만 통과.

Limits: 일반 권한으로 실행한 Itda는 관리자 권한 창이 앞에 있으면 원격 입력을 할 수 없습니다(Windows UIPI가 조용히 버립니다). RDP 브리지와 잠금 화면에서의 폴백은 이번에 실기로 확인하지 않았습니다. macOS 패키지는 ad-hoc 서명이며 공증(notarize)되지 않았습니다.

Source: 87d6375
CI: https://github.com/jiunbae/itda/actions/runs/39287706500