Wear Compose Material 3

  
Créez des applications Jetpack Compose pour les appareils Wear OS en fournissant des fonctionnalités compatibles avec différentes tailles d'appareils et gestes de navigation à l'aide du système de conception Material 3 Expressive.
Dernière mise à jour Version stable Version finale Version bêta Version alpha
4 juin 2025 - - 1.5.0-beta03 -

Déclarer des dépendances

Pour ajouter une dépendance sur Wear, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.

Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou de votre module :

Groovy

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.5.0-beta03"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material3:1.5.0-beta03"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.5.0-beta03"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-beta03")
    
    // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material
    // or androidx.compose.material:material.
    // androidx.wear.compose:compose-material3 is designed as a replacement,
    // not an addition, to both of these other libraries.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material3, please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.5.0-beta03")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material3:1.5.0-beta03")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.5.0-beta03")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-beta03")

    // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material
    // or androidx.compose.material:material.
    // androidx.wear.compose:compose-material3 is designed as a replacement,
    // not an addition, to both of these other libraries.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material3, please raise a bug to let us know.
}

Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.

Commentaires

Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.

Signaler un nouveau problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

Wear Compose Material3 version 1.5

Version 1.5.0-beta03

4 juin 2025

Publication d'androidx.wear.compose:compose-*:1.5.0-beta03. La version 1.5.0-beta03 contient ces commits.

Modifications apportées à l'API

  • OpenOnPhoneDialog n'annonce désormais que le texte du message sous TalkBack et ignore la sémantique des icônes. Les OpenOnPhoneDialogDefaults ont été mis à jour pour supprimer le paramètre iconContentDescription et contentDescription de icon(). De plus, ConfirmationDialogDefaults comporte désormais des paramètres de modificateur sur les composables SuccessIcon et FailureIcon. (Id2ae2)

Correction de bugs

  • Modification de l'ordre dans lequel nous appliquons l'effet des paramètres SurfaceTransformation. Auparavant, les transformations appliquées aux composants Wear Material3 se faisaient comme suit: peintre d'arrière-plan, transformation du conteneur, transformation du contenu. Les deux premiers sont maintenant inversés, et nous appliquons tout modificateur transmis entre eux. Il est donc affecté par les transformations de conteneur. Cela permet de résoudre des problèmes tels que l'utilisation d'un effet de scintillement d'espace réservé avec des éléments dans un TLC à l'aide du paramètre de transformation. (I786cf)
  • RevealState.Saver a été ajouté pour restaurer l'état de SwipeToReveal lorsque l'activité ou le processus est recréé. La fonction rememberRevealState utilise désormais cet Économiseur par défaut. (Ie0ecb)
  • Les boutons d'action principaux et secondaires SwipeToReveal doivent être définis par défaut sur ButtonDefault.Height (correction d'un bug qui remplissait la hauteur maximale pour les boutons plus grands). (Ibfba1)
  • Modification de SwipeToReveal pour réinitialiser le dernier composant avec lequel l'utilisateur a interagi lorsque le geste de balayage vers la droite est effectué. (Ia8450)
  • SwipeToReveal a été modifié pour s'arrêter à l'état Revealing lorsque la position de fin du balayage se situe entre les ancrages de révélation et de révélation, et est plus proche de l'ancrage de révélation. (If4458)
  • Le contenu de ButtonGroup est désormais correctement inversé dans une mise en page RTL (Ib378d).
  • AnimatedText est désormais compatible avec le texte de droite à gauche (I4533c)
  • TransformingLazyColumn redimensionne désormais correctement les éléments lorsque l'élément du bas est supprimé (Idacab).
  • TransformingLazyColumn n'effectue désormais qu'une seule passe de mesure, ce qui améliore les performances en réduisant les délais de frame. (I501a1)

Version 1.5.0-beta02

20 mai 2025

Publication d'androidx.wear.compose:compose-*:1.5.0-beta02. La version 1.5.0-beta02 contient ces commits.

Correction de bugs

  • Mise à jour des profils de référence pour les bibliothèques foundation, material et material3. (I53f06)
  • Correction d'un bug dans TransformingLazyColumn, qui entraînait la redimensionnement des éléments lorsque l'élément du bas était supprimé. (Idacab)
  • Correction d'un bug avec TransformingLazyColumn, lorsque la liste se bloquait en haut ou en bas. (I49d00)
  • OpenOnPhoneDialog sous TalkBack doit énoncer le texte incurvé plutôt que la description du contenu de l'icône. (I4efe8)
  • Correction d'un bug dans SwipeToReveal qui renvoyait l'ancre incorrecte dans RevealState.currentValue lorsque hasPartiallyRevealedState est défini sur "false". (I9c7cf)
  • Les boutons de retour en arrière SwipeToReveal sont désormais ButtonDefaults.Height par défaut. (I1f6c8)
  • Les performances de BasicSwipeToDismissBox ont été améliorées en éliminant l'utilisation de Canvas pour dessiner des écrans de masquage. (I68f2c)
  • Correction d'un bug d'accessibilité dans le curseur, où le pourcentage annoncé ne correspondait pas à la valeur après les mises à jour (I91146)
  • Correction d'un bug lié à l'implémentation de placeholderShimmer. (Iee39b
  • Les performances de TransformingLazyColumn ont été améliorées en optimisant le calcul de ScrollProgress de 30%. (I4c4cb)

Version 1.5.0-beta01

7 mai 2025

Publication d'androidx.wear.compose:compose-*:1.5.0-beta01. La version 1.5.0-beta01 contient ces commits.

La version 1.5.0-beta01 de Compose pour Wear OS indique que cette version de la bibliothèque est complète et que l'API est verrouillée (sauf si elle est marquée comme expérimentale).

Wear Compose 1.5.0-beta01 inclut la bibliothèque Wear Compose Material3, qui est compatible avec le nouveau système de conception d'UI appelé Material 3 Expressive. Nous vous recommandons de passer de Material à Material 3 pour adopter la nouvelle conception visuelle dans les applications et profiter des nouveaux composants comme suit:

  • MaterialTheme pour des jeux de couleurs, une typographie et des formes mis à jour et étendus afin d'apporter à vos conceptions à la fois de la profondeur et de la variété.
  • La thématisation des couleurs dynamiques, qui génère automatiquement un jeu de couleurs pour votre application afin qu'il corresponde aux couleurs du cadran.
  • Les nouveaux composants s'adaptent automatiquement aux tailles d'écran plus grandes par défaut
  • Morphing de forme : les composants de bouton ronds tels que IconButton, TextButton, IconToggleButton et TextToggleButton acceptent des variations qui s'animent lorsqu'ils sont enfoncés ou cochés.
  • EdgeButton : nouveau bouton qui épouse les bords et dont la forme est conçue pour le bas de l'écran.
  • Échafaudages : introduction de AppScaffold et ScreenScaffold pour mettre en page la structure de l'écran et coordonner les animations ScrollIndicator et TimeText.
  • Boutons : de nombreux boutons en forme de stade sont compatibles avec des conteneurs flexibles à un seul emplacement et des variantes à plusieurs emplacements pour les boutons avec des icônes et des libellés. CheckboxButton et SwitchButton sont fournis lorsque des boutons d'activation/de désactivation sont nécessaires, tandis que RadioButton est le bouton de sélection disponible (des variantes "Split" des boutons d'activation/de désactivation et de sélection sont également fournies).
  • ButtonGroup : implémente un groupe expressif de boutons sur une ligne qui change de forme lorsque vous appuyez dessus.
  • Les variantes AlertDialog acceptent les boutons OK/Annuler ou un EdgeButton.
  • ConfirmationDialog permet d'afficher un message avec un délai avant expiration, et prend en charge des animations spéciales pour les variations de réussite, d'échec et d'ouverture sur le téléphone.
  • Sélecteurs : les variantes TimePicker et DatePicker sont compatibles, ainsi que les composants Picker et PickerGroup pour créer vos propres écrans de sélecteur.
  • ProgressIndicators : les indicateurs de progression circulaires et linéaires sont acceptés (CircularProgressIndicator propose des variantes segmentées et indéterminées).
  • Cartes : un certain nombre de variantes de cartes sont disponibles, y compris TitleCard, qui propose des mises en page spécifiques pour les cartes avec des emplacements de titre, d'heure, de sous-titre ou de contenu. Vous pouvez également ajouter un arrière-plan d'image à TitleCard pour renforcer la signification des informations d'une fiche.
  • Pages : les composants HorizontalPagerScaffold, VerticalPagerScaffold et AnimatedPage coordonnent les animations HorizontalPageIndicator et VerticalPagerIndicator. HorizontalPager et VerticalPager sont publiés dans la bibliothèque Wear Compose Foundation.
  • Espaces réservés : dessine une forme squelette sur un composant lorsque aucun contenu provisoire n'est disponible.
  • Curseurs et sélecteurs : les curseurs et les sélecteurs permettent aux utilisateurs de faire une sélection parmi une plage de valeurs. Les curseurs sont plus compacts et peuvent être segmentés, tandis que le composant "Étapes" est un composant plein écran associé généralement à un StepperLevelIndicator.
  • SwipeToReveal : permet d'ajouter des actions supplémentaires à un composable lorsqu'il est balayé de droite à gauche.

De plus, Wear Compose Foundation 1.5.0-beta01 inclut les nouveaux composants suivants:

  • TransformingLazyColumn : liste à défilement vertical paresseux compatible avec les animations de mise à l'échelle et de morphing
  • Groupes de focus hiérarchiques : utilisés pour annoter les composables dans une application, afin de suivre la partie active de la composition et de coordonner la mise au point.
  • Les paginations : composants HorizontalPager et VerticalPager, basés sur les composants de la fondation Compose avec des améliorations spécifiques à Wear pour améliorer les performances et respecter les consignes de Wear OS.

