데스크톱 윈도잉

이 페이지에서는 데스크톱 창 모드와 관련된 기능 및 테스트 시나리오를 자세히 설명합니다.

데스크톱 기능

이 섹션에서는 데스크톱 창 모드와 관련된 주요 기능 및 구성을 설명합니다.

작업 한도 사용 설정

데스크톱 창 모드에서 지원되는 최대 작업 수를 구성하려면 다음 단계를 따르세요.

  1. 데스크톱 창 모드를 사용 설정합니다.
  2. config.xml에서 구성 오버레이 플래그 config_maxDesktopWindowingActiveTasks를 지원되는 최대 작업 수로 설정합니다. 무제한의 작업 수를 지원하려면 플래그를 기본값인 0으로 설정합니다.

    <integer name="config_maxDesktopWindowingActiveTasks">4</integer>
    

브라우저별 기능

Android 16에서는 맞춤설정 가능한 헤더 인셋과 앱 인스턴스 관리라는 두 가지 브라우저별 기능이 도입되었습니다. 이 섹션에서는 브라우저 호환성을 확인하기 위한 테스트 시나리오를 설명합니다. OEM은 기능 구현이 의도대로 작동하는지 확인해야 합니다.

맞춤설정 가능한 헤더 인셋의 테스트 사례

다음 테스트 사례는 맞춤설정 가능한 헤더 인셋과의 브라우저 호환성을 확인합니다.

  • UI 상호작용: 모든 창 모드 구성 (자유 형식, 분할 화면, 전체 화면)에서 브라우저의 캡션 표시줄 UI가 완전히 상호작용 가능한 상태로 유지되는지 확인합니다.
  • 시스템 아이콘 지우기: 브라우저 UI가 시스템 아이콘 아래에 그려지지 않는지 확인합니다.
  • 전경 색상 적용: 브라우저 테마에 따라 앱 헤더의 시스템 아이콘에 올바른 전경 색상이 적용되는지 확인합니다. 이는 브라우저의 테마가 시스템 테마와 다른 경우 특히 중요합니다.
  • 창 드래그: 탭 표시줄의 빈 영역을 길게 눌러 자유 형식 창을 드래그할 수 있는지 확인합니다.
  • 크기 조절 시 탭 표시: 최적의 사용성을 유지하기 위해 창의 너비에 따라 탭이 표시되거나 숨겨지는지 테스트합니다.

드래그 가능한 동작 동작이 있는 앱 인스턴스 관리의 테스트 사례

다음 테스트 사례는 앱 인스턴스 관리와의 브라우저 호환성을 확인합니다.

  • 새 창 만들기: 탭 표시줄에서 빈 영역으로 탭을 드래그하면 해당 탭이 포함된 새 브라우저 창이 만들어지는지 확인합니다.
  • 마지막 탭의 새 창 없음 (단일 인스턴스): 브라우저 인스턴스가 하나만 열려 있는 경우 해당 창에서 마지막 탭을 드래그해도 새 창이 만들어지지 않는지 확인합니다.

데스크톱 우선 및 터치 우선 동작 모드

데스크톱 창 모드는 클램셸 및 연결된 외부 디스플레이가 있는 기기를 비롯하여 독립형 태블릿 이외의 다양한 폼 팩터를 지원하도록 설계되었습니다. 폼 팩터마다 기본 입력 방법 (터치 또는 키보드 및 마우스)에 따라 상호작용에 대한 사용자 기대치가 다르기 때문에 데스크톱 창 모드는 두 가지 고유한 동작 모드를 사용합니다.

  • 데스크톱 우선 모드: 시스템이 자유 형식 창 모드를 선호하는 키보드 및 터치패드에 최적화된 환경을 제공합니다. 이 모드는 노트북과 유사한 구성을 위한 것입니다.
  • 터치 우선 모드: 시스템이 전체 화면 창 모드를 선호하는 터치에 최적화된 환경을 제공합니다. 이 모드는 독립형 태블릿의 기본값입니다.

이러한 모드는 별도의 데스크톱 환경이 아니라 기본 UI 동작을 결정하는 디스플레이별 상태입니다.

동작 차이점

다음 표에는 데스크톱 우선 모드와 터치 우선 모드 간의 주요 UI 및 기능 차이점이 요약되어 있습니다.

기능 터치 우선 모드 데스크톱 우선 모드
기본 실행 자유 형식 창이 이미 맨 위에 있지 않으면 창이 전체 화면으로 실행됩니다. 전체 화면 창이 이미 맨 위에 있지 않으면 창이 자유 형식으로 실행됩니다.
작업 표시줄 유형 전체 화면에서 일시적인 작업 표시줄 (고정된 앱만 표시)을 사용합니다. 항상 데스크톱 작업 표시줄 (고정된 앱 및 열려 있는 앱 표시)을 사용합니다.
다시 포커스 창은 현재 디스플레이 모드를 기반으로 다시 활성화됩니다 (예: 디스플레이가 데스크톱 창 모드에 있는 경우 자유 형식으로 다시 활성화). 창은 자체 저장된 창 모드를 기반으로 다시 활성화됩니다(예: 전체 화면 창은 항상 전체 화면으로 다시 시작됨).
맨 위로 드래그 창을 상단 가장자리로 드래그하면 전체 화면 이 됩니다. 창을 상단 가장자리로 드래그하면 최대화됨 상태가 됩니다.
창 컨트롤 전체 화면 컨트롤에 앱 핸들을 사용합니다. 전체 화면 컨트롤에 호버 메뉴를 사용합니다.

데스크톱 우선 모드는 디스플레이별 상태입니다. 즉, 기기는 터치 우선 내부 디스플레이와 데스크톱 우선 외부 디스플레이를 동시에 호스팅할 수 있습니다.

전환 트리거

시스템은 여러 요소를 평가하여 디스플레이에 적합한 모드를 결정합니다.

  • 입력 주변기기: 키보드와 터치패드 또는 마우스가 모두 연결되고 사용 설정된 경우 디스플레이가 데스크톱 우선으로 전환됩니다.
  • 외부 디스플레이: 연결된 외부 디스플레이는 일반적으로 내부 디스플레이를 미러링하지 않는 한 기본적으로 데스크톱 우선 모드로 설정됩니다.
  • 기기 자세: 컨버터블 기기의 경우 물리적 방향에 따라 모드가 전환될 수 있습니다 (예: 키보드가 뒤로 뒤집히면 터치 우선으로 전환).

기술적 구현

이 상태의 '신뢰할 수 있는 소스'는 디스플레이 창 모드, 특히 디스플레이의 TaskDisplayArea의 창 모드입니다. 셸 및 런처 구성요소는 DisplayAreaInfo 또는 디스플레이 컨텍스트의 WindowConfiguration을 통해 이 상태에 액세스할 수 있습니다.