Fenêtrage de bureau

Cette page décrit les fonctionnalités et les scénarios de test liés au fenêtrage du bureau.

Sous Android 17 ou version ultérieure, vous pouvez activer le fenêtrage du bureau par écran. Pour en savoir plus, consultez la section Activer le fenêtrage du bureau.

Fonctionnalités du bureau

Cette section décrit les principales fonctionnalités et configurations liées au fenêtrage du bureau.

Activer les limites de tâches

Pour configurer le nombre maximal de tâches compatibles avec le fenêtrage du bureau :

  1. Activez le fenêtrage du bureau.
  2. Définissez l'indicateur de superposition de configuration config_maxDesktopWindowingActiveTasks dans config.xml sur le nombre maximal de tâches compatibles. Pour prendre en charge un nombre illimité de tâches, définissez l'indicateur sur la valeur par défaut 0 :

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

Fonctionnalités spécifiques au navigateur

Android 16 a introduit deux fonctionnalités spécifiques au navigateur : les encarts d'en-tête personnalisables et la gestion des instances d'application. Cette section décrit les scénarios de test permettant de vérifier la compatibilité du navigateur. Les OEM doivent vérifier que l'implémentation de la fonctionnalité fonctionne comme prévu.

Scénarios de test pour les encarts d'en-tête personnalisables

Les scénarios de test suivants vérifient la compatibilité du navigateur avec les encarts d'en-tête personnalisables :

  • Interactivité de l'UI : vérifiez que l'UI de la barre de légende du navigateur reste entièrement interactive dans toutes les configurations de fenêtrage (forme libre, écran partagé et plein écran).
  • Suppression des icônes système : vérifiez que l'UI du navigateur ne s'affiche pas sous les icônes système.
  • Application de la couleur de premier plan : vérifiez que les couleurs de premier plan appropriées sont appliquées aux icônes système dans l'en-tête de l'application en fonction du thème du navigateur. Cela est particulièrement important lorsque le thème du navigateur diffère du thème du système.
  • Glissement de la fenêtre : vérifiez qu'une fenêtre de forme libre peut être déplacée en appuyant de manière prolongée n'importe où dans une zone vide de la barre d'onglets.
  • Visibilité des onglets lors du redimensionnement : vérifiez que les onglets sont affichés ou masqués en fonction de la largeur de la fenêtre afin de maintenir une usabilité optimale.

Scénarios de test pour la gestion des instances d'application avec un comportement de geste glissable

Les scénarios de test suivants vérifient la compatibilité du navigateur avec la gestion des instances d'application :

  • Création d'une fenêtre : vérifiez que le fait de faire glisser un onglet de la barre d'onglets vers une zone vide crée une fenêtre de navigateur contenant cet onglet.
  • Aucune nouvelle fenêtre pour le dernier onglet (instance unique) : si une seule instance de navigateur est ouverte, vérifiez que le fait de faire glisser le dernier onglet de cette fenêtre n'en crée pas une autre.

Modes de comportement "Bureau d'abord" et "Tactile d'abord"

Le fenêtrage du bureau est conçu pour prendre en charge différents facteurs de forme au-delà des tablettes autonomes, y compris les ordinateurs portables et les appareils avec des écrans externes connectés. Étant donné que les différents facteurs de forme entraînent des attentes différentes de la part des utilisateurs en matière d'interaction, souvent dictées par la méthode d'entrée principale (tactile ou clavier et souris), le fenêtrage du bureau utilise deux modes de comportement distincts :

  • Mode "Bureau d'abord" : offre une expérience optimisée pour le clavier et le pavé tactile, où le système préfère le fenêtrage de forme libre. Ce mode est destiné aux configurations de type ordinateur portable.
  • Mode "Tactile d'abord" : offre une expérience optimisée pour le tactile, où le système préfère le fenêtrage en plein écran. Ce mode est celui par défaut pour les tablettes autonomes.

Ces modes ne sont pas des environnements de bureau distincts, mais plutôt des états par écran qui dictent les comportements par défaut de l'UI.

Différences de comportement

Le tableau suivant récapitule les principales différences fonctionnelles et d'UI entre les modes "Bureau d'abord" et "Tactile d'abord" :

Fonctionnalité Mode "Tactile d'abord" Mode "Bureau d'abord"
Lancement par défaut Les fenêtres s'ouvrent en plein écran, sauf si une fenêtre de forme libre est déjà au premier plan. Les fenêtres s'ouvrent en forme libre, sauf si une fenêtre en plein écran est déjà au premier plan.
Type de barre des tâches Utilise la barre des tâches temporaire (n'affiche que les applications épinglées) en plein écran. Utilise toujours la barre des tâches du bureau (affiche les applications épinglées et ouvertes).
Refocalisation Les fenêtres se réactivent en fonction du mode d'affichage actuel (par exemple, en se réactivant en forme libre si l'écran est en fenêtrage du bureau). Les fenêtres se réactivent en fonction de leur propre mode de fenêtrage enregistré (par exemple, une fenêtre en plein écran reprend toujours en plein écran).
Glisser vers le haut Le fait de faire glisser une fenêtre vers le bord supérieur passe en plein écran. Le fait de faire glisser une fenêtre vers le bord supérieur passe à l'état maximisé.
Commandes de fenêtre Utilise le handle de l'application pour les commandes en plein écran. Utilise le menu de survol pour les commandes en plein écran.

Le mode "Bureau d'abord" est un état par écran, ce qui signifie qu'un appareil peut héberger simultanément un écran interne "Tactile d'abord" et un écran externe "Bureau d'abord".

Déclencheurs de commutation

Le système évalue plusieurs facteurs pour déterminer le mode approprié pour un écran :

  • Périphérique d'entrée : un écran passe en mode "Bureau d'abord" si un clavier et un pavé tactile ou une souris sont connectés et activés.
  • Écran externe : les écrans externes connectés sont généralement définis par défaut sur le mode "Bureau d'abord", sauf s'ils mettent en miroir l'écran interne.
  • Posture de l'appareil : pour les appareils convertibles, le mode peut changer en fonction de l'orientation physique (par exemple, en passant au mode "Tactile d'abord" lorsque le clavier est rabattu).

Implémentation technique

La "source de vérité" pour cet état est le mode de fenêtrage de l'écran, en particulier le mode de fenêtrage de la TaskDisplayArea de l'écran. Les composants Shell et Launcher peuvent accéder à cet état via DisplayAreaInfo ou la WindowConfiguration du contexte d'affichage.

Fenêtrage du bureau par écran

Sous Android 17 ou version ultérieure, pour les écrans pouvant héberger des tâches, comme défini par Display.canHostTasks, WindowManager (WM) détermine l'éligibilité au fenêtrage du bureau en fonction de critères que les fabricants d'équipement d'origine (OEM) peuvent configurer. Par défaut, WM vérifie les critères suivants :

  • Compatibilité avec le fenêtrage de forme libre
  • Activation des décorations système
  • Activation du changement de mode d'affichage ou de contenu par défaut

Lorsque l'éligibilité d'un écran change, WM appelle IDisplayWindowListener.onDesktopModeEligibleChanged. L'API masquée WindowManager.isEligibleForDesktopMode indique si l'écran est éligible au fenêtrage. Le shell WM intercepte cet appel et, si l'écran devient éligible, détermine s'il est compatible avec le fenêtrage du bureau et alloue les ressources nécessaires.