Modifications apportées à l'API

  • Mise à jour de l'API Hierarchical Focus : renommage de Modifier.hierarchicalFocus en Modifier.hierarchicalFocusGroup et suppression du paramètre de rappel ; suppression de la surcharge de Modifier.hierarchicalFocusRequester avec un paramètre FocusRequester ; création d'un nouveau CompositionLocal, LocalScreenIsActive, afin que les composants puissent informer et vérifier quel écran est actif. (I5ff7c).
  • Abandon de SwipeToReveal dans Wear Compose Foundation au profit des API SwipeToReveal dans Wear Compose Material et Wear Compose Material3. Veuillez remplacer les importations SwipeToReveal Wear Foundation par des importations Wear Compose Material/ Wear Compose Material3 pour continuer à utiliser les API. (Ia147d).
  • Les dépendances SwipeToReveal de Wear Compose Material3 sur Foundation ont été déplacées vers le package material3 (par exemple, RevealValue, RevealDirection, RevealActionType, RevealState et rememberRevealState). Les développeurs doivent remplacer androidx.wear.compose.foundation par androidx.wear.compose.material3 dans leurs importations de ces classes et fonctions. (I640e6)
  • Mise à jour de l'API SwipeToReveal Wear Compose Material3 comme suit: ajout des paramètres primaryAction, onFullSwipe, secondaryAction, undoPrimaryAction, undoSecondaryAction et hasPartiallyRevealedState au composable SwipeToReveal ; suppression de la possibilité de personnaliser positionalThreshold et animationSpec à partir de RevealState ; suppression de lastActionType, revealThreshold et de la largeur de RevealState ; modification du constructeur RevealState pour qu'il accepte un RevealDirection au lieu d'ancres ; suppression des fonctions createRevealAnchors, des ancres et des fonctions bidirectionalAnchors ; les fonctions SwipeToRevealScope primaryAction, secondaryAction, undoPrimaryAction et undoSecondaryAction ont été rebaptisées PrimaryActionButton, SecondaryActionButton, UndoActionButton et transformées en fonctions Composable ; RevealActionType a été marqué comme interne. (I885d0).
  • Mise à jour supplémentaire de l'API SwipeToReveal comme suit: renommage de onFullSwipe en onSwipePrimaryAction ; renommage de SwipeToRevealNonAnchoredSample pour indiquer l'utilisation du paramètre hasPartiallyRevealedState ; suppression de actionButtonHeight, car la hauteur par défaut est celle du bouton et la hauteur plus grande peut être définie à l'aide d'un modificateur ; suppression de SmallActionButtonHeight de SwipeToRevealDefaults ; paramètre de valeur dans les constructeurs RevealValue et RevealDirection défini comme privé. (I465ce)

Correction de bugs

  • Correction de la gestion des EdgeButton de ScreenScaffold afin que, lorsqu'un élément TransformingLazyColumn est supprimé, le EdgeButton soit animé à sa place. (I6d366).
  • Mise à jour des dépendances de Wear Compose sur les bibliothèques Compose vers la version 1.8.0. (I2ef3f).
  • Modification du mouvement de l'CircularProgressIndicator indéterminé afin qu'il ne régresse plus temporairement. (Ieddb1)
  • Correction d'un bug SwipeDismissableNavHost : le focus ne changeait pas correctement après un balayage vers l'arrière, ce qui entraînait l'échec de la saisie par dispositif rotatif (pour les versions d'API 36 et ultérieures, qui utilisent la prévisualisation du Retour). (Ieddb1)
  • Modification de la documentation de l'API Hierarchical Focus (Idf2ff).
  • Mise à jour de la documentation sur le bouton et la fiche pour indiquer comment containerPainter et disabledContainerPainter remplacent containerColor et disabledContainerColor (I4a453).
  • Rétablissement d'une modification apportée à TimeText dans la version précédente, qui a déplacé BroadcastReceiver vers un thread de travail, car elle causait des problèmes pour les applications qui gèrent leur propre thread lors de la navigation. (I34d02).
  • Mise à jour des exemples de sélecteur pour supprimer les appels de mémorisation inutiles et utiliser rememberUpdatedState dans le sélecteur pour mémoriser la dernière fonction lambda contentDescription. (Icb5b1)
  • Mise à jour des styles de texte dans TimePicker et DatePicker afin que les modifications de police ne provoquent plus de coupure. (I26194).
  • ListHeader et ListSubHeader définissent désormais l'alignement du texte par défaut sur "centré" et "début", respectivement. (I78339)
  • Mise à jour des exemples et des démonstrations de balayage pour révéler Foundation et Material afin d'annoncer des actions d'accessibilité personnalisées (les actions personnalisées doivent être ajoutées en tant que sémantique sur le contenu, et non sur le composable SwipeToReveal lui-même). (Ie92a3)
  • Mise à jour de la valeur MaxLines par défaut définie sur le contenu EdgeButton en fonction de sa taille. Elle est désormais de 1 pour les tailles XS, 2 pour les tailles S et M, et 3 pour les tailles L. (Ie35f6).
  • Simplifié LocalReduceMotion afin que l'observateur ne soit enregistré qu'une seule fois, pour améliorer les performances. (Ib1979).
  • Minimisation du nombre de recompositions dans ScrollIndicator pour améliorer les performances. (Ia7a67)
  • Correction d'un bug dans TransformingLazyColumn, où l'élément visible en haut de la liste ne s'adaptait pas correctement lorsque EdgeButton atteignait sa pleine hauteur. (I30580).

Wear Compose Material3 version 1.0

Version 1.0.0-alpha37

23 avril 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha37. La version 1.0.0-alpha37 contient ces commits.

Modifications apportées à l'API

  • Suppression de scrollTransform de la surface de l'API publique. Utilisez la combinaison des modificateurs transformedHeight et graphicsLayer si vous devez obtenir la même fonctionnalité. (Ie181d)
  • Remplacement des composables ImageButton et ImageCard par des surcharges Button et Card/TitleCard, respectivement. imageButtonColors a été renommé buttonWithContainerPainterColors et imageCardColors cardWithContainerPainterColors. Ajout de ButtonDefaults.scrimBrush et de CardDefaults.scrimBrush publics. Les boutons imageBackgroundGradientStartColor et imageBackgroundGradientEndColor ont été renommés scrimGradientStartColor et scrimGradientEndColor. CardDefaults.ImageContentPadding renommé en CardDefaults.CardWithContainerPainterContentPadding (I7b8b6)
  • Picker et PickerGroup acceptent désormais contentDescription en tant que lambda pour éviter les recompositions inutiles. (I002dd)

Correction de bugs

  • Correction d'un problème qui entraînait un tremblement de l'CircularProgressIndicator indéterminée pendant l'animation si la largeur n'était pas égale à la hauteur. (I76bfe)
  • Correction d'un problème lié à la mise en page des boutons de bordure pour une taille non valide. Empêche désormais la mise à jour de la mise en page du bouton de bord lorsque la hauteur est NaN. (I32b93)
  • Augmentation de l'angle de balayage maximal dans OpenOnPhoneDialog afin que le texte par défaut "Vérifiez votre téléphone" ne soit pas coupé avec la plus grande taille de police. (I90af9)

Version 1.0.0-alpha36

9 avril 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha36. La version 1.0.0-alpha36 contient ces commits.

Modifications apportées à l'API

  • ButtonDefaults.imageBackgroundButtonColors a été remplacé par ImageButton, ButtonDefaults.imageButtonColors, ButtonDefaults.containerPainter et ButtonDefaults.disabledContainerPainter. Et des modifications similaires pour la carte. Les peintres sont supprimés de ButtonColors et CardColors. (I8c6a1)
  • Espaces réservés mis à jour pour simplifier l'API. Nous proposons désormais deux modificateurs : Modifier.placeholderShimmer pour appliquer un effet de scintillement au niveau du composant et Modifier.placeholder pour appliquer un masque sur le contenu non chargé (Iaee7a).

Correction de bugs

  • Intégration du défilement excessif dans ScrollIndicator. (Icfb7f)
  • Correction des arrière-plans vides et des boîtes de dialogue manquantes lors du lancement de boîtes de dialogue Material3. (Ice597)
  • Correction des problèmes dans FadingExpandingLabel lorsque le texte s'étend sur plusieurs lignes. (I04eb7)
  • Mise à jour de la marge intérieure entre les libellés principaux et secondaires sur les boutons. (I99b7b)
  • ArcLarge est passé de 20sp à 18sp, et l'espacement entre les lettres de ArcLarge et ArcSmall a été modifié. ConfirmationDialog/OpenOnPhoneDialog utilisent désormais ArcLarge par défaut au lieu de le remplacer par 18sp. (Id39a8)

Mises à jour des dépendances

  • Cette bibliothèque cible désormais le langage Kotlin 2.0 et nécessite KGP 2.0.0 ou version ultérieure. (Idb6b5)

Version 1.0.0-alpha35

26 mars 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha35. La version 1.0.0-alpha35 contient ces commits.

Modifications apportées à l'API

  • La marge supérieure de AlertDialog est désormais réduite par défaut lorsqu'une icône est fournie. Cela permet d'utiliser au mieux la taille d'écran disponible. (Ief06c)
  • Le compte de service (PagerScaffoldDefaults.FadeOutAnimation) a été renommé PagerScaffoldDefaults.FadeOutAnimationSpec. Le paramètre de page dans AnimatedPage a été renommé pageIndex. (I701f2)
  • Modification du nom de SurfaceTransformation dans TransformingLazyColumn : applyTransformation a été divisé en applyContainerTransformation et applyContentTransformation, et createBackgroundPainter a été renommé createContainerPainter. Mise à jour supplémentaire de la dénomination de TransformationSpec et ResponsiveTransformationSpec. (I1c534)
  • AppScaffold backgroundColor a été renommé containerColor. (I4e63f)

Correction de bugs

  • Correction d'un problème dans FadingExpandingLabel qui empêchait parfois le texte de s'étendre correctement. (I0e773)
  • La valeur de ArcLarge est passée de 20 sp à 18 sp, et les espaces entre les lettres de ArcLarge et ArcSmall ont été mis à jour. ConfirmationDialog/OpenOnPhoneDialog utilise désormais le ArcLarge par défaut au lieu de le remplacer par 18 sp. (Id39a8)
  • Mise à jour de l'animation de titre pour DatePicker et TimePicker afin que l'animation de fermeture et d'ouverture en fondu agisse comme une animation de rétroaction. (I68963)
  • Optimisation de PagerScaffold en évitant la lecture de currentPageOffsetFraction dans le composable AnimatedPage. (I433ef)
  • Toutes les échelles de type ont été mises à jour pour utiliser des chiffres proportionnels par défaut, car il s'agit du cas d'utilisation le plus fréquent. L'utilisation par défaut de la mise en tableau entraînait un espacement trop important entre certains couples de chiffres. TimePicker et DatePicker continuent d'appliquer FontFeatureSetting=tnum pour les chiffres tabulaires. (I88929)
  • Correction du focus d'entrée RSB initial pour TimePicker et DatePicker. (I1c773)
  • Le texte par défaut de OpenOnPhoneDialog a été remplacé par "Vérifiez votre téléphone". (I00a3f)
  • Modification des poids de ArcLarge et ArcMedium de 600 à 599 pour contourner un problème où le poids 600 est traité comme en gras (I2a51d)
  • Modifiez les marges intérieures SwipeToReveal entre le contenu et les boutons d'action, ainsi que la marge intérieure entre l'icône et le texte des boutons d'action. (Ic46cb)

Version 1.0.0-alpha34

12 mars 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha34. La version 1.0.0-alpha34 contient ces commits.

Modifications apportées à l'API

  • PagerScaffold n'émet plus de composant Pager. Il doit être fourni via le composable content. AnimatedPage et snapWithSpringFlingBehaviour sont désormais publics et peuvent être utilisés avec Pager Wear Foundation pour obtenir le comportement précédent de PagerScaffold M3. (voir les exemples mis à jour). (Ia4724)
  • Mise à jour de PagerState, suppression de la PagerState de la fondation Compose en tant que classe de base et ajout des propriétés currentPage, currentPageOffsetFraction et pageCount. Mise à jour de l'interface GestureInclusion, en renommant la méthode ignoreGestureStart. (I4ae07)
  • Les paramètres d'angle de balayage LevelIndicator sont désormais annotés avec FloatRange(0, 360). (I7e636)
  • Nous avons ajouté CurvedModifier.clearAndSetSemantics pour permettre de désactiver la sémantique incurvée. CurvedText continue de définir par défaut la description du contenu sur le texte, mais timeTextCurvedText et timeTextSeparator n'annoncent plus leur contenu. (I4b568)
  • Ajout de paramètres d'arrière-plan et de couleur de contenu par défaut à AppScaffold. (I56652)
  • La gestion par défaut des gestes de balayage de HorizontalPager a été rebaptisée PagerDefaults.gestureInclusion. Par défaut, seuls les gestes de balayage qui commencent sur le bord gauche de la première page sont ignorés, et uniquement lorsque TalkBack est désactivé. Dans les autres cas, les gestes de balayage ne sont pas ignorés par le pager. Ils ne sont donc pas disponibles pour les gestionnaires de balayage pour ignorer. (Iee486)
  • Ajout d'un paramètre SurfaceTransformation aux composants de bouton, de fiche et d'en-tête de liste afin qu'ils puissent appliquer différentes transformations de contenu et d'arrière-plan lorsqu'ils sont utilisés dans des conteneurs qui modifient l'apparence des éléments en fonction de leur position, comme TransformingLazyColumn. (Iabe3f)
  • Nous avons remplacé les propriétés "public const val" de notre API Wear Compose Material3 par "public val" pour éviter que les valeurs ne soient intégrées. (Ib0f32)
  • Ajout de la prise en charge d'une zone de balayage du bord dans SwipeToReveal. Le comportement par défaut de Foundation SwipeToReveal consiste désormais à interdire le balayage lorsque le geste commence à partir du bord. Le comportement par défaut de SwipeToReveal’ Material3 consiste désormais à interdire le balayage lorsque le geste commence à partir du bord, lorsque SwipeDirection est défini sur une seule direction. (I32ef0)
  • Ajout du composable FadingExpandingLabel, qui permet d'afficher le texte en fondu avec une animation ligne par ligne. (Ic60fa)
  • TransformingLazyColumn utilise désormais des contentPadding vides par défaut au lieu de placer les premiers et derniers éléments au centre. (I77ab7)
  • Suppression de rememberRevealState de SwipeToReveal de la bibliothèque Material3 Wear Compose. (I8c0e0)

Correction de bugs

  • Les bibliothèques Wear Compose ont été mises à jour vers le compilateur Kotlin 2.0. (I2de79)
  • La prise en charge des ScrollIndicator et PageIndicator non ronds a été supprimée de Material3. La prise en charge des écrans carrés ne fait plus partie des exigences Wear OS. Pour en savoir plus, consultez le guide de démarrage. (I9a852)
  • Le CurvedTextStyle utilisé dans ConfirmationDialogDefaults et OpenOnPhoneDialogDefaults a été mis à jour pour utiliser la typographie ArcLarge avec une taille de 18sp et un espacement des lettres de 1.8sp. (Ic9ced)
  • Card, ListHeader, RadioButton, CheckboxButton et SwitchButton ne limitent plus la hauteur de leur contenu par défaut. Si nécessaire, utilisez Modifier.height(IntrinsicSize.Min) pour rétablir le comportement précédent. (I80bb8)
  • Nous avons modifié les couleurs par défaut TimeText et ScrollIndicator pour inclure davantage de tons gris, car l'utilisation de OnBackground (blanc) avait un poids visuel trop important par rapport aux autres contenus à l'écran, comme les titres. (I8b36f)
  • Nous avons réduit le délai avant expiration pour l'animation des TimeText et ScrollIndicator dans les composants d'échafaudage à deux secondes. (I52021)
  • Nous avons modifié le mouvement de la boîte de dialogue afin que l'échelle de son arrière-plan soit synchronisée avec le balayage pour la fermer. (I925a9)
  • Ajout d'une démonstration de SwipeToReveal M3 à l'aide du modificateur edgeSwipeToDismiss. (I02b07)
  • Nous avons ajouté un titre à DatePicker et TimePicker sous TalkBack pour indiquer à l'utilisateur de faire défiler l'écran pour définir la date et l'heure. (Id738d)
  • AnimatedText suit désormais le paramètre "Réduire le mouvement". (Ib6578)
  • L'optimisation pour utiliser AppScaffold pour afficher le contenu de la boîte de dialogue a été améliorée afin de permettre l'affichage de plusieurs boîtes de dialogue les unes sur les autres (I1209c).

Version 1.0.0-alpha33

26 février 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha33. La version 1.0.0-alpha33 contient ces commits.

Modifications apportées à l'API

  • Nous avons supprimé le paramètre de libellé de primaryAction et secondaryAction de SwipeToRevealScope. Les sémantiques d'action personnalisées doivent être ajoutées directement au contenu du composant SwipeToReveal par le développeur. (Ia67f3)
  • Nous avons supprimé les préfixes "Bouton" des tailles, des styles de texte et des fonctions de couleur dans IconToggleButtonDefaults et TextToggleButtonDefaults (I5471d).
  • Nous avons supprimé la LocalMinimumInteractiveComponentEnforcement expérimentale. (I4ad8a)
  • Nous avons remplacé le DSL PickerGroupScope par un composable. Par conséquent, nous avons supprimé la méthode pickerGroupItem de PickerGroupScope et ajouté @Composable PickerGroupItem, qui doit être utilisé pour ajouter un sélecteur à PickerGroup. Nous avons également remplacé le type du paramètre "content" de PickerGroup par @Composable PickerGroupScope.() -> Unit. (Ic6aec)
  • Nous avons ajouté une surcharge LevelIndicator pour les valeurs fractionnaires et un préfixe "Stepper" à celles qui incluent un paramètre de plage (qui sont adaptées à l'utilisation avec le composant Stepper). (If4234)
  • Nous avons ajouté TransformationSpec de TransformingLazyColumn à l'API, ce qui permet de définir les transformations exactes qui s'appliquent aux éléments lorsqu'ils défilent dans la TLC. (I21856)
  • Nous avons mis à jour IconButtonShapes, IconToggleButtonShapes, TextButtonShapes et TextToggleButtonShapes pour qu'ils soient cohérents avec les classes compose/material3. (I5a081)
  • Nous avons ajouté un paramètre overscrollEffect à ScalingLazyColumn, TransformingLazyColumn et ScreenScaffold. (I0cee8)
  • Nous avons renommé le paramètre swipeDirection en revealDirection dans rememberRevealState. (I7472f)
  • Wear Pager dispose désormais de son propre PagerScope au lieu d'utiliser Compose PagerScope. (I9195b)
  • Nous avons supprimé le composable LinearProgressIndicatorContent. Veuillez utiliser directement LinearProgressIndicator pour que les modifications apportées aux valeurs soient animées par défaut. (I2c4ad)
  • Nous avons supprimé le composable CircularProgressIndicatorStatic et ajouté une fonction DrawScope publique drawCircularProgressIndicator avec la même fonctionnalité. Veuillez utiliser directement CircularProgressIndicator pour que les modifications soient animées par défaut, mais créez votre propre composable à partir de drawCircularProgressIndicator si des animations personnalisées sont nécessaires. (Ie762f)
  • Nous avons réorganisé les paramètres dans DrawScope.drawCircularProgressIndicator pour déplacer le paramètre targetProgress vers le haut. (I8ab92)
  • L'API OpenOnPhoneDialog a été mise à jour pour plus de clarté et de cohérence avec les autres boîtes de dialogue. Le paramètre show a été renommé visible, et curvedText est désormais fourni par l'appelant au lieu d'avoir une valeur par défaut. (Idec2d)
  • Nous avons renommé openOnPhoneCurvedText en openOnPhoneDialogCurvedText (I65bdd)
  • Nous avons ajouté ScrollIndicatorColors pour fournir des couleurs personnalisées à ScrollIndicator. (I9eb8c)
  • Permet de configurer la couleur utilisée pour dessiner un arrière-plan derrière TimeText. (I9f5d9)
  • Mise à jour des typographies ArcLarge, ArcMedium et ArcSmall pour qu'elles soient CurvedTextStyle (Iffc41)
  • Nous avons supprimé ScreenScaffoldDefaults.contentPaddingWithEdgeButton. (Ia923e)
  • Nous avons ajouté errorDim à ColorScheme pour les erreurs de priorité élevée ou les actions d'urgence telles que les alertes de sécurité, les superpositions de boîtes de dialogue ayant échoué ou les boutons d'arrêt. (I70998)

Correction de bugs

  • Nous avons épinglé wear.compose.material3 à la version 1.15.0 de androidx.core.core (I132e9).
  • Nous avons amélioré les performances de Dialog en utilisant AppScaffold pour superposer les boîtes de dialogue à d'autres contenus à l'écran (I1b9a4).
  • Réduction de la marge intérieure verticale de EdgeButton. (I1a5bb)
  • Nous avons ajouté des sémantiques de bouton aux boutons du curseur. (I80cc6)

Version 1.0.0-alpha32

29 janvier 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha32. La version 1.0.0-alpha32 contient ces commits.

Modifications apportées à l'API

  • Sur CurvedTextStyle, nous avons divisé l'espacement des lettres en espacement dans le sens des aiguilles d'une montre et en sens inverse. Cela est nécessaire, car les lettres dans le sens des aiguilles d'une montre s'étalent à partir de la ligne de base, tandis que celles dans le sens inverse s'étalent vers l'intérieur (un espacement plus important est donc nécessaire) (I4b848).
  • Nous avons mis à jour IconButtonShapes, IconToggleButtonShapes, TextButtonShapes et TextToggleButtonShapes pour améliorer la cohérence entre les bibliothèques Material3. Cette modification introduit également le stockage en cache des formes pour réduire le nombre d'allocations. (I049fc)
  • Nous avons supprimé le paramètre pressedShapeCornerSizeFraction de la méthode variantAnimatedShape dans IconToggleButton et TextToggleButton (I58a65).
  • Nous améliorons le rendu du texte incurvé (y compris TimeText) qui n'est pas compatible avec les écrans non ronds. La prise en charge des écrans non ronds ne fait plus partie des exigences Wear OS. Pour en savoir plus, consultez le guide de démarrage. (I1cc1c)
  • Nous avons mis à jour ButtonGroupScope dans ButtonGroup, en remplaçant ButtonGroupItem basé sur le DSL par Modifier.weight, Modifier.minWidth et Modifier.enlargeOnPress. (I16c3c)
  • Dans l'API ButtonGroup, nous avons mis à jour la nouvelle ButtonGroupScope basée sur les modificateurs: enlargeOnPress est désormais appelée animateWidth et accepte un InteractionSource, plutôt qu'un MutableInteractionSource, car il n'est pas nécessaire de le muter. Nous avons également ajouté la constante publique ButtonGroupDefaults.DefaultMinWidth, qui correspond à la largeur minimale par défaut des boutons dans un ButtonGroup. (Ie27ec)
  • Nous avons modifié ListHeaderDefaults.contentColor pour qu'il commence par une lettre minuscule, car il s'agit d'une propriété composable. (I125a5)
  • Nous avons ajouté un paramètre de description du contenu à SliderDefaults.DecreaseIcon et SliderDefaults.IncreaseIcon, avec des valeurs par défaut appropriées. (I2e1a7)
  • Nous avons renommé le paramètre spacing dans Picker et PickerGroup en verticalSpacing (Ib75cc).
  • Nous avons supprimé ConfirmationDialogDefaults.successText et failureText, car les appelants de ConfirmationDialog doivent fournir des chaînes avec plus de contexte. confirmationCurvedText a également été renommé confirmationDialogCurvedText. Enfin, le paramètre show de la boîte de dialogue a été renommé "visible" pour plus de cohérence avec les autres mises à jour récentes des boîtes de dialogue. (I10074)
  • IconButton a renommé disabledImageOpacity en DisabledImageOpacity. (I5f94a)

Correction de bugs

  • Nous avons corrigé un bug dans l'animation EdgeButton afin que la taille correcte soit utilisée dans chaque frame (Id3b58).
  • Correction d'un problème de non-fonctionnement de animateContentSize avec Button. (Ib18a0)
  • Nous avons modifié l'échelle de taille de police du titre de grande taille pour qu'elle soit de 18dp (Ic9d52).
  • Nous avons modifié l'espacement et la taille des icônes AlertDialog. (Iac28c)
  • Nous avons corrigé les incohérences concernant les points d'arrêt pour les grands écrans (les écrans de 225 dp et plus sont considérés comme des grands écrans) (I36474)
  • Correction d'un bug mineur dans le positionnement des boutons (I952c2)

Version 1.0.0-alpha31

15 janvier 2025

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha31. La version 1.0.0-alpha31 contient ces commits.

Modifications apportées à l'API

  • Nous avons mis à jour toutes les bibliothèques Wear Compose en mode "API explicite". (Iebf9f)
  • Nous avons mis à jour les API ScreenScaffold et EdgeButton afin de faciliter la spécification des marges intérieures du contenu sur les écrans qui incluent un EdgeButton. Dans la nouvelle API, le size de EdgeButton n'est transmis qu'à EdgeButton, et ScreenScaffold utilise un paramètre edgeButtonSpacing pour l'espacement entre EdgeButton et le contenu de la liste. (I424fd)
  • Dans DatePicker, nous avons renommé les paramètres minDate en maxDate et minValidDate en maxValidDate. Dans DatePickerColors, nous avons renommé le paramètre selectedPickerContentColor en activePickerContentColor et unselectedPickerContentColor en inactivePickerContentColor. (Iba17b)
  • Nous avons remplacé la valeur par défaut de ArcProgressIndicator par strokeWidth=6dp et recommandé diameter = 81.24% pour la hauteur de l'écran. (I6f248)
  • Nous avons mis à jour l'API Confirmation pour refléter son utilisation en tant que boîte de dialogue. Le composable s'appelle désormais ConfirmationDialog, avec des mises à jour associées au nom des couleurs et des classes par défaut. Nous avons également renommé le paramètre show en visible pour assurer la compatibilité avec d'autres API d'animation Compose. De plus, nous avons rendu ConfirmationDialogContent, SuccessConfirmationDialogContent et FailureConfirmationDialogContent disponibles pour les situations où les développeurs doivent personnaliser les animations de boîte de dialogue d'introduction/de fin. (Iaeb33)
  • Nous avons remplacé CircularProgressIndicatorContent par CircularProgressIndicatorStatic (la variante non animée de CircularProgressIndicator) afin qu'il puisse désormais être utilisé pour créer des CircularProgressIndicator avec des animations personnalisées. (I1346f)
  • Nous avons corrigé l'ordre des paramètres dans ArcProgressIndicator, en plaçant le paramètre modificateur en premier (I4656a).
  • Amélioration de l'API SwipeToReveal pour qu'elle reçoive un paramètre de zone de texte pour les libellés des actions (sauf l'action secondaire) et pour supprimer les paramètres de libellé de l'action d'annulation (I5b3db)

Correction de bugs

  • Correction d'un bug qui entraînait le déclenchement répété des retours haptiques LongPress dans Button, Card, IconButton et TextButton. (Ia8b0f)
  • Modifications apportées à l'expérience utilisateur de AlertDialog : sur les grands écrans, les boutons de confirmation et de fermeture sont désormais plus petits. L'espacement est également plus important sous les boutons de confirmation et d'ignorer. (I4f066)
  • Nous avons modifié les spécifications d'animation du libellé du bouton d'action du composant SwipeToReveal. (Ib87fb)
  • Modification de SwipeToReveal pour développer le conteneur en même temps que le texte est affiché. (I44cf8)
  • Amélioration de SwipeToReveal pour effectuer un retour haptique lorsque le balayage dépasse le seuil au-delà duquel l'action principale est effectuée. (I23efe)
  • Nous avons modifié SwipeToReveal pour qu'il affiche des points de suspension en cas de débordement de texte par défaut, pour les actions principales et d'annulation. (I71f5a)
  • Nous avons corrigé un problème qui entraînait des à-coups sur les animations ButtonGroup. (I63f8f)
  • Nous avons ajouté des sémantiques de texte à AnimatedText. (I6063c)
  • La boîte de dialogue réinitialise désormais le scaling en arrière-plan lorsqu'elle est supprimée de la composition (sans cette correction, l'écran de lancement aurait pu rester à une taille réduite) (Id24ac)
  • Nous avons ajouté une animation de morphing de forme aux boutons du composant Stepper (Id6ed3).

Version 1.0.0-alpha30

11 décembre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha30. La version 1.0.0-alpha30 contient ces commits.

Modifications apportées à l'API

  • Le modificateur scrollTransform pour TransformingLazyColumn a été refactorisé, ce qui a déclenché une modification de l'API. (I0c6dc)
  • Nous avons modifié IconToggleButtonShapes et TextToggleButtonShapes pour qu'ils comportent deux paramètres de forme différents, uncheckedPressed et checkedPressed. (I85dbd)
  • Les options de mois/jour non valides sont désormais visibles dans le DatePicker, avec un nouveau invalidPickerContentColor, lorsque vous utilisez minDate ou maxDate. (If4541)
  • Nous avons mis à jour l'API Stepper pour fournir des emplacements increaseIcon et decreaseIcon. Le contenu de ces emplacements peut être créé comme d'habitude à partir du composable Icon. (Id35da)
  • Nous avons mis à jour dynamicColorScheme en supprimant le paramètre defaultColorScheme facultatif et en renvoyant désormais ColorScheme nullable. Cela signifie que l'appelant doit gérer explicitement le cas de remplacement lorsqu'aucun jeu de couleurs dynamique n'est fourni. (I6d62e)
  • Nous avons mis à jour les tailles d'icône dans ButtonDefaults pour les utiliser avec CompactButton. Un CompactButton ne contenant qu'une icône doit utiliser ButtonDefaults.SmallIconSize = 24.dp, tandis qu'un CompactButton contenant à la fois une icône et du texte doit utiliser ButtonDefaults.ExtraSmallIconSize = 20.dp. Il est recommandé que CompactButton affiche son contenu (plutôt que de remplir la largeur maximale). Les exemples ont été mis à jour pour le montrer. (I0582c)
  • Nous avons ajouté EdgeButtonDefaults avec des tailles d'icônes recommandées pour les quatre EdgeButtonSizes différents. Nous avons également modifié la mise en page de EdgeButton afin que la marge intérieure inférieure soit légèrement plus grande que la marge intérieure supérieure, ce qui améliore l'apparence du contenu de l'icône et du texte. (Id772a)
  • Nous avons ajouté du mouvement à LinearProgressIndicator et exposé LinearProgressIndicatorContent, qui fournit le contenu visuel sans animations. (Idee99)
  • Nous avons ajouté un nouveau composable CircularProgressIndicatorContent pour afficher le contenu visuel de CircularProgressIndicator sans animations. (Ie33d4)
  • TransformingLazyColumn fournit désormais la composition locale LocalTransformingLazyColumnItemScope que les Card, Button et ListHeader utilisent désormais pour se transformer automatiquement lorsqu'ils sont placés dans un TransformingLazyColumn. Les appelants peuvent désactiver la morphing automatique à l'aide du nouveau wrapper TransformExclusion. (I1652f)
  • Nous avons remplacé le type de ButtonDefaults.shape par RoundedCornerShape. (Iccdf2)

Correction de bugs

  • Nous avons corrigé un bug pour respecter l'alpha existante en arrière-plan pour TimeText. (I1eb60)
  • Nous avons défini TextMotion sur Animated par défaut dans notre typographie pour éviter les à-coups du texte dus à l'ancrage des glyphes de lettres aux limites de pixels lors des opérations de mise à l'échelle. (I626fa)
  • Nous avons modifié l'apparence de ScrollIndicator en augmentant la largeur et la taille de l'espacement pour améliorer la visibilité. (Ied7cb)
  • Nous avons corrigé un bug sur Modifier.scrollTransform lors de l'ajout/de la suppression/du déplacement d'éléments. (I6830f)
  • Nous avons corrigé un problème d'animation des boutons ronds pour les pressions courtes (auparavant, la durée d'animation minimale n'était pas toujours respectée). (I757a7)
  • Nous avons modifié l'angle de balayage de LevelIndicator pour le définir sur 20% (72 degrés). (Idde5c)
  • Nous avons corrigé le positionnement de ScrollIndicator lorsque ScalingLazyColumn était utilisé avec AutoCenteringParams. (I387dd)
  • Nous avons mis à jour les couleurs et la typographie de ListHeader et ListSubHeader. ainsi que les couleurs des commandes d'activation/de désactivation sur CheckboxButton et SwitchButton. (I39817)
  • Nous avons corrigé le positionnement de ScrollIndicator dans LazyColumn et ScalingLazyColumn avec ContentPadding. (I2bc51)
  • Nous avons corrigé un bug détecté dans l'animation de progression de OpenOnPhoneDialog en utilisant le nouveau CircularProgressIndicatorContent. (I3e443)
  • Nous avons mis à jour HorizontalPagerScaffold et VerticalPagerScaffold pour désactiver les animations lorsque la réduction du mouvement est activée (Iaaf68).
  • Nous avons implémenté une animation distincte pour les indicateurs de progression circulaires lorsque la progression dépasse 100%. (I47135)
  • Nous avons corrigé un bug qui pouvait entraîner le dessin de EdgeButton avec une forme incorrecte dans les composants Pager (I91db9).

Version 1.0.0-alpha29

13 novembre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha29. La version 1.0.0-alpha29 contient ces commits.

Modifications apportées à l'API

  • Nous avons mis à jour TimeText pour fournir un contenu par défaut qui affiche l'heure. (Id23b3)
  • Nous avons simplifié ScrollInfoProvider pour PagerState en supprimant le paramètre orientation, qui n'est plus nécessaire. Le nouveau comportement consiste à laisser TimeText en place pour la pagination horizontale et verticale. (I71767)
  • LocalHapticFeedback fournit désormais une implémentation HapticFeedback par défaut lorsque l'API Vibrator indique que les retours haptiques sont compatibles. Les éléments suivants ont été ajoutés à HapticFeedbackType : Confirm, ContextClick, GestureEnd, GestureThresholdActivate, Reject, SegmentFrequentTick, SegmentTick, ToggleOn, ToggleOff et VirtualKey. Les composants Wear Compose à clic long tels que Button, IconButton, TextButton et Card effectuent désormais le retour haptique LONG_PRESS lorsqu'un gestionnaire de clic long a été fourni. (I5083d)

Correction de bugs

  • Nous avons modifié le mouvement pour les confirmations. (I04bff)
  • Nous avons mis à jour la dépendance d'API minimale à la version 1.7.4 pour les bibliothèques Compose. (I88b46)
  • Un nouveau mouvement a été ajouté pour la boîte de dialogue OpenOnPhone. (I1e10a)
  • Nous avons corrigé un bug dans LevelIndicator pour qu'il s'affiche correctement avec le niveau à zéro. (Ie95a4)
  • Nous avons mis à jour les animations HorizontalPageIndicator et VerticalPageIndicator. (I5c8f3)
  • Nous avons ajouté une animation de réduction à un point à l'ArcProgressIndicator indéterminé. (I9fd51)

Version 1.0.0-alpha28

30 octobre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha28. La version 1.0.0-alpha28 contient ces commits.

Modifications apportées à l'API

  • Nous avons ajouté une variation d'arc à l'indicateur de progression circulaire indéterminé (I2efc1).
  • Nous avons rendu publics les composables AlertDialogContent et Dialog qui constituent l'API AlertDialog afin qu'il soit possible d'ajouter des personnalisations si nécessaire (par exemple, en personnalisant l'animation AlertDialog tout en conservant la mise en page de contenu recommandée). De plus, nous avons ajouté des paramètres Modifier et Color aux membres EdgeButton, ConfirmButton et DismissButton de AlertDialogDefaults. (I4eb71)
  • Nous avons mis à jour l'API Placeholder comme suit: nous avons renommé PlaceholderState.startPlaceholderAnimation en PlaceholderState.animatePlaceholder, PlaceholderState.isShowContent en PlaceholderState.isHidden et PlaceholderDefaults.shape en PlaceholderDefaults.Shape ; nous avons renommé le paramètre painter dans painterWithPlaceholderOverlayBackgroundBrush en originalPainter ; nous avons modifié la visibilité de PlaceholderState.placeholderProgression de public en interne et l'avons renommé en placeholderShimmerProgression ; nous avons ajouté des constantes de durée d'animation d'espace réservé à PlaceholderDefaults. (Ie5a59)
  • Nous avons modifié l'API EdgeButton comme suit: nous avons renommé le paramètre bottomButton de ScreenScaffold en edgeButton et avons fait de EdgeButtonSize une classe de valeurs. (Ieef15)
  • Nous avons défini la visibilité de copy() sur "public" dans les classes de couleurs wear material3 (I0287f).

Correction de bugs

  • Ajout d'une durée d'animation minimale pour IconToggleButton et TextToggleButton lors d'un clic (Ieb333)
  • Ajout d'une durée minimale pour l'animation de forme IconButton et TextButton (Iebcee)
  • Correction de l'état de l'option de répétition de DatePicker. (I3587c)
  • Ajout de mouvements pour les boîtes de dialogue d'alerte et de confirmation. (I173b1)

Version 1.0.0-alpha27

16 octobre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha27. La version 1.0.0-alpha27 contient ces commits.

Modifications apportées à l'API

  • Nous avons mis à jour ScreenScaffold et ScrollIndicator après le changement de nom de Wear Compose Foundation LazyColumn en TransformingLazyColumn. (I0608b)
  • Le paramètre preferredHeight de EdgeButton a été renommé buttonSize. Sa valeur ne peut être choisie que parmi quatre constantes de la nouvelle classe de valeurs EdgeButtonSize. (Icdd70)
  • Nous avons remplacé le nom ListSubheader par ListSubHeader et ajouté des valeurs par défaut accessibles au public pour ListHeader et ListSubHeader. (I96730)
  • Nous avons ajouté de nouveaux composants HorizontalPagerScaffold et VerticalPagerScaffold pour Wear, qui fournissent de nouvelles animations et une coordination entre les composants de texte temporel et les composants d'indicateur de page. (Iff7d0)
  • Nous avons ajouté la compatibilité avec les dispositifs rotatifs à HorizontalPagerScaffold et VerticalPagerScaffold, ce qui permet aux utilisateurs de naviguer dans les télécopieurs à l'aide de dispositifs d'entrée rotatifs. (I9770d)
  • Nous avons apporté des modifications à l'API MotionScheme pour simplifier son utilisation et améliorer sa cohérence. Suppression des fonctions de mémorisation intégrées et déplacement des schémas de mouvement intégrés vers un objet associé MotionScheme dédié. Renommage de standardMotionScheme et expressiveMotionScheme en "standard" et "expressif". (I5fd45)
  • Nous avons ajouté la prise en charge d'un jeu de couleurs dynamique basé sur les couleurs système. (I073e9)
  • Nous avons mis à jour le composant Stepper pour qu'il respecte les dernières spécifications de l'expérience utilisateur. (I622bb)

Correction de bugs

  • Nous avons modifié la typographie et les marges des composants de carte. (I3ae48)
  • Nous avons modifié la marge intérieure dans AlertDialog entre les boutons "Confirm" (Confirmer)/"Dismiss" (Ignorer) et le reste du contenu de 8 dp à 12 dp, conformément aux spécifications de l'expérience utilisateur (Ie55f0).
  • Nous avons modifié l'opacité de la couleur du composant "Curseur". (Idb383)

Version 1.0.0-alpha26

2 octobre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha26. La version 1.0.0-alpha26 contient ces commits.

Modifications apportées à l'API

  • Nous avons mis à jour l'API et l'apparence de HorizontalPageIndicator, et ajouté VerticalPageIndicator à utiliser avec VerticalPager. (Ic9309)
  • AlertDialog permet désormais d'omettre le bouton inférieur par défaut de la variation de la pile de boutons, pour les mises en page personnalisées dans lesquelles EdgeButton n'est pas obligatoire. (I34fa9)
  • Ajout d'un composant SwipeToReveal pour Wear Material 3 (Ic38b2)
  • Nous avons ajouté la prise en charge du balayage bidirectionnel dans SwipeToReveal, pour les rares cas où l'écran actuel n'est pas compatible avec le balayage pour ignorer. Par défaut, le balayage pour afficher n'est toujours disponible que pour les balayages de droite à gauche. Nous vous recommandons vivement de respecter ce comportement par défaut pour éviter tout conflit avec le balayage pour fermer. (Ifac04)
  • Nous avons renommé le paramètre buttonHeight de EdgeButton en preferredHeight. (I4fab3)
  • La version Kotlin a été mise à jour vers la version 1.9 (I1a14c).
  • Nous avons renommé OpenOnPhoneDialogDefaults.Icon en OpenOnPhoneDialogDefaults.OpenOnPhoneIcon pour éviter tout conflit avec Icon. (I0f391)
  • Nous avons ajouté la prise en charge de ScrollIndicator dans LazyColumn. (Ia546a)
  • Nous avons mis à jour les valeurs par défaut de TextToggleButton et IconToggleButton. (I7aaa9)
  • Nous avons simplifié les API Picker et PickerGroup. (Id0653)
  • Nous avons ajouté CardDefaults.Shape et CardDefaults.Height, qui (étant des jetons) étaient autrement privés pour les développeurs qui utilisaient la bibliothèque. (I1594a, b/347649765)
  • Nous avons renommé le paramètre de progression de l'indicateur de progression circulaire segmenté binaire en segmentValue. (Ib72d9)
  • Nous avons mis à jour les couleurs et la mise en page du curseur. (Ic3eec)

Correction de bugs

  • Nous avons mis à jour l'animation de l'icône openOnPhone (I66f85).
  • Nous utilisons désormais les icônes Google Symbols dans Slider, TimePicker et DatePicker. (I46c7c)
  • Nous avons mis à jour les marges intérieures dans Confirmation et OpenOnPhoneDialog. (Iaa82e)

Version 1.0.0-alpha25

18 septembre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha25. La version 1.0.0-alpha25 contient ces commits.

Modifications apportées à l'API

  • Nous avons ajouté un indicateur de progression circulaire indéterminé. (I427a7)
  • Nous avons ajouté la prise en charge du débordement de progression (> 100 %) pour CircularProgressIndicator et SegmentedCircularProgressIndicator. Lorsque la progression dépasse 1,0, la nouvelle couleur overflowTrack s'affiche. (Iaaa3d)
  • Les boutons ronds IconToggleButton et TextToggleButton sont désormais compatibles avec une nouvelle variation d'animation de forme, dans laquelle différentes formes représentent les états "coché", "non coché" et "appuyé". La variation de forme animée précédente pour l'état "juste appuyé" est toujours prise en charge. (I29f03)
  • Nous avons supprimé la prise en charge de l'utilisation de EdgeButton avec Column, car il est nécessaire de spécifier explicitement la hauteur de EdgeButton dans ScreenScaffold. (Ie353d)
  • Nous avons ajouté la prise en charge de LazyColumn Wear Compose avec notre ScreenScaffold (et ajouté une implémentation de ScrollInfoProvider pour LazyColumnState). (Ib8d29)
  • Nous avons combiné LocalTextMaxLines, LocalTextAlign et LocalTextOverflow dans une seule composition locale LocalTextConfiguration pour proposer une solution plus évolutive à l'avenir. (I5edbc)
  • Nous avons ajouté arc-large comme échelle de type supplémentaire, réservée aux courtes chaînes de texte d'en-tête en haut ou en bas de l'écran, comme dans les superpositions de confirmation. (I60e3e)
  • Nous avons ajouté des valeurs par défaut au bouton pour les tailles d'icônes recommandées (grande et très grande) et la marge intérieure du contenu. (I84675)

Correction de bugs

  • Nous avons mis à jour les couleurs de IconButton et TextButton. (I48324)
  • Nous avons modifié les surcharges de base de Button pour qu'elles soient alignées verticalement au centre, afin de garantir la cohérence avec les autres surcharges. Pour rétablir le comportement précédent, utilisez Modifier.align à partir de RowScope. (I66e57)

Version 1.0.0-alpha24

4 septembre 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha24. La version 1.0.0-alpha24 contient ces commits.

Modifications apportées à l'API

  • Nous avons ajouté un schéma de mouvement au thème Material3. Les composants de la bibliothèque l'utiliseront pour appliquer des spécifications d'animation telles que des ressorts pour des mouvements expressifs. (I54ff3)
  • Nous avons ajouté des composants AppScaffold et ScreenScaffold à la bibliothèque Material3, qui incluent des fonctionnalités permettant de coordonner les superpositions et les transitions de TimeText et ScrollIndicator. AppScaffold fournit un niveau supérieur de composants d'échafaudage qui se trouvent au-dessus de tous les écrans. Par conséquent, ajouter TimeText à AppScaffold permet de le maintenir en place lorsque vous balayez l'écran pour passer d'un écran à un autre. Les écrans peuvent eux-mêmes remplacer ou masquer le texte de l'heure. ScreenScaffold fournit un emplacement pour ScrollIndicator et anime automatiquement l'indicateur de défilement lors du défilement, y compris un délai avant de masquer l'indicateur de défilement après une période d'inactivité. (I047d6)
  • Nous avons ajouté ScrollIndicator avec la nouvelle conception Material3. Il a une taille de curseur fixe en fonction du contenu initial de la liste, afin d'éviter les variations de taille lorsque le contenu paresseux est chargé dans la liste. (Ic228d)
  • Nous avons modifié l'API ScrollAway afin que ScreenStage soit une classe de valeurs plutôt qu'une classe d'énumération, afin de permettre d'ajouter des étapes supplémentaires si nécessaire à l'avenir. (I48c93)
  • Nous avons ajouté EdgeButton, un bouton spécifique à Wear dont la forme suit la courbure du bas de l'écran (I16369).
  • Nous avons ajouté un nouvel emplacement à ScreenScaffold pour un bouton en bas (comme EdgeButton), qui s'affiche et est redimensionné en fonction du contenu à faire défiler (I032eb).
  • Nous avons ajouté Modifier.scrollTransform et Modifier.targetMorphingHeight pour ajouter des effets de mouvement Material3 aux éléments de LazyColumn. (Ie229a)
  • Nous avons ajouté SegmentedCircularProgressIndicator comme variante de CircularProgressIndicator. La variation segmentée affiche une seule valeur de progression pour tous les segments ou indique si chaque segment est activé ou désactivé. (I6e059)
  • Nous avons ajouté LinearProgressIndicator comme alternative à CircularProgressIndicator. (I89182)
  • Nous avons ajouté AlertDialog, qui fournit des mises en page permettant de présenter des invites importantes à l'utilisateur. Des variantes sont incluses pour une paire de boutons de confirmation/refus ou un seul bouton en bas (généralement un bouton EdgeButton) sous une pile d'options. Les deux variantes comportent des emplacements pour l'icône, le titre et un texte supplémentaire pour fournir des informations supplémentaires. (Ieb873)
  • Nous avons ajouté OpenOnPhoneDialog, qui doit être utilisé pour indiquer une action qui se poursuivra sur le téléphone de l'utilisateur. OpenOnPhoneDialog est ignoré après un délai spécifié. (I978fd)
  • Nous avons ajouté Confirmation, un composant de boîte de dialogue qui comporte des emplacements pour une icône et du texte linéaire ou incurvé. Des variantes spécifiques sont fournies pour les messages de réussite/d'échec. Les confirmations sont automatiquement ignorées après un certain délai. (Ib43e8)
  • Nous avons ajouté un arrière-plan à TimeText pour atténuer les problèmes de superposition du contenu sous-jacent et de TimeText, qui masquaient l'heure. (Ia11fd)
  • Nous avons ajouté LevelIndicator, qui affiche la valeur d'un paramètre tel que le volume et peut être utilisé avec le composant Stepper existant pour créer un écran de volume. LevelIndicator est semblable à ScrollIndicator, mais s'affiche de l'autre côté de l'écran. Il présente une largeur de trait plus importante et une couleur d'indicateur différente par défaut. (I8a4ac)
  • Nous avons ajouté TimePicker, avec des mises en page pour le format 24 heures (avec ou sans secondes) ou le format 12 heures avec sélection du format AM/PM. (Ia5124)
  • Nous avons ajouté DatePicker, avec une configuration pour l'ordre des colonnes (par exemple, jour-mois-année, mois-jour-année ou année-mois-jour) et des dates min/max facultatives. (Ibf13b)
  • Nous avons ajouté un paramètre de pondération à la fonction text de TimeText. Si TimeText est composé de plusieurs éléments de texte, vous pouvez contrôler la distribution de l'espace. (I36700)
  • Nous avons ajouté RadioButton et SplitRadioButton. Ces composants simplifient l'API précédente en combinant à la fois (Split)SelectableButton et la commande radio enfant (If7ae8).
  • Nous avons ajouté CheckboxButton et SplitCheckboxButton. Ces composants simplifient l'API précédente en combinant à la fois (Split)ToggleButton et la commande de case à cocher enfant (Ia8f70).
  • Nous avons ajouté SwitchButton et SplitSwitchButton. Ces composants simplifient l'API précédente en combinant à la fois (Split)ToggleButton et le bouton d'activation/de désactivation enfant (I0d349).
  • Nous avons mis à jour la documentation sur AnimatedText pour expliquer le comportement de dépassement. (Iff30a)
  • Nous avons ajouté ButtonGroup pour combiner deux ou trois boutons afin que les pressions sur les boutons produisent une animation coordonnée. (Ie27db)
  • Nous avons ajouté une animation de forme facultative pour IconButton et TextButton lorsque vous appuyez dessus. (Iffca5)
  • Nous avons ajouté une variation de couleur supplémentaire, FilledVariant, à Button, IconButton, TextButton, CompactButton et EdgeButton (I65fc3).
  • Nous avons ajouté le paramètre forcedSize à ImageWithScrimPainter, de sorte que les arrière-plans d'image des boutons conservent désormais leur taille de composant par défaut. Définir forcedSize = null adopte plutôt Painter.instrinsicSize. (Ic57af)
  • Nous avons ajouté le clic prolongé aux boutons (Ib613d).
  • La prise en charge du clic long a également été ajoutée à IconButton et TextButton. (I38891)
  • La prise en charge du clic long a été ajoutée aux cartes. (I305d5)
  • Nous avons ajouté LocalTextMaxLines, LocalTextAlign et LocalTextOverflow en tant que CompositionLocals et les avons utilisés comme paramètres par défaut sur Text. Les variables locales de composition peuvent désormais être utilisées par des composants tels que CheckboxButton, SwitchButton et RadioButton pour implémenter des conseils d'expérience utilisateur, mais les développeurs peuvent remplacer les paramètres si nécessaire. (Iab841)
  • Nous avons ajouté Placeholder pour masquer le contenu de composants tels que les boutons et les cartes jusqu'à ce que les données soient chargées. (I1a532)
  • Nous avons ajouté IconToggleButtonColors et TextToggleButtonColors pour remplacer ToggleButtonColors, qui a été supprimé. (Ie0bf1)

Correction de bugs

  • Nous avons mis à jour Button, FilledTonalButton, OutlinedButton, ChildButton et CompactButton pour utiliser les nouveaux CompositionLocals LocalTextMaxLines, LocalTextAlign et LocalTextOverflow afin d'implémenter les consignes relatives à l'expérience utilisateur. Ces paramètres peuvent être ignorés par les développeurs sur le texte directement si nécessaire (Ie51f7)
  • Nous avons remplacé la largeur de trait par défaut de LevelIndicator par 6dp pour la différencier de ScrollIndicator, qui a une largeur de trait de 4dp. (If6f63)
  • Nous avons corrigé un problème dans TimeText afin que les angles de balayage plus importants soient acceptés. (Ie489f)
  • Correction d'un problème lors de la recomposition de EdgeButton. (I4cdca)
  • Correction des mises en page des boutons d'activation/de désactivation de la division lorsque la marge intérieure du contenu est personnalisée. (Ia33d3)
  • Les petites valeurs de progression sont arrondies à la hausse pour atteindre au moins la largeur de la ligne de l'indicateur de progression. (I3bd84)

Version 1.0.0-alpha23

14 mai 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha23. La version 1.0.0-alpha23 contient ces commits.

Modifications apportées à l'API

  • Nous avons mis à jour les API ToggleButton et RadioButton afin que les couleurs désactivées puissent être configurées. (If13a7)
  • Nous avons ajouté un nouveau CircularProgressIndicator pour Material3. (Ib3bd7)

Correction de bugs

  • Nous avons corrigé un bug qui entraînait l'annonce d'un double appui pour activer/désactiver les boutons sélectionnables alors qu'ils étaient déjà sélectionnés. (I7ed88)

Version 1.0.0-alpha22

1er mai 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha22. La version 1.0.0-alpha22 contient ces commits.

Modifications apportées à l'API

  • Nous avons mis à jour la ColorScheme Material3. (I7b2b8)
  • Nous avons mis à jour le bouton Material3. En plus de quelques modifications de couleur, la coche correspond désormais à celle utilisée pour la case à cocher. (Icac7b)

Correction de bugs

  • Mise à jour de toutes les démonstrations d'intégration pour utiliser le nouveau modificateur rotaryScrollable. (I25090)

Version 1.0.0-alpha21

17 avril 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha21. La version 1.0.0-alpha21 contient ces commits.

  • Cette version a été déclenchée en raison d'un problème technique dans la version précédente qui a entraîné des fichiers JAR sources manquants. Cette version ne contient aucun commit.

Version 1.0.0-alpha20

3 avril 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha20. La version 1.0.0-alpha20 contient ces commits.

Correction de bugs

  • Nous avons ajusté les alphas de l'état enfoncé et de l'état sélectionné de l'ondulation pour le contraste. (I59f0a)
  • Nous avons ajouté un espacement entre les libellés principaux et secondaires dans Button, ToggleButton et RadioButton, conformément aux dernières modifications apportées aux styles de typographie et aux hauteurs de ligne. (I2c0ba)

Version 1.0.0-alpha19

6 mars 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha19. La version 1.0.0-alpha19 contient ces commits.

Modifications apportées à l'API

  • Nous avons ajouté TimeText à la bibliothèque Wear Compose Material3. Ce composant affiche l'heure actuelle (et un état supplémentaire) en haut de l'écran. La nouvelle API Material3 concise évite la duplication entre le contenu linéaire et le contenu incurvé. (I4d7c3)
  • Nous avons remplacé le nom du paramètre onSelected par onSelect pour RadioButton. (I1a971)
  • Tokenisez RadioButton et SplitRadioButton, et refactorisez les méthodes existantes pour réduire la quantité de recherches CompositionLocal en ajoutant des instances mises en cache de couleurs et en rendant les méthodes de RadioButtonColors et SplitRadioButtonColors internes. (I02b33)

Version 1.0.0-alpha18

21 février 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha18. Liste des commits de la version 1.0.0-alpha18

Modifications apportées à l'API

  • Nous avons refactorisé le modèle par défaut pour CardColors, ToggleButtonColors et SplitToggleButtonColors en créant des instances mises en cache en interne et en réduisant l'utilisation de CompositionLocal. (If3fec)

Version 1.0.0-alpha17

7 février 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha17. Liste des commits de la version 1.0.0-alpha17

Modifications apportées à l'API

  • Nous avons mis à jour l'API Button pour qu'elle utilise buttonColors par défaut et supprimé le filledButtonColors en double. (I4fe3b)
  • Nous avons refactorisé les modèles par défaut pour ButtonColors, IconButtonColors et TextButtonColors en créant une instance mise en cache en interne et en réduisant l'utilisation de CompositionLocal. (I5f51c)
  • Nous avons supprimé les frais généraux de rememberUpdatedState dans les classes de couleurs spécifiques aux composants et marqué les méthodes d'accès dans les classes de couleurs comme internes. (If6571)

Correction de bugs

  • Nous avons mis à jour Modifier.minimumInteractiveComponentSize pour qu'il utilise Modifier.node. (Iba6b7)

Version 1.0.0-alpha16

24 janvier 2024

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha16. Liste des commits de la version 1.0.0-alpha16

Nouvelles fonctionnalités

  • Nous avons ajouté CompactButton, qui peut utiliser les mêmes couleurs de remplissage, de remplissage tonale et de contour que Button.(I05df0)

Modifications apportées à l'API

  • Nous avons ajouté RadioButton/SplitRadioButton en tant que conteneurs pour les commandes de sélection, telles que la commande Radio. Cette fonctionnalité diffère de l'ToggleButton existante en ce sens que RadioButton est sélectionnable (et fonctionne dans un groupe de sélection), tandis que ToggleButton peut être activé/désactivé (et est indépendant). (I61275)
  • Nous supprimons LocalContentAlpha de la bibliothèque Wear Compose Material3 pour assurer la cohérence avec la bibliothèque Compose Material3. (I49a0a)
  • Les composants Wear Material et Wear Material3 qui exposent un MutableInteractionSource dans leur API ont été mis à jour pour exposer désormais un MutableInteractionSource nullable qui est défini par défaut sur "null". Aucune modification sémantique n'est apportée ici: transmettre la valeur null signifie que vous ne souhaitez pas hisser l'MutableInteractionSource, et il sera créé dans le composant si nécessaire. La valeur nulle permet à certains composants de n'allouer jamais de MutableInteractionSource et à d'autres de ne créer une instance que de manière paresseuse lorsqu'ils en ont besoin, ce qui améliore les performances de ces composants. Si vous n'utilisez pas le MutableInteractionSource que vous transmettez à ces composants, nous vous recommandons de transmettre la valeur nulle à la place. Nous vous recommandons également d'apporter des modifications similaires dans vos propres composants. (Ib90fc, b/298048146)
  • Ajout d'une nouvelle API Ripple dans les bibliothèques wear:compose-material et wear:compose-material3, qui remplace l'API rememberRipple obsolète. Ajoute également un CompositionLocal temporaire, LocalUseFallbackRippleImplementation, pour rétablir l'utilisation des API rememberRipple/RippleTheme obsolètes dans les composants Material. Cette option sera supprimée dans la prochaine version stable. Elle n'est destinée qu'à faciliter la migration temporaire dans les cas où vous fournissez un RippleTheme personnalisé. Pour en savoir plus sur la migration et obtenir des informations supplémentaires sur ce changement, consultez developer.android.com. (af92b21)
  • Nous avons apporté quelques améliorations mineures à l'API HorizontalPageIndicator et à sa documentation. (I60efc)
  • Nous avons modifié ColorScheme pour qu'il soit immuable, ce qui rend les mises à jour de couleurs individuelles moins efficaces, mais améliore l'utilisation plus courante des couleurs. Cette modification est justifiée par le fait que la majorité des applications ne nécessitent pas de modifier des couleurs individuelles en tant que cas d'utilisation principal. Cela reste possible, mais la recomposition sera plus importante qu'auparavant. Nous réduisons ainsi considérablement le nombre d'abonnements d'état dans l'ensemble du code Material, ce qui aura un impact sur les coûts d'initialisation et d'exécution des cas d'utilisation plus standards. (Ibc2d6)
  • Mise à jour des API ToggleButton et SplitToggleButton pour permettre la personnalisation des couleurs désactivées. De plus, les jetons Material Design sont désormais utilisés pour les valeurs de couleur et de typographie. (If087c)
  • Mise à jour des couleurs d'arrière-plan des images de bouton pour utiliser des jetons Material Design. (Iba215)
  • Nous avons modifié les composants Checkbox, Switch et RadioButton pour qu'ils ne soient affichés que, en supprimant la gestion des clics. Ces composants sont censés être utilisés dans (Split)ToggleButton, qui gère le clic. Ils sont donc désormais indiqués plus clairement comme étant destinés à l'affichage uniquement (et ne sont pas destinés à être utilisés de manière autonome sur Wear). (I2322e)

Correction de bugs

  • Nous avons ajouté des jetons pour les valeurs de mouvement des durées et des assouplissements dans Wear Compose Material 3. (I437cd)
  • Nous avons corrigé un bug dans les ToggleButton, SplitToggleButton, Checkbox, Switch et RadioButton afin que les annonces d'accessibilité ne soient pas répétées (auparavant, les rôles sémantiques étaient dupliqués). (Ica281)
  • Nous avons supprimé la couche materialcore pour CompactButton afin d'améliorer les performances. (7902858)

Version 1.0.0-alpha15

15 novembre 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha15. Liste des commits de la version 1.0.0-alpha15

Modifications apportées à l'API

  • Nous avons renommé le niveau de base SwipeToDismissBox en BasicSwipeToDismissBox. Cela permet de distinguer plus clairement le composant de niveau Foundation et le SwipeToDismissBox de niveau Material3. Ce dernier extrait des couleurs de MaterialTheme à utiliser dans les écrans de masquage et délègue l'implémentation restante à BasicSwipeToDismissBox. (Ibecfc)

Correction de bugs

  • Nous avons supprimé la couche material-core pour le bouton Material3 afin d'améliorer les performances. (I55555)

Version 1.0.0-alpha14

18 octobre 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha14. Liste des commits de la version 1.0.0-alpha14

Modifications apportées à l'API

  • Nous avons supprimé le paramètre indicatorStyle de HorizontalPageIndicator Material3. À la place, il suivra la forme de l'écran de l'appareil (linéaire ou rond). (I83728)
  • Nous avons séparé les couleurs de SplitToggleButton de celles de ToggleButton en ajoutant une nouvelle classe SplitToggleButtonColors. (I78bee)

Version 1.0.0-alpha13

4 octobre 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha13. Liste des commits de la version 1.0.0-alpha13

Modifications apportées à l'API

  • Nous avons ajouté un champ "Sous-titre" facultatif à TitleCard. (Ifc45a)
  • Nous avons ajouté des jetons de couleur Material Design pour TextButton. (I769dc)

Version 1.0.0-alpha12

20 septembre 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha12. Liste des commits de la version 1.0.0-alpha12.

Modifications apportées à l'API

  • Nous avons mis à jour IconButton pour qu'il utilise des jetons Material Design. (I3f137)
  • Nous avons mis à jour IconToggleButton pour qu'il utilise des jetons Material Design. (I7d263)
  • Nous avons rendu publics les constructeurs de CheckboxColors, RadioButtonColors et SwitchColors. (I82b73)

Version 1.0.0-alpha11

6 septembre 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha11. Liste des commits de la version 1.0.0-alpha11.

Correction de bugs

  • Nous avons mis à jour la typographie des fiches Material3 pour la remplacer par TitleMedium. (I597bd)
  • Nous avons modifié la typographie et l'alignement de nos éléments Material 3 ListHeader et ListSubheader. (Ib5ceb)

Version 1.0.0-alpha10

23 août 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha10. Liste des commits de la version 1.0.0-alpha10

Nouvelles fonctionnalités

  • Ajoutez HorizontalPageIndicator dans la bibliothèque Wear Material3. (Ifee99)

Modifications apportées à l'API

  • Mettez à jour le code des boutons pour utiliser les jetons de conception Material3. (I92fe4)
  • Les API Wear Material 3 Stepper et Slider sont déclarées expérimentales, car les détails de l'interface utilisateur sont encore en cours de finalisation. (I84d54)
  • Nous avons supprimé les tailles ExtraSmall des TextButton et TextToggleButton arrondis, car cette taille ne s'applique qu'aux IconButton. (Ibc7d5)

Correction de bugs

  • Nous avons mis à jour les consignes sur la typographie pour TextToggleButton afin d'utiliser LabelLarge pour LargeButtonSize (Ib10fa).
  • Nous avons mis à jour les consignes sur la typographie pour TextButton afin d'utiliser LabelLarge pour LargeButtonSize (I8f3a7).
  • Nous avons défini la cible tactile minimale de la fiche sur 48 dp pour l'accessibilité. (Ieb9b1)
  • Ajout d'une démonstration de l'AppCard avec une image, suppression de la démonstration de l'AppCard avec un arrière-plan. (Id735f)
  • Correction d'un bug dans les boutons ronds où les modificateurs n'étaient pas correctement enchaînés. (I5e162)

Version 1.0.0-alpha09

9 août 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha09. Liste des commits de la version 1.0.0-alpha09

Nouvelles fonctionnalités

  • Ajout de ToggleButton pour Material 3 (I6bed6)

Modifications apportées à l'API

  • Nous avons activé l'annotation FloatRange en tant que contraintes d'API , qui étaient précédemment indiquées dans les commentaires. (Icb401)
  • Nous avons mis à jour la typographie de Wear Material3 pour qu'elle respecte les dernières consignes Material3. (I1bad6)

Correction de bugs

  • Nous avons mis à jour les couleurs de Button, IconButton et TextButton conformément à la conception Material 3. (Ib2495)
  • Nous avons corrigé la visibilité de la coche dans les états désactivés. (Ib25bf)

Version 1.0.0-alpha08

26 juillet 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha08. Liste des commits de la version 1.0.0-alpha08

Nouvelles fonctionnalités

  • Nous avons ajouté les commandes de sélection suivantes pour Material3 : Switch, Checkbox et RadioButton. (Ib918c)
  • Nous avons ajouté IconToggleButton et TextToggleButton à Material3, un bouton d'activation circulaire avec un seul emplacement pour l'icône et le texte, respectivement. Pour différentes tailles de ToggleButton, nous vous recommandons d'utiliser Modifier.touchTargetAwareSize avec les tailles fournies dans les boutons d'activation respectifs. (I9f015)
  • Nous avons ajouté ListHeader et ListSubheader à nos composants Material3. (Ibaefe)
  • Nous avons ajouté SwipeToDismissBox Material3, qui appelle le nouveau SwipeToDismissBox Foundation et fournit les valeurs de couleur par défaut de son thème. (I275fb)
  • Nous avons ajouté InlineSlider Material3 à Wear Compose. Il permet aux utilisateurs de faire un choix parmi une plage de valeurs. La plage de sélections s'affiche sous forme de barre entre les valeurs minimales et maximales de la plage. Les utilisateurs peuvent sélectionner une seule valeur. InlineSlider est idéal pour ajuster des paramètres tels que le volume ou la luminosité. (I7085f)

Modifications apportées à l'API

  • Nous avons mis à jour les formes du thème Wear Material 3 pour qu'elles utilisent RoundedCornerShape au lieu de Shape. (Idb133)
  • Nous avons rendu les constantes de hauteur du bouton publiques (Idbfde).
  • Mise à jour des fichiers API pour annoter la suppression de la compatibilité. (I8e87a, b/287516207)
  • Nous avons mis à jour InlineSliderColors dans Wear Compose Material 3 pour qu'il dispose d'un constructeur et de propriétés publics. (I6b632)
  • Nous avons mis à jour toutes les classes de couleurs de Wear Compose Material 3 pour qu'elles disposent de constructeurs et de propriétés publics. (I17702)
  • Nous avons rendu les constantes de marge intérieure horizontale et verticale de Button publiques. (Ieeaf7)

Correction de bugs

  • Le bouton ajuste désormais sa hauteur pour s'adapter au contenu qui a augmenté en raison de la taille des polices pour l'accessibilité, le cas échéant (Iaf302)
  • Nous avons mis à jour un certain nombre de démonstrations de boutons pour résoudre les problèmes d'accessibilité. (I61ce9)
  • Stepper et InlineSlider acceptent désormais les clics répétés lors d'un appui prolongé. Vous pouvez ainsi augmenter/diminuer rapidement la valeur de Stepper et InlineSlider en maintenant les boutons + ou - (I27359).

Version 1.0.0-alpha07

21 juin 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha07. Liste des commits de la version 1.0.0-alpha07

Nouvelles fonctionnalités

  • Nous avons ajouté le composant Stepper à notre bibliothèque Compose pour Wear OS Material 3. Il s'agit d'une fonctionnalité semblable à la version Material précédente, mais qui omet la sémantique de la plage par défaut, conformément aux commentaires des développeurs. Nous fournissons à Modifier.rangeSemantics les cas où la sémantique de plage est requise. (Ic39fd)
  • Nous avons ajouté curvedText à notre bibliothèque Compose pour Wear OS Material 3. (Ia8ae3)

Correction de bugs

  • Nous avons mis à jour wear.compose.foundation pour qu'il soit une dépendance d'API de wear.compose.material3. (I72004, b/285404743)

Version 1.0.0-alpha06

7 juin 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha06. Liste des commits de la version 1.0.0-alpha06

Correction de bugs

  • Nous avons mis à jour TextButton pour qu'il utilise la fonction d'extension toDisabledColor pour corriger les valeurs alpha désactivées. (I814c8)

Version 1.0.0-alpha05

24 mai 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha05. Liste des commits de la version 1.0.0-alpha05.

Nouvelles fonctionnalités

  • Nous avons ajouté TextButton à Material3, un bouton circulaire avec un seul emplacement pour le texte. Pour différentes tailles de TextButton, nous vous recommandons d'utiliser Modifier.touchTargetAwareSize et ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize et LargeButtonSizeIcon fournis dans TextButtonDefaults. La TextButton par défaut n'a pas de bordure et présente un arrière-plan transparent pour les actions à faible intensité. Pour les actions qui nécessitent une forte intensité, utilisez filledTextButtonColors. Pour une intensité moyenne, utilisez TextButton avec un contour. Pour un compromis entre le contour et le remplissage, utilisez filledTonalTextButtonColors.ButtonDefaults.outlinedButtonBorder (I667e4)
  • Nous avons ajouté Card, OutlinedCard, AppCard et TitleCard à la bibliothèque Wear Compose Material3. AppCard et TitleCard peuvent également être mis en surbrillance à l'aide de CardDefaults.outlinedCardColors et CardDefaults.outlinedCardBorder(I80e72).

Modifications apportées à l'API

  • Nous avons déplacé le paramètre de libellé du bouton à la fin pour prendre en charge la syntaxe lambda de fin et supprimé le paramètre de rôle (car il peut être remplacé à l'aide de Modifier.semantics). Les constructeurs ButtonColors sont désormais publics. (Ie1b6d)

Version 1.0.0-alpha04

10 mai 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha04. Liste des commits de la version 1.0.0-alpha04

Nouvelles fonctionnalités

  • Nous avons ajouté IconButton à Material3, un bouton circulaire avec un seul emplacement pour une icône/une image. Il existe quatre variantes: IconButton, FilledIconButton, FilledTonalIconButton et OutlinedIconButton. Pour différentes tailles de IconButton, nous vous recommandons d'utiliser Modifier.touchTargetAwareSize et ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize et LargeButtonSizeIcon fournis dans IconButtonDefaults. Nous fournissons également IconButtonDefaults.iconSizeFor pour déterminer la taille d'icône recommandée pour une taille de bouton donnée. (I721d4)

Version 1.0.0-alpha03

19 avril 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha03. Liste des commits de la version 1.0.0-alpha03

Modifications apportées à l'API

  • Nous avons ajouté le composant Bouton Material 3. Il s'agit de notre bouton en forme de stade, qui s'appelait auparavant Chip dans la bibliothèque Material de Compose Wear (il a été renommé "Bouton" pour plus de cohérence avec la bibliothèque Material 3 de Compose). Le bouton par défaut a un arrière-plan rempli. Il existe des variantes de boutons pour FilledTonal (arrière-plan atténué), "Outlined" (transparent avec une bordure fine) et "Child" (arrière-plan transparent et sans bordure, utilisé pour les actions supplémentaires les moins visibles). Les boutons ronds pour le contenu d'icônes et de texte simples seront disponibles dans une prochaine version.(Ia6942)

Version 1.0.0-alpha02

5 avril 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha02. Liste des commits de la version 1.0.0-alpha02.

Correction de bugs

Version 1.0.0-alpha01

22 mars 2023

Publication d'androidx.wear.compose:compose-material3:1.0.0-alpha01. Liste des commits de la version 1.0.0-alpha01

Nouvelles fonctionnalités

  • Material 3 est la nouvelle évolution de Material Design. Il comprend une thématisation mise à jour et des composants repensés. Material 3 sur Wear Compose est conçu pour être cohérent avec la bibliothèque Compose Material 3 sur Android. Cette première version alpha contient les premières implémentations fonctionnelles des éléments suivants :

    • Thème Material : configure le schéma de couleurs, la typographie et les formes de manière cohérente pour tous les composants de la bibliothèque. Le thème Material3 a révisé ses couleurs pour qu'elles soient compatibles avec le contraste accessible. (I84005)
    • Texte/Icône : composants pour les applications Wear Compose (I8e06a)
  • Nous continuerons de développer Wear Material (androidx.wear.compose:compose-material) et Wear Material 3 (androidx.wear.compose:compose-material3) en parallèle. Les prochaines versions de Material3 incluront d'autres composants familiers de Compose pour Wear OS, tels que les boutons, les sélecteurs et les curseurs.

  • Les bibliothèques Wear Material et Wear Material 3 sont mutuellement exclusives et ne doivent pas être mélangées dans la même application, principalement parce qu'elles font référence à des thèmes différents, ce qui entraînerait des incohérences inattendues.