Compose Material 3
androidx.compose.material3
(Voir la documentation de référence de l'API pour tous les packages Compose)
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
2 juillet 2025 | 1.3.2 | - | - | 1.4.0-alpha17 |
Structure
Compose est une combinaison de sept identifiants de groupe Maven dans androidx
. chacun contenant un sous-ensemble ciblé de fonctionnalités. Chaque sous-ensemble est associé à son propre ensemble de notes de version.
Ce tableau décrit les différents groupes et renvoie à chaque ensemble de notes de version.
Groupe | Description |
---|---|
compose.animation | Créer des animations dans les applications Jetpack Compose afin d'enrichir l'expérience utilisateur. |
compose.compiler | Transformation de fonctions @Composable et prise en charge des optimisations avec un plug-in de compilation en Kotlin. |
compose.foundation | Conception d'applications Jetpack Compose avec des composants prêts à l'emploi et extension de la base pour créer vos propres éléments de système de conception. |
compose.material | Création d'UI Jetpack Compose avec des composants Material Design prêts à l'emploi. Il s'agit du point d'entrée de niveau supérieur de Compose, conçu pour fournir des composants qui correspondent à ceux décrits sur www.material.io. |
compose.material3 | Création d'UI Jetpack Compose grâce aux composants Material Design 3, la nouvelle évolution de Material Design. Material 3 inclut des thématisations et des composants mis à jour ainsi que des fonctionnalités de personnalisation Material You telles que les couleurs dynamiques. Material 3 est conçu pour correspondre au nouveau style visuel et à l'UI du système Android 12. |
compose.runtime | Composants fondamentaux du modèle de programmation et de la gestion d'état de Compose, et environnement d'exécution principal du plug-in Compose Compiler à cibler. |
compose.ui | Composants fondamentaux de l'interface utilisateur de Compose nécessaires pour interagir avec l'appareil, y compris la mise en page, le dessin et la saisie. |
Déclarer des dépendances
Pour ajouter une dépendance sur Compose, 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.compose.material3:material3:1.3.2" implementation "androidx.compose.material3:material3-window-size-class:1.3.2" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha17" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.2") implementation("androidx.compose.material3:material3-window-size-class:1.3.2") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha17") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
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.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Compose Material3 Common version 1.0
Version 1.0.0-alpha01
17 avril 2024
Publication d'androidx.compose.material3:material3-common:1.0.0-alpha01
, androidx.compose.material3:material3-common-android:1.0.0-alpha01
et androidx.compose.material3:material3-common-desktop:1.0.0-alpha01
. La version 1.0.0-alpha01 contient ces commits.
Nouvelles fonctionnalités
Composants sans thème pouvant être utilisés pour créer des composants Material Design :
- Palette tonale
- Icône
- Taille des cibles tactiles
Compose Material3 Adaptive Navigation Suite version 1.0
Version 1.0.0-alpha07
1er mai 2024
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
et androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
. La version 1.0.0-alpha07 contient ces commits.
Modifications apportées à l'API
- Rendre les API de la suite de navigation non expérimentales (If62af)
Correction de bugs
- Consommer les encarts pour le contenu par défaut (50266df)
Version 1.0.0-alpha06
17 avril 2024
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
et androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
. La version 1.0.0-alpha06 contient ces commits.
Modifications apportées à l'API
- Ajoutez
containerColor
etcontentColor
àNavigationSuiteScaffoldDefaults
. (I64e3a, b/331993720) - Ajout de la fonction
itemColors
àNavigationSuiteDefaults
. (Idf719, b/328480012) - Rendez
NavigationSuiteScope
scellé. (Iefa57)
Version 1.0.0-alpha05
6 mars 2024
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
et androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
. La version 1.0.0-alpha05 contient ces commits.
Modifications apportées à l'API
- Rendez le constructeur
NavigationSuiteItemColors
public. (Ica83a, b/324886877)
Version 1.0.0-alpha04
21 février 2024
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
et androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
. Liste des commits de la version 1.0.0-alpha04
Mises à jour des dépendances
- Mettez à jour les dépendances adaptatives Material3 vers les nouveaux chemins de module. (Ibc421)
- Migrez pour utiliser la version Window Manager des classes de taille de fenêtre. (I3794d)
Version 1.0.0-alpha03
7 février 2024
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
et androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
. Liste des commits de la version 1.0.0-alpha03
Modifications apportées à l'API
- Mise à jour du nom du package de navigation-suite à navigationsuite (I7eff7)
- Les composants Material3 exposant un
MutableInteractionSource
dans leur API ont été mis à jour pour exposer désormais unMutableInteractionSource
pouvant être nul, qui est nul par défaut. Il n'y a pas de changement sémantique ici : transmettre une valeur nulle signifie que vous ne souhaitez pas hisser leMutableInteractionSource
, et il sera créé à l'intérieur du composant si nécessaire. Le passage à la valeur nulle permet à certains composants de ne jamais allouer deMutableInteractionSource
et à d'autres de ne créer une instance que lorsqu'ils en ont besoin, ce qui améliore les performances de ces composants. Si vous n'utilisez pas leMutableInteractionSource
que vous transmettez à ces composants, nous vous recommandons de transmettre plutôt la valeur "null". Nous vous recommandons également d'apporter des modifications similaires à vos propres composants. (I41abb, b/298048146)
Version 1.0.0-alpha02
13 décembre 2023
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
et androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
. Liste des commits de la version 1.0.0-alpha02
Nouvelles fonctionnalités
- Ajout d'un
NavigationSuiteType
"Aucun" (If8cb1, b/313688598)
Correction de bugs
- Correction du composant de navigation qui remplit tout l'écran lorsque la surface racine comporte
modifier.fillMaxSize
. (c9cf250, b/312664933)
Version 1.0.0-alpha01
15 novembre 2023
Publication d'androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01
. Liste des commits de la version 1.0.0-alpha01
Nouvelles fonctionnalités
Compose Material3 Adaptive version 1.0
Version 1.0.0-alpha06
7 février 2024
Publication d'androidx.compose.material3:material3-adaptive:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
et androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
. Liste des commits de la version 1.0.0-alpha06.
Nouvelles fonctionnalités
- Ajout d'options de comportement supplémentaires pour la navigation vers l'arrière
ThreePaneScaffoldNavigator
. (I858aa) - Ajout de contenu de destination facultatif à l'historique de navigation. (Ibd7e6)
Version 1.0.0-alpha05
24 janvier 2024
Publication d'androidx.compose.material3:material3-adaptive:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
et androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05
. Liste des commits de la version 1.0.0-alpha05
Nouvelles fonctionnalités
- Prise en charge de la prise en compte de l'historique dans la navigation et le calcul des valeurs du scaffold (I71d46)
Version 1.0.0-alpha04
10 janvier 2024
Publication d'androidx.compose.material3:material3-adaptive:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
et androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
. Liste des commits de la version 1.0.0-alpha04
Nouvelles fonctionnalités
- Ajout de la prise en charge bord à bord dans les échafaudages de volets (I1b462)
Modifications apportées à l'API
- Déplacement des propriétés des limites de la charnière dans Posture vers une liste d'informations sur la charnière (I24f90)
Correction de bugs
- Correction de
AnimatedPane
qui n'est pas recomposé (c3f573d)
Version 1.0.0-alpha03
13 décembre 2023
Publication d'androidx.compose.material3:material3-adaptive:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
et androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
. Liste des commits de la version 1.0.0-alpha03
Modifications apportées à l'API
- Remplacez les rôles de structure par des alias de
ThreePaneScaffoldRole
. (I65bd1) - Créer une classe de base pour les rôles de scaffold (I4784d)
- Supprimer le paramètre inutile du contenu de
AnimatedPane
(Ibc73b) - Renommage de
collectWindowSizeAsState
et renvoi des valeurs brutes à la place (I480f4)
Version 1.0.0-alpha02
29 novembre 2023
Publication d'androidx.compose.material3:material3-adaptive:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
et androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
. Liste des commits de la version 1.0.0-alpha02
Modifications apportées à l'API
- Séparation des API de navigation des API de canevas adaptatif. (Ic4045)
- Supprimer le cours
GutterSize
. (I785b3)
Correction de bugs
- Correction du problème de non-bascule des volets lorsque
AnimatedPane
n'est pas utilisé (d88f181)
Version 1.0.0-alpha01
15 novembre 2023
Publication d'androidx.compose.material3:material3-adaptive:1.0.0-alpha01
. Liste des commits de la version 1.0.0-alpha01
Nouvelles fonctionnalités
API de condition adaptative Material3 :
API de directives pour le scaffold de volet adaptatif Material3 :
API de structure de volet adaptatif Material3 :
- API de base pour la structure du volet
Compose Material3 version 1.4
Version 1.4.0-alpha17
2 juillet 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha17
. La version 1.4.0-alpha17 contient ces commits.
Nouvelles fonctionnalités
- Mise à jour de l'animation du groupe de boutons pour qu'elle atteigne 75 % de l'animation lorsqu'un utilisateur clique dessus au lieu d'appuyer dessus. (593942a, b/423596967)
Correction de bugs
- Correction d'un problème qui pouvait entraîner, dans certains cas, le dépassement de la taille des grands éléments par un élément de carrousel lors des calculs de mise en page, ce qui coupait l'intégralité du widget. (I1c3d7, b/397489534)
- Correction du saut au-delà de
beforeContentPadding
lors du défilement de carrousels avec des décalages de début et de fin qui se chevauchaient. (c3d5f3a, b/420618979) - Mettez à jour le comportement activé de
SwipeToDismiss
pour observer l'état défini au lieu de l'état actuel. Restaure le comportement existant où le comportement d'ancrage n'est désactivé que lorsque le composant est dans un état fermé. (3844e07, b/425006844) - Le menu pop-up de
ExposedDropdownMenu
peut désormais être ouvert à l'aide du clavier. Correction : le menu est désormais accessible au clavier pour la variante modifiable. (46ead03)
Version 1.4.0-alpha16
18 juin 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha16
. La version 1.4.0-alpha16 contient ces commits.
Nouvelles fonctionnalités
- Ajout d'un composant de carrousel principal centré (I6f6d3)
Modifications apportées à l'API
- Implémenter la barre d'outils verticale des remplacements XR (Ia1604)
- Ajout de fonctions de défilement programmatique à
CarouselState
(I12f8e) - Ajout de
ComponentOverride
pourModalWideNavigationRail
(I4f440) - Ajout de
ComponentOverride
pourWideNavigationRail
(I6354f) - Créer
ComponentOverride
pourHorizontalFloatingToolbar
(I51116) - Créer
ComponentOverride
pourShortNavigationBar
(I30e24) - Les références
SwipeToDismissBoxState
àconfirmValueChange
ont été marquées comme obsolètes. Les utilisateurs doivent plutôt utiliser le rappelonDismissed
de l'APISwipeToDismissBox
. (Iee780) - Ajout du paramètre userScrollEnabled aux composables Carousel. (I1d4d2)
- Les
currentItem
du carrousel peuvent désormais être observés depuisCarouselState
. (Ie87e9)
Correction de bugs
- Correction d'un problème qui empêchait l'application correcte de l'ombre d'une forme arbitraire sur un FAB transmis à un
FloatingToolbar
. (Icdcc9, b/423336922) - Tous les carrousels utilisent désormais le rôle sémantique "Carrousel" par défaut. (I7af12)
- Correction du mouvement incorrect du pouce lorsque l'état du curseur était mis à jour via
LaunchedEffect
(Id9f31, b/302774166)
Version 1.4.0-alpha15
20 mai 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha15
. La version 1.4.0-alpha15 contient ces commits.
Modifications apportées à l'API
- Ajout de
MotionTheme.LocalMotionScheme
, composition locale. Cela permet d'accéder au schéma de mouvement du thème à partir deCompositionLocalConsumerModifierNodes
, aveccurrentValueOf(MotionTheme.LocalMotionScheme)
. (I014b1) - Abandon du constructeur
ColorScheme
sans rôles de couleur fixe. Veuillez migrer vers le constructeur qui inclut des rôles fixes. (Iad0ee) - Le composant de texte M3 est désormais compatible avec
TextAutoSize
. (I7f524) - Ajoutez une API pour créer des variantes de taille de bouton fractionné et ajoutez des exemples. (Ice30b)
Correction de bugs
- Correction d'un problème qui entraînait un positionnement incorrect de
Snackbar
etFloatingActionButton
lorsque le mode bord à bord était activé. Scaffold applique désormais correctement les encarts horizontaux à ces composants. (Ib7c30, b/244400727) - Corrigez le mouvement
BottomSheet
de l'état entièrement développé à l'état partiellement développé.BottomSheet
utilise désormais l'effet rapide deMotionScheme
lors de l'opération de masquage ou de réduction, et l'effet spatial par défaut lors de l'opération de développement. (Ifa46f, b/416063171) - Le constructeur
ColorScheme
sans rôles de conteneur de surface a été marqué comme masqué et n'est plus recommandé. (Ia7237) - Suppression d'une exigence
CircularWavyProgressIndicator
Size.minDimension > 0
, qui générait auparavant une exception, pour plus de flexibilité. (Ic9418, b/377531195) - Les liens hypertexte dans
Text(AnnotatedString)
sont désormais stylisés avec Material par défaut. (I78288, b/339843816) - Correction d'un problème où la fonction
toShape()
dansRoundedPolygon
mettait en cache un chemin d'accès et provoquait un problème lorsque plusieurs appelscreateOutline
étaient effectués avec des tailles différentes. (I4026d)
Version 1.4.0-alpha14
7 mai 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha14
. La version 1.4.0-alpha14 contient ces commits.
Modifications apportées à l'API
- Ajout d'un nouveau composable
AppBarColumn
fonctionnant de la même manière queAppBarRow
, mais pour le contenu disposé dans une colonne. (Iaf6bd) - Ajout du nombre maximal d'éléments à
AppBarRow
. Cette opération est nécessaire pour implémenter correctement la spécification Material pour les barres d'application supérieures. (I92ce4) - Ajout d'une méthode dans
TooltipScope
pour obtenir lelayoutCoordinates
de l'ancrage. La méthodedrawCaret
est obsolète, car les développeurs peuvent utiliser cette nouvelle méthode pour obtenir les limites d'ancragelayoutCoordinates
et créer une forme appropriée contenant un caret. (Ia2e12, b/329470609) - Ajout de la prise en charge de
java.time
pour les sélecteurs de date : ajout de surchargesrememberDatePickerState/rememberDateRangePickerState
qui acceptent les objets java.time (par exemple,LocalDate
initial,YearMonth
). Ajout également de fonctions d'extension sur les objets d'état pour obtenir/définir des valeurs à l'aide de types tels queLocalDate
etYearMonth
. Nécessite l'API 26 ou une version ultérieure, ou le desugaring. (I70f29, b/266202516, b/281859606) - Ajoutez un composable
CenteredTrack
permettant d'utiliser un curseur avec une piste qui commence au centre. (I5b1d6)
Correction de bugs
- Amélioration des performances des indicateurs de progression ondulés : les types linéaires se chargent désormais environ 8,5 % plus rapidement avec environ 11 % d'allocations en moins, tandis que les types circulaires bénéficient d'un gain de vitesse considérable d'environ 47 % et d'une réduction des allocations d'environ 39 %. (I595d8)
Version 1.4.0-alpha13
23 avril 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha13
. La version 1.4.0-alpha13 contient ces commits.
Modifications apportées à l'API
- Réintroduction de
isAppearanceLightStatusBars
etisAppearanceLightNavigationBars
dansModalBottomSheetProperties
en tant que paramètres Android uniquement. (Id4bc0) - Ajoutez un composable
AppBarRow
qui gère le débordement des éléments qui dépassent ses limites. (I742bd) - Mettez à jour les API
DatePicker
etDateRangePicker
pour demander la sélection lors du passage à un mode de saisie de date. Nous avons remplacé le paramètre booléenrequestFocus
par un paramètrefocusRequester
facultatif qui accepte unFocusRequester
. (I14b69) - Supprimez le modificateur et la source d'interaction des éléments cliquables et activables par défaut. Faites-en plutôt un détail d'implémentation. (I95ed6)
- Mise à jour de
ButtonGroup
pour qu'il se déverse dans un menu déroulant lorsqu'il y a trop de boutons pour tenir sur l'écran. (I7b88b)
Correction de bugs
- La feuille inférieure consomme désormais les encarts supérieurs lorsqu'elle est plus petite que le décalage actuel. Cela permet aux utilisateurs de fournir des encarts supérieurs pour le comportement développé.
BottomSheetDefaults.windowInsets
inclut désormaisWindowInsets.safeDrawing.Top
. (I0ab67, b/321877275, b/336962418, b/342093067) - Animations d'entrée/sortie (fondu/glissement) activées pour les icônes/avatars de début et de fin des chips lorsqu'ils sont ajoutés ou supprimés. Cela profite principalement aux chips sélectionnables (filtre, saisie), mais s'applique de manière générale. (I9af21)
- Correction du comportement incorrect du curseur RTL causé par
LookaheadScope
. (Ieb152, b/408118041) - Correction du plantage de Bottom
AppBar
lié au défilement avec une interface utilisateur système masquée. (Ic6140, b/405996228)
Version 1.4.0-alpha12
9 avril 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha12
. La version 1.4.0-alpha12 contient ces commits.
Modifications apportées à l'API
- Suppression des paramètres spécifiques à Android de
ModalBottomSheetProperties
(Iab97f, b/362539765) - Introduction de fonctions de surcharge pour les valeurs par défaut de la taille de la poignée de déplacement (I0ed0d)
- Ajoutez de nouvelles fonctions
NavigationSuiteScaffold
etNavigationSuiteScaffoldLayout
pour prendre en charge les nouveaux types de mise en page et ajouter la prise en charge d'un contenu d'action principale facultatif. (Ib262a, b/353144478) - Obsolète
Modifier.weight
avec le paramètre de remplissage dansButtonGroup
. Ajouter une version sans remplissage. (Id32bb) - Renommez les valeurs par défaut du composant IconButton
xSmall-
etxLarge-
pour épelerextra
. (Ib6e0f) - Ajoutez de nouvelles fonctions
NavigationSuite
,NavigationSuiteItem
etNavigationSuiteColors
pour prendre en charge de nouveaux types de mise en page. (I203d6) - Ajoutez une fonction
NavigationSuiteTypes
et une fonctionnavigationSuiteType
qui incluent ces choix de mise en page (If68f9).
Correction de bugs
ColorScheme.contentColorFor
mappe désormaissurfaceDim
àonSurface
. (I8891a)- Mise à jour de l'implémentation de
DateInputTextField
pour résoudre un problème qui empêchait le champ de saisie de refléter la date définie par programmation. (I6c8d1, b/401143451) - Correction de l'ordre de sélection TalkBack pour le rail de navigation et le rail de navigation large (I6cf6f, b/407048224).
Version 1.4.0-alpha11
26 mars 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha11
. La version 1.4.0-alpha11 contient ces commits.
Modifications apportées à l'API
- Mise à jour de la typographie des propriétés composables dans les objets par défaut pour le bouton et le bouton bascule. Ajoutez des méthodes dans
ToggleButtonDefaults
etButtonDefaults
pour le contenu recommandé (marge intérieure, formes, taille des icônes, espacement des icônes et style de texte) en fonction de la hauteur du conteneur. (Iea69e) - Suppression des fonctions et constantes expérimentales obsolètes de
FloatingToolbar
. (I8f339) - Les composants d'élévation partagent désormais une interface commune et disposent de constructeurs et de propriétés publics. (Ibb172)
- Ajout du modificateur
animateWidth
dansButtonGroupScope
, qui devra être utilisé avec les enfants du groupe de boutons pour animer correctement les enfants. (Ia3bb6)
Correction de bugs
- Correction de la marge intérieure de la barre d'outils flottante pour assurer un équilibre visuel lors de la réduction et améliorer la flexibilité pour les contenus plus volumineux. (I06c00)
Version 1.4.0-alpha10
12 mars 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha10
. La version 1.4.0-alpha10 contient ces commits.
Modifications apportées à l'API
TabRowDefaults.tabIndicatorOffset
a été abandonné au profit deTabIndicatorScope.tabIndicatorOffset
. (Ib36b3)- Correction d'une faute de frappe pour la petite marge intérieure du contenu dans les valeurs par défaut des boutons. (I19bfe)
TabRow
etScrollableTabRow
sont obsolètes et remplacés par les variantes principales et secondaires de chacun. Les lignes des onglets "Principal" et "Secondaire" sont plus performantes et plus conformes aux spécifications. (I918e2)- Ajout de
rememberSliderState
et derememberRangeSliderState
. (I8e384) - Ajout de
shouldAutoSnap
àSliderState
pour contrôler le mécanisme d'accrochage automatique. La désactivation peut être utile pour les animations personnalisées. (I07745) - La largeur minimale des onglets d'une ligne d'onglets défilable est désormais un paramètre. Les variantes de ligne d'onglets principaux et secondaires ne sont plus expérimentales. (If6f15, b/226665301)
- La classe
ExitAlwaysFloatingToolbarScrollBehavior
a été rendue publique, ce qui permet la création sans composition. (Ibf31c)
Version 1.4.0-alpha09
26 février 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha09
. La version 1.4.0-alpha09 contient ces commits.
Modifications apportées à l'API
- Renommer les champs de paramètres de
DragHandle
dans l'état par défaut ; séparer les états appuyé et déplacé ; rendre les tailles par défaut publiques. (I787b9) - Mises à jour de l'API
TowRowsTopAppBar
. Suppression du paramètre lambdaexpanded
et ajout de paramètres distincts pour les hauteurs développée et réduite. (Idd677, b/306697446, b/229134133, b/268068946)
Correction de bugs
- Les barres d'application inférieures observent désormais le service d'exploration tactile (par exemple,
TalkBack
) et les garder visibles chaque fois que le service est activé. (I4b34d)
Version 1.4.0-alpha08
12 février 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha08
. La version 1.4.0-alpha08 contient ces commits.
Nouvelles fonctionnalités
Ajout d'une API
TimePickerDialog
pouvant être utilisée pourTimePicker
,TimeInput
ou pour disposer d'une version commutable. (Id2d83)Nouvelles API de barre de recherche :
- Les barres de recherche réduites et les "vues" de recherche développées sont désormais des composables distincts.
SearchBar
représente une barre de recherche à l'état réduit.ExpandedFullScreenSearchBar
etExpandedDockedSearchBar
représentent la barre de recherche dans son état développé. Ils s'ouvrent dans une nouvelle fenêtre.SearchBarState
pour contrôler l'état de la barre de rechercheTopSearchBar
pour ajouter la gestion des encarts et le comportement de défilement- Nouvelle surcharge de
InputField
qui utiliseSearchBarState
(Ie0723, b/261496232, b/283311462, b/350916229, b/352872248)
Modifications apportées à l'API
- Prise en charge de la morphose de la forme d'angle des boutons d'icône lors de l'appui. (I21843)
- Les API de boîte de décoration/décorateur de champ de texte ne sont plus expérimentales. (I31d95)
- Ajout d'exemples et de valeurs par défaut pour la variante connectée de
ButtonGroup
. (I5c8ce) - Faites en sorte que le paramètre d'état soit le dernier dans
NavigationSuiteScaffold
etNavigationSuiteScaffoldLayout
. (I9cc7b)
Correction de bugs
- Ajout d'actions d'accessibilité personnalisées à
FloatingToolbars
afin que les services d'accessibilité puissent désormais développer ou réduire toutes les variantes deFloatingToolbar
. La version avec bouton d'action flottant l'applique au bouton d'action flottant, tandis que la version sans bouton d'action flottant l'applique au contenu principal. (I26420) - Les
FloatingToolbars
observent désormais le service d'exploration tactile (par exemple, TalkBack) et de laisser la barre d'outils développée et visible chaque fois que le service est activé. (I02172) - Correction d'un plantage au niveau des indicateurs de progression et de chargement lorsqu'un
Float.NaN
est transmis en tant que progression. (I4fa96, b/352364576)
Version 1.4.0-alpha07
29 janvier 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha07
. La version 1.4.0-alpha07 contient ces commits.
Nouvelles fonctionnalités
- Ajout d'une nouvelle API pour personnaliser plus facilement l'apparence des cases à cocher. Cette API fournit des paramètres de trait qui permettent de mieux contrôler la façon dont la coche et le contour de la case à cocher sont affichés. (I65a88)
- Ajout de l'API
TwoRowsTopAppBar
, une alternative plus personnalisable aux barres d'application moyennes et grandes pour créer des barres d'application supérieures sur deux lignes. Les développeurs peuvent désormais contrôler le contenu des titres et des sous-titres dans les états réduit et développé, avec des hauteurs personnalisables pour chaque état. (I0be3c, b/306697446, b/229134133, b/268068946)
Modifications apportées à l'API
- Renommage d'une variante expérimentale
BottomAppBar
enFlexibleBottomAppBar
, offrant plus de contrôle sur la disposition et la hauteur du contenu. (Iaa448) - Renommez les propriétés de l'objet par défaut du groupe de boutons en
CapitalCase
. Mise à jour du nom deanimateFraction
pour qu'il reflète plus précisément le comportement qu'il représente. (I545cd) - Ajout de surcharges pour les boutons courants qui permettent d'animer les formes lors de l'interaction par pression. Ajout de formes de boutons mises en cache. (I5ec20)
- Vous pouvez désormais contrôler la façon dont un
FloatingToolbar
avec FAB réagit au défilement en fournissant unFloatingToolbarScrollBehavior
. Pour les barres d'outils positionnées le long d'un bord central (comme en haut ou en bas au centre), nous vous recommandons d'utiliser un comportement de défilement pour masquer l'intégralité du composant lors du défilement, afin d'obtenir un aspect plus épuré. Cela empêche également le FAB de se décentrer, ce qui pourrait se produire lors de l'utilisation de l'indicateurexpanded
pour la réduction. (I33f67) - Mise à jour des API expérimentales
TopAppBar
pour utiliserAlignment.Horizontal
au lieu d'unTopAppBarTitleAlignment
personnalisé lors de la définition de l'alignement du titre et du sous-titre. (I70ca2) SliderState#onValueChange
est désormais public pour donner plus de contrôle à l'utilisateur (I104eb)- Ajout de
NavigationSuiteScaffoldState
pour permettre l'animation du composant de navigation. Ajout de surcharges deNavigationSuiteScaffold
etNavigationSuiteScaffoldLayout
avec un paramètre d'état. (I6a8c9, b/328674235)
Correction de bugs
- Déplacez les classes
IconButtonColors
etIconToggleButtonColors
deIconButtonDefaults.kt
versIconButton.kt
. (I3c233)
Contribution externe
SliderState#isDragging
est désormais public. (I8458a)
Version 1.4.0-alpha06
15 janvier 2025
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha06
. La version 1.4.0-alpha06 contient ces commits.
Nouveau comportement
- Ajout de
displayCutout
au groupe d'encarts que les composants Material prennent en compte par défaut, afin d'éviter que le contenu ne se chevauche avec l'encoche. Il s'agit d'un changement de comportement qui aura une incidence sur la façon dont les composants compatibles avec les encarts se comportent autour d'une encoche. Cela inclut la valeur par défaut du paramètreWindowInsets
pour les composants Material 3 compatibles avec les encarts, ainsi que les valeursWindowInsets
fournies dans les objets "Defaults" des composants pour Material 2 et Material 3. Si cette modification entraîne un comportement indésirable, spécifiez manuellement le paramètreWindowInsets
pour chaque composant. (I43ee9, b/362508045)
Modifications apportées à l'API
- Mises à jour de l'API
TopAppBar
. Renommez les barres d'application supérieures moyennes et grandes avec un sous-titre en*FlexibleTopAppBar
. Unification des variations de couleur dans une seule fonctionTopAppBarDefault.topAppBarColors()
et ajout d'un paramètre de couleursubtitle
à appliquer pour un composable de sous-titre fourni (I41b65) - Suppression de l'API
WideNavigationRailArrangement
au profit deArrangement.Vertical
(Id0341) - Ajoutez un
VerticalSlider @Composable
. (I2bfba) - Ajoutez une nouvelle piste
@Composable
qui permet de spécifier des coins et des icônes de piste externes personnalisés. (I436a4) - Mettez à jour les API de la barre d'outils flottante pour utiliser l'objet
FloatingToolbarColors
au lieu d'une seule couleur de conteneur. (I9a054) - Ajouter et utiliser la nouvelle annotation expérimentale
ExperimentalMaterial3ComponentOverrideApi
(Ia1eaf) Modifier.indicatorLine
accepte désormais une forme pour que le champ de texte gère le clipping. (I8c5f3, b/380704151)- Renommer les fonctions
FloatingAppBar
expérimentales enFloatingToolbar
(I1dbf8) - Ajout d'un nouveau
floatingToolbarVerticalNestedScroll
qui peut être associé à un conteneur à défilement pour mettre à jour l'état d'expansion de la barre d'outils flottante en fonction d'un mouvement de défilement qui dépasse un seuil. (I6d65f) - Présentation d'une nouvelle API permettant de créer une barre d'outils flottante avec un bouton d'action flottant (FAB) associé. L'API offre des options de personnalisation flexibles, ce qui vous permet d'organiser la barre d'outils horizontalement ou verticalement, et de placer le FAB au début ou à la fin de la barre d'outils. (I9e350)
Correction de bugs
- Correction d'un problème d'accessibilité lié à Snackbar qui entraînait l'annonce de sa fermeture lorsque
TalkBack
était activé. (/I9db53)
Contribution externe
BasicTooltip
a été commonisé dans foundation etBasicTooltip/Tooltip
dans material3. (Ifc2e6)
Version 1.4.0-alpha05
12 décembre 2024
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha05
. La version 1.4.0-alpha05 contient ces commits.
Modifications apportées à l'API
- Remplacer le type dans la valeur
WideNavigationRailState.current/target
par une énumération pour une meilleure lisibilité (I2d6ab) SplitButton
: modification de l'API Shape, qui passe de la classe de données à la classe pour la compatibilité binaire. (I53812)- Ajout d'une API d'info-bulle avec un paramètre
onDismissRequest
pour permettre aux créateurs de décider de ce qui se passe lorsqu'un utilisateur clique en dehors de l'info-bulle. L'ancienne API qui ne contient pas ce nouveau paramètre est désormais obsolète. (I99aef) - Remplacez le nom
opticalCentering
parhorizontalCenterOptically
. Rendre le modificateur interne. Remplacez le paramètre de marge intérieure par le décalage maximal de début et de fin. (I0b904) - Remplacez
WideNavigationRailState
par la valeur actuelle/cible, supprimez les énumérations au profit des valeurs booléennes. (Idfa29, b/356039090) - Ajout de
NavigationBarItemComponentOverride
. (I3a06a)
Correction de bugs
- Correction des comportements des barres d'application supérieure et inférieure pour changer de couleur de manière fiable lorsque le contenu est entièrement défilé. (Idc4e8, b/293665988)
- Les fonctions de comportement de défilement pour les barres d'application supérieures et inférieures renvoient désormais un comportement mémorisé pour de meilleures performances lors des recompositions. (I0fdbe, b/207957336)
- Le paramètre de modificateur est désormais appliqué après les modificateurs internes tels que le comportement de déplacement et la sémantique, au lieu d'avant. Cela affecte l'ordre dans lequel les modificateurs sont appliqués. (I8d83f)
- La bottom sheet développée reste développée lorsque la taille change. (I2870b, b/324934884)
- Route correctement les indicateurs de barre d'état et de navigation pour les propriétés des fenêtres. (Ie674d, b/362539765)
- Déplacez le paramètre de modificateur vers la racine des scaffolds, comme indiqué dans la documentation. Cela permet d'aligner l'implémentation sur M2. (I0235e, b/372311595)
Contribution externe
- Fonction
DatePickerDialog
commonisée. (I7dced)
Version 1.4.0-alpha04
13 novembre 2024
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha04
. La version 1.4.0-alpha04 contient ces commits.
Nouveaux comportements
- Rétablissement des modifications de couleur introduites dans aosp/3212478 pour
iconButtonColors
,iconToggleButtonColors
,outlinedIconButtonColors
,outlinedIconToggleButtonColors
etoutlinedIconToggleButtonBorder
. Le comportement qui a été rétabli a été déplacé dans un nouvel ensemble de fonctions appeléesiconButtonVibrantColors
, etc., pour mettre en évidence les couleurs à contraste élevé renvoyées. (Iffd8d)
Nouvelles fonctionnalités
- Présenter le composant
VerticalDragHandle
(I6c770)
Modifications apportées à l'API
DismissibleModalWideNavigationRailDefaults
a été renomméModalWideNavigationRailDefaults
. (I8e877)- Ajout de
NavigationBarComponentOverrides
. (I8a3f3) - Ajout de
NavigationRailComponentOverride
. (I83e13) - Ajout de
WideNavigationRailState
pour gérer le pliage/dépliage du rail, autoriser la fermeture deModalWideNavigationRail
et supprimerDismissibleModalWideNavigationRail
. (I88568) - Ajoutez les tailles par défaut xSmall, medium, large et xLarge aux valeurs par défaut du bouton bascule. (Ie95d1)
- Ajoutez les tailles par défaut xSmall, medium, large et xLarge aux tailles par défaut des boutons. (If8b6d)
Correction de bugs
- La couleur de l'icône de fin du chip de filtre est passée de "Primaire" à
OnSurfaceContainer
, conformément aux spécifications. La couleur du contour de tous les chips est passée de "Contour" à "Variante de contour", conformément aux spécifications. (I68bd4)
Version 1.4.0-alpha03
30 octobre 2024
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha03
. La version 1.4.0-alpha03 contient ces commits.
Modifications apportées à l'API
- Le constructeur
SheetState
avec densité a été abandonné au profit des seuils de position et de vitesse. (Ifd16e) - Ajout de
rememberTooltipPositionProvider
contenant une logique de positionnement mise à jour.rememberPlainTooltipPositionProvider
etrememberRichTooltipPositionProvider
sont obsolètes. (Ie66e2) - Des
ModalBottomSheetProperties
supplémentaires permettent de personnaliser les couleurs de la barre d'état et de la barre de navigation. Par défaut, ces éléments sont mis à jour en fonction de la couleur du contenu et non de l'état du thème sombre du système. (Ib874e, b/362539765) - Amélioration de l'expérience de saisie pour les sélecteurs de date : en mode saisie, le champ de texte de la date est sélectionné pour une saisie de texte immédiate. Cette modification ajoute un paramètre
requestFocus
àDatePicker
etDateRangePicker
. Vous pouvez empêcher la sélection en transmettantfalse
. (I12d09, b/286399710, b/340102743) - Mise en cache des paramètres par défaut de la forme dans l'objet Shape. Définition des valeurs par défaut de la forme
@Composable
pour le bouton bascule. Les formes sont réduites en une seule forme par défaut, car les variantes pointent vers le même fichier de jetons. (Iaa014)
Correction de bugs
- Optimisez le comportement de Scaffold
contentPadding
pour éviter de recomposer systématiquement le contenu du corps lorsquecontentPadding
change. (I8c8e2, b/373904168) TextFieldLabelScope
progress
renommélabelMinimizedProgress
TextFieldLabelPosition
Default
a été renomméAttached
. Les membres de l'interface ont été supprimés. (If75c6)- Correction d'un problème lié à
DatePicker
en mode saisie, où les erreurs de validation pouvaient entraîner une modification de la hauteur du composant. (I2e229, b/280462363) - Faites en sorte que le curseur Material modifie sa valeur lorsque des touches de contrôle sont enfoncées. (I1c442)
Version 1.4.0-alpha02
16 octobre 2024
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha02
. La version 1.4.0-alpha02 contient ces commits.
Modifications apportées à l'API
- Mises à jour des sélecteurs de date pour garantir une utilisation cohérente des paramètres régionaux dans
DatePicker
etDateRangePicker
lors de la définition d'un paramètre régional directement via unDatePickerState
ou unDateRangePickerState
. Notez que lorsque vous définissez directement les paramètres régionaux sur l'état, il vous incombe de vous assurer que les textes du titre et de l'en-tête sont localisés en conséquence, car leur texte par défaut sera toujours appliqué en fonction des paramètres régionaux par défaut de la plate-forme. (I37073, b/326490763, b/321657276) SheetState.isAnimationRunning
est désormais exposé. (I9a3d7)DatePickerColors
prévaut désormais correctement sur toutes les couleurs conflictuelles définies dans les styles de texte de typographie du thème. Notez également que cette mise à jour ajuste la position du paramètrecolor
dans les fonctions du sélecteur de date et introduit un paramètrecontentColor
pour personnaliser les couleurs du texte de l'en-tête et du titre. (I30d03, b/347031394)- Renommez
SplitButton
enSplitButtonLayout
et supprimez les API de variantes de couleurSplitButton
. Les variantes seront obtenues en réutilisant les variantes de bouton fournies parSplitButtonDefaults
. (I44c36) ModalBottomSheet
dispose désormais du paramètresheetGestureEnabled
. (I856cb, b/288211587)- Remplacement des noms
standardMotionScheme
etexpressiveMotionScheme
par "standard" et "expressif". Les deux fonctions sont désormais accessibles via l'objet compagnonMotionScheme
en appelantMotionScheme.standard()
etMotionScheme.expressive()
. (Iceccf) - Ajout du paramètre
maxWidth
aux info-bulles simples et enrichies. La valeur par défaut est de 200 dp pour les info-bulles simples et de 320 dp pour les info-bulles enrichies. (I30ce9)
Correction de bugs
DatePicker
etDateRangePicker
mettent désormais correctement à jour le mois affiché lorsqu'ils sont définis via ledisplayedMonthMillis
de leur état. (If9e47, b/333414302)- Le contenu
ModalBottomSheet
déplace désormais le contenu hors de la barre d'état. (I5114c, b/321877275, b/336962418, b/342093067) - [Bottom Sheet] Change back callback priority to
PRIORITY_DEFAULT
to allow IME keyboard to dismiss first. (I447fb) - Correction des plantages dans
DatePicker
etDateRangePicker
lorsque l'année minimale sélectionnable est définie sur une année future. (I78656, b/319395747) - Corrigez un problème de sélecteur de date pour mettre à jour l'UI lorsqu'une instance
SelectableDates
mise à jour est appliquée. (Iad59a, b/290135807, b/339898760)
Version 1.4.0-alpha01
2 octobre 2024
Publication d'androidx.compose.material3:material3-*:1.4.0-alpha01
. La version 1.4.0-alpha01 contient ces commits.
Nouveaux comportements
- La bibliothèque n'ajoute plus de dépendance à
material-icons-core
. Si votre projet s'appuyait sur cette dépendance, vous devrez l'ajouter explicitement dans vos fichiersbuild.gradle[.kts]
. (I735ff, b/349894318) - La couleur du libellé actif de
NavigationBarItem
etNavigationRailItem
passe deonSurface
àsecondary
afin d'améliorer la facilité d'utilisation, le contraste des couleurs et la cohérence au sein du système (Ibc297). Pour revenir au comportement précédent, copiez les couleurs par défaut et remplacezselectedTextColor
parMaterialTheme.colorScheme.onSurface
. - Les composants Material 3 utilisent désormais le nouveau
MotionScheme
pour définir leur mouvement. (Ie0f93) - Modifications de l'animation de l'indicateur de progression circulaire indéterminé (I3c07e)
- Mettez à jour
OutlinedIconButtonColors
etOutlinedIconToggleButtonColors
pour un meilleur contraste des couleurs. (I2743d) - Mise à jour de la couleur du conteneur et du contenu pour
FilledIconToggleButtonColors
etFilledTonalIconToggleButtonColors
. (Ic5d0f) - La couleur de bordure
OutlinedButton
a été remplacée paroutlineVariant
.outline
(057f00)
Modifications apportées à l'API
- Ajout d'un paramètre
reverseLayout
facultatif à la fonctionenterAlwaysScrollBehavior
deTopAppBar
pour une meilleure prise en charge du contenu défini avec unreverseLayout
. (I4e0e5) SegmentedButton
est désormais compatible avec l'argumentcontentPadding
. (I5ad91, b/358414376)PullToRefreshState
n'a plus d'implémentation par défaut pourisAnimating
(I6a593)- Ajout de nouvelles surcharges de
TextField
etOutlinedTextField
Material qui utilisentTextFieldState
. Ajout d'API de boîte de décoration compatibles avecTextFieldDecorator
. (If13a1) - Ajout d'un paramètre pour contrôler le
labelPosition
du champ de texte. L'utilisation dealwaysMinimize
permet au modèle d'UI d'afficher un libellé et un espace réservé dans un champ de texte en même temps, même lorsque le champ n'est pas sélectionné. (I1ef2c) - Ajout de Material
SecureTextField
etOutlinedSecureTextField
pour les champs de saisie de mot de passe. (I7e22d) - Ajout d'un champ d'application aux libellés des champs de texte pour interroger la progression de l'animation. (If5ec8)
- Ajout de la prise en charge de
MotionEvent.CLASSIFICATION_DEEP_PRESS
dans les info-bulles. (I62e6a) isAfternoon
deTimePickerState
est désormais une valeur d'extension au lieu d'une variable dans l'interface, renomméeisPm
(I89a97)- Mise à jour de la classe de typographie pour prendre en charge les échelles de type mises en avant. (Ifa13c)
- Ajout de l'API
ModalWideNavigationRail
et changement de nom des APIModalExpandedNavigationRail
enDismissibleModalWideNavigationRail
. (Ic9118) - Mise à jour de
FloatingAppBarScrollBehavior
pour calculer automatiquementscreenOffset
et ne pas nécessiter de@Composable
. (Idf349) - Mises à jour de l'API
LoadingIndicator
pour corriger la dénomination au niveau de son objet par défaut. Ajout d'une constanteLoadingIndicatorElevation
àPullToRefresh
. (I1d72b) - Mises à jour de l'API
LoadingIndicator
pour corriger la dénomination au niveau de son objet par défaut. Ajout d'une constanteLoadingIndicatorElevation
àPullToRefresh
. (I1d72b) - Ajout des paramètres
amplitude
etwaveSpeed
aux variantes indéterminées deLinearWavyProgressIndicator
etCircularWavyProgressIndicator
. (I2a0c5) - Permet de modifier la forme d'un bouton bascule d'icône en fonction de son état (appuyé ou coché). (Ibc781)
- Mise à jour de la classe de typographie pour prendre en charge les échelles de type mises en avant. (Ifa13c)
- La forme
SplitButton
se transforme en fonction de l'état par défaut / appuyé. Suppression de l'APIAnimatedTrailingButton
, car l'APITrailingButton
peut offrir les mêmes personnalisations (I95066) - Ajoutez un modificateur pour animer l'affichage et le masquage du bouton d'action flottant, par exemple lorsque le contenu défile. (I8338d)
- Ajout de formes et d'espacements de groupe de boutons connectés à
ButtonGroupDefaults
à utiliser dans un exemple. (I68e30) - Ajouter une marge intérieure horizontale pour le bouton de fin et activer le centrage optique calculé à partir des différences entre les coins de début et de fin (I122e2)
- Introduction d'un nouveau
MotionScheme
Material pour permettre de définir un schéma pour le mouvement du composant. Le schéma est défini viaMaterialTheme
. (Id50c2)
Correction de bugs
- Appliquez l'index de parcours de mise au point approprié aux composables enfants
Scaffold
. L'ordre esttopBar
,bottomBar
, fab, content, snackbar. (I5936b) - Correction d'un problème au niveau de
DatePicker
etDateRangePicker
où, dans certaines langues et certains squelettes de format, certains éléments de date (par exemple, les noms de mois) ne commençaient pas par une majuscule. (I1430f) - Intégration des jetons de composants FAB et FAB Menu (modifications visuelles mineures apportées aux marges intérieures et au texte) (Ib57f3)
ModalBottomSheet
est désormais en première position dans l'ordre de déplacement sémantique, suivi du cache. (I436f9, b/358594665)- Correction du problème de la barre d'application inférieure qui ne disparaissait pas entièrement lors du défilement sous la capsule de navigation en mode bord à bord (I3ee21)
Compose Material3 version 1.3
Version 1.3.2
9 avril 2025
Publication d'androidx.compose.material3:material3-*:1.3.2
. La version 1.3.2 contient ces commits.
Correction de bugs
ListItem
corrige le calcul de sa hauteur intrinsèque et réserve désormais la quantité d'espace appropriée dans la mise en page.- Supprimez l'excédent de marge intérieure du libellé
NavigationBarItem
pour l'aligner correctement sur la spécification. - Correction de la mise en page
TabRow
en mode de droite à gauche.
Version 1.3.1
30 octobre 2024
Publication d'androidx.compose.material3:material3-*:1.3.1
. La version 1.3.1 contient ces commits.
Correction de bugs
DatePicker
etDateRangePicker
mettent désormais correctement à jour le mois affiché lorsqu'ils sont définis via ledisplayedMonthMillis
de leur état. (If9e47, b/333414302)- Correction des plantages dans
DatePicker
etDateRangePicker
lorsque l'année minimale sélectionnable est définie sur une année future. (I78656, b/319395747) - Corrigez un problème de sélecteur de date pour mettre à jour l'UI lorsqu'une instance
SelectableDates
mise à jour est appliquée. (Iad59a, b/290135807, b/339898760) - Modifiez la priorité du rappel de retour utilisée par les feuilles inférieures sur
PRIORITY_DEFAULT
pour permettre au clavier IME de se fermer en premier. (I447fb)
Version 1.3.0
4 septembre 2024
Publication d'androidx.compose.material3:material3-*:1.3.0
. La version 1.3.0 contient ces commits.
Changements importants depuis la version 1.2.0
Principales fonctionnalités de la version 1.3.0
Nouveaux composants Material Design 3
- Carrousel
HorizontalMultiBrowseCarousel
etHorizontalUncontainedCarousel
Améliorations apportées aux composants Material Design 3 existants.
- [
ModalBottomSheet
] est désormais compatible avec la prévisualisation du Retour sur U+ (Iccf32, b/281967264, b/304850357) - [
SearchBar
] est désormais compatible avec la prévisualisation du Retour sur U+ (I657f8). - Le panneau de navigation (
ModalDrawerSheet
etDismissibleDrawerSheet
) est désormais compatible avec la prévisualisation du geste Retour sur U+ en tant qu'option (Ie5b0b). DropdownMenu
accepte désormais les couleurs, les formes, l'élévation et les bordures personnalisées. (I8e981,b/289554448, b/301887035, b/283654243)- Mise à jour du curseur pour améliorer l'accessibilité en ajoutant un espace et un indicateur d'arrêt. (I3058e)
- Mise à jour de
ProgressIndicator
pour améliorer l'accessibilité en ajoutant un indicateur d'écart et d'arrêt. (I21451) - Ajout d'un caret par défaut pour l'info-bulle enrichie. Prise en charge du caret personnalisé à dessiner en fonction de l'ancrage
LayoutCoordinates
. (Ifd42c) Modifications destructives - Nouvelles API Pull-to-Refresh :
- Simplification de
PullToRefreshState
pour utiliser des valeurs fractionnaires au lieu des unités Dp. - L'état
isRefreshing
est contrôlé par l'utilisateur au lieu dePullToRefreshState
. - Séparation de la connexion de défilement imbriquée à partir de
PullToRefreshState
. Il est géré par le nouveauPullToRefreshBox
ouModifier.pullToRefresh
. - Cette mise à jour constitue une modification destructive des précédentes API expérimentales. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) Modifications visuelles majeures
- Simplification de
- Mettez à jour l'overlay de l'état de sélection sur 0.1f pour garantir un contraste des couleurs suffisant. (I7ea77)
- Petits ajustements apportés aux valeurs par défaut de la couleur de surface et d'arrière-plan dans
lightColorScheme
etdarkColorScheme
. (I9db52) - Mise à jour des couleurs du curseur et de
ProgressIndicator
pour respecter les nouvelles spécifications de contraste non textuel. (I26807) - Les variantes
SurfaceContainer
sont désormais utilisées par les composants. Les composants qui calculaient formellement la couleur avecSurface
etTonalElevation
utilisent désormais les rôlesSurfaceContainer
par défaut, qui ne sont pas affectés par l'élévation tonale. (b/304584161) - Les rôles de référence des surfaces et des conteneurs de surface ont été légèrement ajustés, ce qui permet d'obtenir plus de nuances dans les thèmes clair et sombre. (I677a5)
- Passage des API expérimentales à la version stable.
- Amélioration des performances
Version 1.3.0-rc01
21 août 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-rc01
. La version 1.3.0-rc01 contient ces commits.
Correction de bugs
ModalBottomSheet
est désormais en première position dans l'ordre de déplacement sémantique, suivi du cache. (I436f9, b/358594665)
Version 1.3.0-beta05
24 juillet 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-beta05
. La version 1.3.0-beta05 contient ces commits.
- Correction d'un problème où le contenu
BottomSheet
était manquant ou tronqué sur Android N et O (a10a2d) - Augmentation des limites sémantiques du curseur pour que
TalkBack
affiche correctement les indicateurs de focus autour des pouces. (0b5a1d)
Version 1.3.0-beta04
26 juin 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-beta04
. La version 1.3.0-beta04 contient ces commits.
Version 1.3.0-beta03
12 juin 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-beta03
. La version 1.3.0-beta03 contient ces commits.
Contribution externe
- Rendez
androidx.compose.material3.DropdownMenu
disponible à partir de l'ensemble de sources commun. (If62c0)
Version 1.3.0-beta02
29 mai 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-beta02
. La version 1.3.0-beta02 contient ces commits.
Modifications apportées à l'API
Modifier.pullToRefreshIndicator
prend en charge l'élévation. Mettez à jour les API Pull To Refresh pour qu'elles soient activées par un booléen au lieu d'un lambda. Prise en charge de l'alignement du contenu dansPullToRefreshBox
(I75679)- Faire de
TooltipScope
une interface scellée et créer une implémentation interne à utiliser dansTooltipBox
et Label. (I3833e) - Ajout de deux nouveaux modificateurs à
CarouselItemScope
:maskClip
etmaskBorder
. Ils permettent d'ajouter facilement une forme et une bordure à n'importe quel élément de carrousel (Id67a1). TimePickerState
est désormais une interface et permet de définir l'heure (I88546).- Mise à jour de l'API pour styliser les liens : déplacement de
TextLinkStyles
versTextStyle
et suppression deTextDefaults
de Material. (I5477b)
Correction de bugs
- Les icônes de la barre d'état et de la barre de navigation
ModalBottomSheet
répondent désormais à l'état du thème sombre. (Ie1fe7, b/338342149) - Ajout de la sémantique de fermeture de la feuille au scrim
ModalBottomSheet
. (0e61cb,b/328801864)
Contribution externe
- Rendre
androidx.compose.material3.AlertDialog
disponible à partir de l'ensemble de sources commun (Ia33f5) - Rendre
ModalBottomSheet
disponible à partir de l'ensemble de sources commun (Id7cc7)
Version 1.3.0-beta01
14 mai 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-beta01
. La version 1.3.0-beta01 contient ces commits.
Modifications apportées à l'API
- Utiliser
DpSize
au lieu deCaretProperties
. Suppression deCaretProperties
.CaretScope
a été renomméTooltipScope
. (Id9a76) - Mise à jour de l'API pour obtenir des liens à thème Material dans le texte. Plus précisément, les méthodes ont été supprimées de
TextDefaults
pour construire desLinkAnnotations
thématiques et analyser le code HTML avec des liens thématiques. À la place, une classeTextLinkStyles
a été ajoutée pour permettre de styliser les liens en tant que paramètre du composable Text. (I31b93)
Version 1.3.0-alpha06
1er mai 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-alpha06
. La version 1.3.0-alpha06 contient ces commits.
Modifications destructives
Nouvelles API pour l'actualisation par balayage :
- Simplification de
PullToRefreshState
pour utiliser des valeurs fractionnaires au lieu des unités Dp. - L'état
isRefreshing
est contrôlé par l'utilisateur au lieu dePullToRefreshState
. - Séparation de la connexion de défilement imbriquée à partir de
PullToRefreshState
. Il est géré par le nouveauPullToRefreshBox
ouModifier.pullToRefresh
. - Cette mise à jour constitue une modification destructive des précédentes API expérimentales. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)
- Simplification de
Modifications apportées à l'API
RippleConfiguration#isEnabled
a été supprimé etLocalRippleConfiguration
a été rendu nullable. Pour désactiver une ondulation, au lieu de fournir unRippleConfiguration
avecisEnabled = false
, fournisseznull
àLocalRippleConfiguration
. (I22725)ModalBottomSheet
dessine plus précisément le voile sur la barre d'état lorsque le mode bord à bord est activé. Le contenu de la bottom sheet modale peut désormais consommer les encarts de fenêtre, ce qui permet d'afficher du contenu au-dessus de la barre de navigation. Le paramètreModalBottomSheet
windowInsets
a été renommécontentWindowInsets
pour spécifier où les encarts seront appliqués. Ils ne sont plus liés à la logique de la fenêtre. Le typecontentWindowInsets
a été remplacé par une fonction qui renvoieWindowInsets
, pour lui permettre d'être résolu dans sa nouvelle fenêtre. (I39630, b/274872542, b/300280229, b/290893168)PrimaryScrollableTabRow
etSecondaryScrollableTabRow
utilisent désormais une mise en page personnalisée au lieu d'une sous-composition, ce qui devrait améliorer les performances. (I991e0)- L'option de style d'état enfoncé a été ajoutée aux liens textuels, en plus des styles normal, survolé et sélectionné. Les méthodes
TextDefaults
ont chacune reçu un argumentpressedStyle
pour prendre en charge cette fonctionnalité. (Ic473f, b/139312671)
Correction de bugs
- Les ancres de déplacement du tiroir de navigation correspondent désormais à la largeur de
drawerContent
. (Ibc72f, b/245355396) - La marge intérieure supérieure de
OutlinedTextField
pour le libellé tient désormais compte de la taille de la police système. (Idc781) - Emplacement du package corrigé :
CalendarLocale
. (Ifa235) - [Prévisualisation du Retour] Mettre à jour les animations de prévisualisation du Retour pour utiliser la courbe d'interpolation (0.1, 0.1, 0, 1) (I2591a)
Version 1.3.0-alpha05
17 avril 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-alpha05
. La version 1.3.0-alpha05 contient ces commits.
Nouvelles fonctionnalités
SearchBar
etDockedSearchBar
disposent de nouvelles surcharges qui acceptent un paramètre de champ de texte. Cela permet de styliser le champ de texte séparément du reste de la barre de recherche, ainsi que de transmettre des champs de texte personnalisés. Le champ de texte de l'implémentation actuelle est disponible en tant queSearchBarDefaults.InputField
. (I50c73, b/275074248, b/278773336, b/326627700)- Le lambda
drawTick
a été ajouté à l'API publique afin de personnaliser les coches si nécessaire (I0c048).
Modifications apportées à l'API
- Les liens textuels disposent désormais d'une option de style pour l'état "appuyé", en plus des styles normal, survolé et sélectionné (I5f864, b/139312671).
- Mise à jour de
CarouselItemInfo
pour exposer un Rect de masque par lequel l'élément est coupé (I785d8) - Suppression de
BasicTooltipState
de l'API publique Material 3. Sa fonctionnalité est combinée àTooltipState
jusqu'à ce queBasicTooltip
de Foundation soit stabilisé. (Icda29) - Ajout d'un objet
TextDefaults
contenant des méthodes permettant de construire unLinkAnnotation
et d'analyser une chaîne avec des balises HTML qui appliquentMaterialTheme
aux liens (I98532, b/139312671). ExposedDropdownMenuBoxScope
n'autorise plus les sous-classes. Les menus déroulants exposés disposent désormais d'unMenuAnchorType
qui doit être transmis àmenuAnchor
pour une meilleure accessibilité. Vous devez utiliser cette méthode au lieu de transmettrefocusable
àExposedDropdownMenu
, qui est désormais obsolète.menuAnchor
comporte un nouveau paramètre permettant de contrôler l'étatenabled
. (I55ee6, b/257209915, b/308840226)- Correction de la couleur de la bordure de
OutlinedButton
lorsqu'il est désactivé. Ajout d'une surchargeButtonDefaults.outlinedButtonBorder("enabled")
qui prend en compte l'état activé. (Ie650b, b/318461363) - Ajout d'une classe
CarouselItemInfo
pour aider les clients à obtenir des informations sur les tailles des articles. (I9070c) - Le constructeur
ColorScheme
sans conteneurs de surface est désormais obsolète. Veuillez migrer vers le constructeur qui inclut les conteneurs de surface. (I35c11) - [Outlined]
TextFieldDefaults
ContainerBox
a été renomméContainer
. (Ie8d3b)
Correction de bugs
BottomSheetScaffold
ne défile plus à partir du défilement imbriqué sisheetSwipeEnabled
est défini sur "false". (I5e1c1, b/306464779)- Suppression de certaines annotations
ExperimentalMaterial3Api
OptIn dansIconButtonSamples.kt
. (I111d1)
Version 1.3.0-alpha04
3 avril 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-alpha04
. La version 1.3.0-alpha04 contient ces commits.
Nouvelles fonctionnalités
- Ajout de deux versions expérimentales du carrousel Material3 :
HorizontalMultiBrowseCarousel
etHorizontalUncontainedCarousel
(I88d64) - Mise à jour du panneau de navigation Compose M3 (
ModalDrawerSheet
etDismissibleDrawerSheet
) pour prendre en charge la prévisualisation du geste Retour sur U+ en tant que fonctionnalité optionnelle (Ie5b0b) - Ajout d'une nouvelle API dans Icon pour permettre de transmettre la teinte de couleur en tant que lambda afin d'éviter la recomposition. (I5b5a2)
- Les API de barre d'application supérieure sont désormais compatibles avec les hauteurs personnalisées pour les sections fixes et réductibles. (Ib8b0c, b/323403446)
Modifications apportées à l'API
- Les API de barre d'application supérieure sont désormais compatibles avec les hauteurs personnalisées pour les sections fixes et réductibles. Correction d'un problème qui entraînait la recomposition des barres d'application supérieures sur une seule ligne trop souvent lors du défilement du contenu. Résolution d'un problème qui entraînait la troncature des titres
MediumTopAppBar
sur les appareils avec des paramètres de police/d'affichage de grande taille. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676) SegmentedButton
et les API associées sont désormais stables (I8a158).SwipeToDismissBox
,SwipeToDismissBoxDefaults
,SwipeToDismissBoxState
etSwipeToDismissBoxValue
sont désormais marqués comme stables. (I5f000)- Suppression des énumérations et des API
DismissDirection
etDismissValue
obsolètes. (I89ccd) - Ajout d'un tag expérimental à l'objet associé
CarouselState
de Carousel. (I94154) - Abandon de
LocalMinimumInteractiveComponentEnforcement
et ajout deLocalMinimumInteractiveComponentSize
pour le remplacer. (I7a7ac) - Le constructeur
SearchBarColors
est désormais public. (I769ca) - Ajout d'un paramètre
gesturesEnabled
àSwipeToDismissBox
. (Idc59f, b/324170119) - Suppression des API de champ de texte marquées comme obsolètes et expérimentales. (I1305f)
Version 1.3.0-alpha03
20 mars 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-alpha03
. La version 1.3.0-alpha03 contient ces commits.
Modifications destructives visuelles
- Mettez à jour l'overlay de l'état de sélection sur 0.1f pour garantir un contraste des couleurs suffisant. (I7ea77)
- Petits ajustements apportés aux valeurs par défaut de la couleur de surface et d'arrière-plan dans
lightColorScheme
etdarkColorScheme
. (I9db52)
Nouvelles fonctionnalités
- Ajout de paramètres pour personnaliser
ExposedDropdownMenu
. En particulier, les menus comportent désormais un paramètrefocusable
(true
par défaut) qui doit être défini surfalse
lorsque vous utilisez des champs de texte modifiables. (I4184c, b/323694447, b/278609042)
Modifications apportées à l'API
- L'option
ScaffoldSubcomposeInMeasureFix
a été supprimée. (Ie2a4b) NavigationRailItemColors
est désormais marqué comme@Immutable
. (If6112, b/327660613)NavigationBarItemColors
est désormais marqué comme@Immutable
. (I42a30, b/298064514)- Réorganisation des paramètres dans le composable Slider Track. (I9f315)
ExposedDropdownMenu
est désormais implémenté à l'aide dePopup
. Le comportement devrait être le même, sauf que les menus pouvant être sélectionnés avec des champs de texte modifiables peuvent être fermés lors de la saisie au clavier.
Correction de bugs
- Les rôles de référence des surfaces et des conteneurs de surface ont été légèrement ajustés, ce qui permet d'obtenir plus de nuances dans les thèmes clair et sombre. (I677a5)
- Mise à jour des couleurs du curseur et de
ProgressIndicator
pour respecter les nouvelles spécifications de contraste non textuel. (I26807) - Mettez à jour l'overlay de l'état de sélection sur 0.1f pour garantir un contraste des couleurs suffisant. (I7ea77)
- Petits ajustements apportés aux valeurs par défaut de la couleur de surface et d'arrière-plan dans
lightColorScheme
etdarkColorScheme
. (I9db52)
Version 1.3.0-alpha02
6 mars 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-alpha02
. La version 1.3.0-alpha02 contient ces commits.
Modifications apportées à l'API
- Stabilisation des états du curseur. Définition de
State.onValueChangeFinished
comme valeur à nouveau. Encapsulation deonValueChangeFinished
dans unrememberUpdatedState
. (I82ab2, b/322269951) - Les composants Navigation utilisent désormais les nouveaux rôles
SurfaceContainer
.DrawerDefaults
fournit désormais des attributsstandardContainerColor
etmodalContainerColor
distincts.DrawerDefaults.ModalDrawerElevation
est désormais0.dp
. (I7fbac) - Suppression de
@Stable
des états deSlider
, car nous remplaçonsstate.onValueChangeFinished
parvar
. (Ied34a, b/322269951) - La spécification d'animation
ModalBottomSheet
etStandardBottomSheet
est désormais unTweenSpec
, qui a été mis à jour à partir d'une animation de rétroaction. Cela résout un problème de dépassement visible. Les constructeursSheetState
obsolètes sans densité ont été supprimés. (I7babc, b/285847707)
Correction de bugs
- Les variantes
SurfaceContainer
sont désormais utilisées par les composants. Les composants qui calculaient formellement la couleur avec Surface etTonalElevation
utilisent désormais les rôlesSurfaceContainer
par défaut, qui ne sont pas affectés par l'élévation tonale. (b/304584161) - Correction d'un bug qui entraînait l'affichage en noir de la couleur du conteneur désactivé et non sélectionné de
ElevatedFilterChip
. (I400e6, b/322407043) - Correction de l'indicateur de progression indéterminée lorsque la progression est de 0 (Id6582)
- Correction d'un problème lié à
Slider
etRangeSlider
dans la mise en page de droite à gauche (Iab0e1) - Ajout de
SliderRangeTolerance
pour le calcul de la plage du curseur, car l'arrondi des valeurs flottantes peut être inexact. (Ic918a, b/324934900) - Assurez-vous que
DatePickerDialog
affiche ses boutons lorsqu'unDateRangePicker
est imbriqué ou lorsqu'un sélecteur de date de n'importe quel type s'affiche sur de petits écrans avec de grandes polices. (Ie4758, b/325107799, b/277768544) Menu
utilise désormais le rôleSurfaceContainer
pour la couleur du conteneur.MenuDefaults.TonalElevation
est désormais0.dp
. (I135b7)TextField
utilise désormais le rôleSurfaceContainerHighest
pour la couleur du conteneur. (I4dced)- Les chips surélevés utilisent désormais le rôle
SurfaceContainerLow
(I7cd2f). - La couleur du conteneur
DatePicker
est désormaisSurfaceContainerHigh
.DatePickerDefaults.TonalElevation
est désormais0.dp
. (Ida753) - Met à jour la couleur du conteneur Bottom Sheets et la couleur de la poignée de déplacement. (I72a0a)
- La couleur du conteneur
RichTooltip
est désormaisSurfaceContainer
. (Ia8b45) - La couleur du conteneur
SearchBar
est désormaisSurfaceContainerHighest
.SearchBarDefaults.TonalElevation
est désormais0.dp
. (I88604) - Mise à jour du commutateur pour désactiver et désélectionner les pistes/icônes afin d'utiliser le rôle de couleur
SurfaceContainerHighest
. (I7687a) - La couleur du conteneur
AlertDialog
est désormaisSurfaceContainerHigh
. (Ie0433) - La couleur du conteneur
BottomAppBar
est désormaisSurfaceContainer
. La couleuronScroll
deTopAppBar
est désormaisSurfaceContainer
. (I41630) - La couleur du conteneur
ElevatedCard
est désormaisSurfaceContainerLow
. La couleur du conteneur deFilledCard
estSurfaceContainerHighest
. (I35141) - La couleur du conteneur
ElevatedButton
est désormaisSurfaceContainerLow
. LesFilledIconButton
non sélectionnés ont désormais une couleur de conteneurSurfaceContainerHighest
. (I792c9) - Mise à jour du rôle de couleur du conteneur
TimePicker
et du cadran de l'horloge surSurfaceContainerHighest
. (I43b93)
Version 1.3.0-alpha01
21 février 2024
Publication d'androidx.compose.material3:material3-*:1.3.0-alpha01
. Liste des commits de la version 1.3.0-alpha01
Nouvelles fonctionnalités
- Mise à jour de
ModalBottomSheet
Compose M3 pour prendre en charge la prévisualisation du retour sur U+ (Iccf32, b/281967264, b/304850357) - Mise à jour de
SearchBar
Compose M3 pour prendre en charge la prévisualisation du geste Retour sur U+ (I657f8) - Mise à jour du curseur pour améliorer l'accessibilité en ajoutant un espace et un indicateur d'arrêt. (I3058e)
- Mise à jour de
ProgressIndicator
pour améliorer l'accessibilité en ajoutant un indicateur d'écart et d'arrêt. (I21451) - Ajout d'un caret par défaut pour l'info-bulle enrichie. La nouvelle API d'info-bulle enrichie permet désormais de dessiner un caret personnalisé en fonction de l'ancrage
LayoutCoordinates
. (Ifd42c)
Nouveaux comportements
- Les composants Material ont été migrés pour utiliser les nouvelles API d'ondulation et n'interrogent plus
RippleTheme
.
Modifications apportées à l'API
- La fonctionnalité amusante
drawStopIndicator
est désormais publique. (I3f59f) - Marquage de la fonction
formatWithSkeleton
deDatePicker
comme interne (Ic65dc) DropdownMenu
accepte désormais les couleurs, les formes, l'élévation et les bordures personnalisées. (I8e981, b/289554448, b/301887035, b/283654243)- Les composants Material3 exposant un
MutableInteractionSource
dans leur API ont été mis à jour pour exposer désormais unMutableInteractionSource
pouvant être nul et dont la valeur par défaut estnull
. Il n'y a pas de changement sémantique ici : transmettre une valeur nulle signifie que vous ne souhaitez pas hisser leMutableInteractionSource
, et il sera créé à l'intérieur du composant si nécessaire. Le passage à la valeur nulle permet à certains composants de ne jamais allouer deMutableInteractionSource
et à d'autres de ne créer une instance que lorsqu'ils en ont besoin, ce qui améliore les performances de ces composants. Si vous n'utilisez pas leMutableInteractionSource
que vous transmettez à ces composants, nous vous recommandons de transmettre plutôt la valeur "null". Nous vous recommandons également d'apporter des modifications similaires à vos propres composants. (I41abb, b/298048146) - Ajoute
RippleConfiguration
etLocalRippleConfiguration
pour permettre la personnalisation des ondulations par composant / sous-arborescence à l'aide de valeurs fixes. Par exemple, pour modifier la couleur d'un composant que vous ne contrôlez pas ou pour désactiver une ondulation pour un composant. Dans la plupart des cas, les valeurs par défaut doivent être utilisées. Ces API sont une échappatoire pour la personnalisation de composants individuels ou de sous-arborescences limitées. Pour des modifications plus importantes et des systèmes de conception personnalisés, vous devez plutôt créer votre propre effet d'onde à l'aide decreateRippleModifierNode
. (I7b5d6, b/298048146) - Ajout d'une nouvelle API Ripple dans Material3 qui remplace
rememberRipple
, désormais obsolète. Ajoute également unCompositionLocal
,LocalUseFallbackRippleImplementation
temporaire pour rétablir l'utilisation des APIrememberRipple
/RippleTheme
obsolètes par les composants Material3. Cette fonctionnalité sera supprimée dans la prochaine version stable. Elle n'est destinée qu'à aider temporairement à la migration dans les cas où vous fournissez unRippleTheme
personnalisé. (I34cbc, b/298048146)
Correction de bugs
- Suppression de la sous-composition à l'intérieur de
ModalBottomSheet
pour améliorer les performances. Correction d'un problème qui pouvait entraîner le plantage deModalBottomSheet
dans des scénarios spécifiques en combinaison avecLookaheadScope
. (I2a198) - Suppression de la sous-composition à l'intérieur de
BottomSheetScaffold
pour améliorer les performances. Correction d'un problème de plantage deBottomSheetScaffold
dans des scénarios spécifiques en combinaison avecLookaheadScope
. (Ie6401) - L'alignement des badges a été ajusté pour qu'ils soient plus proches du centre du contenu d'ancrage par rapport à l'angle supérieur droit. (I18a28)
- Correction d'un problème d'accessibilité avec
DateRangePicker
, où le titre du texte "Mois-Année" était considéré comme actionnable par les utilisateurs de lecteurs d'écran, de Switch Access et de Voice Access. (I2ac55) - Correction d'un bug lié à l'ordre des paramètres
mediumTopAppBarColors
. (Ibe64a)
Version 1.2
Version 1.2.1
6 mars 2024
Publication d'androidx.compose.material3:material3-*:1.2.1
. La version 1.2.1 contient ces commits.
Correction de bugs
- Rendez à nouveau les états du curseur stables. Définition de
State.onValueChangeFinished
comme valeur à nouveau. Encapsulation deonValueChangeFinished
dans unrememberUpdatedState
. (Ie8fd0, b/322269951) - Suppression de
@Stable
des états deSlider
, car nous remplaçonsstate.onValueChangeFinished
parvar
. (I82ba1, b/322269951) - Corrigez les couleurs personnalisées
NavigationBar
à copier à partir des valeurs par défaut. (80a779, b/326894020) - Correction de la régression dans
ExposedDropdownMenu
pour le rendre à nouveau sélectionnable (3fcec1, b/323694447) - Correction du problème de mise en cache de la couleur des boutons (3e5bbcb/327371655)
Version 1.2.0
7 février 2024
Publication d'androidx.compose.material3:material3-*:1.2.0
. Liste des commits de la version 1.2.0
Problème connu
- Un bug de rendu d'interopérabilité View-Compose a été introduit dans
PrimaryTabRow
dans le cadre d'une modification visant à améliorer les performances. La solution consiste à utiliserTabRow
avecTabRowDefaults.PrimaryIndicator
.
Changements importants depuis la version 1.1.0
Nouveaux composants Material Design 3
- Tirer pour réinitialiser
- Bouton segmenté
Améliorations apportées aux composants Material Design 3 existants.
- Barre d'application inférieure (alignement de droite à gauche, masquage automatique au défilement)
- Mise à jour visuelle des onglets
- Badge (modification de l'alignement)
Les API expérimentales sont désormais stables !
Améliorations des performances
- Pour en savoir plus, consultez cet article de blog.
Version 1.2.0-rc01
24 janvier 2024
Publication d'androidx.compose.material3:material3-*:1.2.0-rc01
. Liste des commits de la version 1.2.0-rc01
Correction de bugs
- Correction d'un bug lié à l'ordre des paramètres
mediumTopAppBarColors
. (Ibe64a) - Correction d'un bug introduit dans
1.2.0-beta02
dansCardDefaults.cardColors
qui ne mettait pas à jourcontentColor
en fonction de la valeur du paramètrecontainerColor
. (Iee041, b/319671246) - Correction d'un bug dans
disabledContentColor
introduit dans1.2.0-beta02
et ajout d'une petite optimisation. (I6dda1, b/318428829)
Version 1.2.0-beta02
10 janvier 2024
Publication d'androidx.compose.material3:material3-*:1.2.0-beta02
. Liste des commits de la version 1.2.0-beta02
Bug connu
- Par défaut, un bug dans
IconButtonColors
attribueradisabledContentColor
à un canal alpha (0,38f) deLocalContentColor
au lieu decontentColor
spécifié par l'utilisateur. La solution consiste à définir explicitementdisabledContentColor
. Ce problème sera résolu dans la prochaine version.
Modifications apportées à l'API
- Ajout de la possibilité d'activer les chevrons d'info-bulle pour les API
Tooltip
en texte brut. (Ibf767) SwipeToDismissState
,rememberSwipeToDismiss
etSwipeToDismissValue
sont tous renommés pour inclure_SwipeToDismissBox_
. (I68d6d)
Correction de bugs
- Correction de la valeur de marge intérieure de fin de
ListItem
pour l'aligner sur les spécifications. (Ibd68b, b/305342674) - La couleur de la bordure des cartes avec bordure est désormais correctement mappée sur
OutlineVariant
. (I75480, b/310979715) - La couleur dynamique est désormais extraite des rôles de couleur définis par le système. Cela améliore le contraste pour le contenu accessible et aligne plus étroitement la couleur dynamique sur les spécifications Material. (I1de96)
- Correction de la gestion du retour
ModalBottomSheet
sur Android T/13 ou version ultérieure lorsqueandroid:enableOnBackInvokedCallback="true"
. (I728dc, b/306196110)
Version 1.2.0-beta01
13 décembre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-beta01
. Liste des commits de la version 1.2.0-beta01
Modifications apportées à l'API
- Identification de
TabIndicatorScope
comme étant expérimental. (I45c88) - Suppression des API expérimentales obsolètes pour l'info-bulle. (I438cb)
- Modifiez les nouvelles surcharges
TabRow
pour qu'elles n'utilisent pas de sous-compositions. Cela permet de créer les indicateursTabRow
différemment avec les modificateurs personnalisés fournis. (Ife741) - Abandon des API
DismissDirection
etDismissValue
. Elles ont été fusionnées enSwipeToDismissValue
, dont les valeurs indiquent à la fois la position et la direction deSwipeToDismissBox
.DismissState.progress
est désormais marqué commeFloatRange
entre0.0
et1.0
. Les classes Saver et ConstructorDismissState
obsolètes ont été supprimées. Le composantSwipeToDismiss
, l'état et l'objet par défaut ont été marqués comme expérimentaux. (Ib54f2)
Correction de bugs
- L'indicateur par défaut pour
PullToRefresh
est désormais une pointe de flèche ouverte au lieu d'un triangle plein. (I67be3)
Version 1.2.0-alpha12
29 novembre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha12
. Liste des commits de la version 1.2.0-alpha12
Modifications apportées à l'API
RangeSlider
accepte désormais une plage Kotlin (par exemple,0f..1f
) au lieu d'une classe de valeurFloatRange
personnalisée.SnapFlingBehavior.kt
utilise désormais également une plage Kotlin. (I025cb)- Marquez les fonctions de fabrique Modifier comme
@Stable
. (Ib109f)
Version 1.2.0-alpha11
15 novembre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha11
. Liste des commits de la version 1.2.0-alpha11
Nouvelles fonctionnalités
- Implémente
PullToRefreshContainer
etPullToRefreshState
, qui fournissent ensemble une implémentation de l'actualisation par balayage dans Material3. (I16456, b/261760718)
Modifications apportées à l'API
- Marquez
SwipeToDismissBox
DismissDirection
etDismissValue
comme expérimentaux. (I517b0) SwipeToDismiss
a été renomméSwipeToDismissBox
. Renommezbackground
enbackgroundContent
etdismissContent
en lambdacontent
de fin. (I7f4d3)- Rendez le constructeur pour
ChipElevation
etSelectableChipElevation
public. (Ie0c48, b/308432421) - Ajout de
ModalBottomSheetProperties
. Déplacement desecurePolicy
versModalBottomSheetProperties
. Ajout deisFocusable
etshouldDismissOnBackPress
àModalBottomSheetProperties
. Ces nouveaux booléens permettent de déterminer comment la feuille inférieure modale doit gérer les événements IME. (Iea56f, b/278216859) - Mise à jour des états
RangeSlider
etSlider
pour supprimerinitialOnValueChange
, les préfixes initiaux et les kdocs appropriés. (I57d30) - Déprécier la classe
ChipBorder
et ses appels de fonction associés, et recommander d'utiliser directementBorderStroke
. (I89cc2) - Les API d'info-bulle de base sont désormais
@ExperimentalFoundationApi
. (I30b0b) TabRow
etScrollableTabRow
ne sont plus obsolètes. Les nouvelles variantes "Principal" et "Secondaire" sont marquées comme expérimentales. (I0def6)- Les chips de filtre et de saisie utilisent désormais directement
BorderStroke
. (I07a8d) SegmentedButton
utilise désormais directementBorderStroke
. (I89b9b)- La fonction générique
AlertDialog
a été renomméeBasicAlertDialog
, et la fonction précédente a été abandonnée. (Idbe52) - Renommez les API
SwipeToDismiss
enSwipeDismiss
et promouvez les nouvelles APISwipeDismiss
en version stable. (I14cbe) - Ajout de
tonalElevation
etshadowElevation
aux API d'info-bulles. De plus, les APITooltipBox
,PlainTooltip
etRichTooltip
sont de nouveau expérimentales, car elles ont été publiées par erreur en tant que stables. (If0f66, b/293939035) - Promotion des API de chip expérimentales en version stable. (Iea2c3)
- Suppression de l'annotation
@ExperimentalMaterial3Api
dans les fiches cliquables Material3. (I88dbf)
Correction de bugs
- Correction d'un problème qui entraînait le plantage de
SwipeToDismiss
dans certains scénarios avec des mises en page Lookahead et Lazy imbriquées. (Ica8d1, b/297226562)
Version 1.2.0-alpha10
18 octobre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha10
. Liste des commits de la version 1.2.0-alpha10
Modifications apportées à l'API
- Promotion de
Badge
etBadgedBox
en version stable. (I67f16, b/261565132) - Ajout de
securePolicy
en tant que paramètre àModalBottomSheet
, afin que les utilisateurs puissent définir le comportement deWindowManager.LayoutParams.FLAG_SECURE
. (Icdac8, b/296250262) - Ajout de nouvelles surcharges de
LinearProgressIndicator
etCircularProgressIndicator
qui prennentprogress
comme lambda. Elles devraient être plus performantes que les versions précédentes. (I824e6, b/295616656) StandardSizeClasses
a été renomméAllSizeClasses
. (I8cb07)- Combiner les fonctions de calcul des classes de taille de fenêtre. (Iad935)
Correction de bugs
- Correction d'un plantage de
DatePicker
lors d'un clic rapide sur les boutons en forme de flèche de navigation lorsque le mois affiché se trouve à la limite de la plage d'années autorisée. (I46f36, b/290954897, b/297002119) - [Barre/Rail de navigation] Prise en charge de la couleur transparente pour l'indicateur. (Ie0a9b, b/267289987)
Version 1.2.0-alpha09
4 octobre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha09
. Liste des commits de la version 1.2.0-alpha09
Modifications apportées à l'API
- Migration de
ModalNavigationDrawer
etDismissibleNavigationDrawer
pour utiliser les nouvelles APIAnchoredDraggable
.animateTo
deDrawerState
a été remplacé par les méthodes open et close, et le décalage est désormais exposé en tant que float au lieu d'un objet d'état. Vous pouvez accéder au décalage directement viacurrentOffset
. (I0a72c) - Des fonctions non composables ont été ajoutées pour créer directement un
DatePickerState
et unDateRangePickerState
. Ces fonctions peuvent être utilisées comme alternative aux fonctions composablesrememberDatePickerState
etrememberDateRangePickerState
, si nécessaire. (I70326, b/291524052) - Les
TabRows
fixes et défilants disposent désormais de variantes principales et secondaires. Elles correspondent correctement au comportement des couleurs et des indicateurs tel que défini dans Material3. PrimaryScrollableTabRow
etSecondaryScrollableTabRow
exposent désormais l'état de défilement. (Iec8f5, b/260572337)- Ajout d'un paramètre
sheetMaxWidth
que les développeurs peuvent définir pour spécifier une largeur maximale sur laquelle la feuille s'étendra. Dp.Unspecified peut être transmis pour le paramètre si une feuille qui s'étend sur toute la largeur de l'écran est souhaitée. (Ifb7c9, b/266697696) - Réajout des API
PlainTooltipBox
etRichTooltipBox
en tant que méthodes obsolètes. (I246fa)
Correction de bugs
- Correction d'un plantage lorsque
DatePicker
est initialisé avec unDatePickerFormatter
qui comporte certains squelettes de date qui restent identiques lorsqu'ils sont convertis en formats de date (comme "YY"). (I01f29)
Version 1.2.0-alpha08
20 septembre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha08
. Liste des commits de la version 1.2.0-alpha08.
Modification destructive affectant le comportement
ColorScheme
est désormais immuable, ce qui rend les mises à jour individuelles des couleurs moins efficaces, mais rend l'utilisation plus courante des couleurs plus efficace. La raison de ce changement est que la majorité des applications n'ont pas pour cas d'utilisation principal la mise à jour de couleurs individuelles. Cela reste possible, mais la recomposition sera plus fréquente qu'avant. En contrepartie, nous réduisons considérablement le nombre d'abonnements d'état dans tout le code Material, ce qui aura un impact sur le coût d'initialisation et d'exécution des cas d'utilisation plus standards. (Ic447d, b/297212873)- L'élévation tonale n'est plus animée dans différents états d'interaction pour correspondre aux spécifications. (Icdd12)
Modifications apportées à l'API
- Ajout d'un nouveau
BottomAppBar
qui prend unBottomAppBarScrollBehavior
comme paramètre afin de le masquer automatiquement lorsque le contenu est défilé. Ajout deFabPosition.EndOverlay
pour permettre au FAB de se superposer à la barre d'application inférieure dans le scaffold au lieu d'être ancré au-dessus. (Iecb47) - Ajout d'un composant Label simple basé sur
BasicTooltipBox
qui ne se ferme pas lorsque vous appuyez en dehors des limites du libellé. (I821f9)
Correction de bugs
- Suppression de l'utilisation de
rememberSaveable
pour les info-bulles. (Icc131, b/299500338) - Ajout d'un indicateur temporaire pour contrôler si Scaffold doit mesurer ses enfants pendant la mesure ou pendant le placement. Par défaut, cette valeur est exprimée en unité de mesure. Si vous rencontrez des problèmes avec le nouveau comportement, veuillez signaler un problème. (I0b354)
- Bord à bord horizontal fixe dans
BottomSheet
en utilisant la mesure appropriée pour la largeur de l'écran de l'appareil. (I1df0c, b/299058752) - Correction d'un bug qui empêchait
ModalBottomSheet
d'appeleronDismissedRequest
lors de la fermeture de la feuille en balayant l'écran vers le bas. (Idfdd8)
Version 1.2.0-alpha07
6 septembre 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha07
. Liste des commits de la version 1.2.0-alpha07
Nouvelles fonctionnalités
- La compatibilité avec les icônes en miroir automatique a été ajoutée dans
compose material 1.6.0-alpha05
. Pour en savoir plus sur les icônes en miroir automatique, consultez les notes de version.
Modifications apportées à l'API
SliderState
implémenteDraggableState
(I9b116)- Le paramètre de forme est désormais obligatoire. Renommez
position
enindex
dans la fonction d'assistance de forme. (I34941) - Mise à jour de
DatePicker
formatWithSkeleton
pour inclure une carte utilisée comme cache pour améliorer les performances. (I3195f) - Ajout de
BasicTooltipBox
àcompose.foundation
et mise à jour dePlainTooltipBox
etRichTooltipBox
pour utiliserTooltipBox
avec les nouveaux composablesPlainTooltip
etRichTooltip
. (I79e1d)
Correction de bugs
dynamicLightColorScheme
etdynamicDarkColorScheme
renvoient désormais des couleurs à chroma plus élevé pour les rôles de surface etsurfaceContainer
. (I5e901)- Correction d'un problème qui empêchait certains composants utilisant la sous-composition (par exemple,
BottomSheetScaffold
) à l'intérieur d'un Scaffold à l'intérieur d'unLookaheadScope
de lire leur taille trop tôt. (I297b4, I871f1, b/295536718)
Version 1.2.0-alpha06
23 août 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha06
. Liste des commits de la version 1.2.0-alpha06
Correction de bugs
- Correction du calcul de
offset
pourDropdownMenu
afin que les décalages X dépendent uniquement du sens de mise en page local et que les décalages Y ne soient plus inversés lorsque le menu se trouve en bas de l'écran. (Iccc74, b/294103942) - Correction du calcul de
offset
pourDropdownMenu
afin que les décalages X dépendent uniquement du sens de mise en page local et que les décalages Y ne soient plus inversés lorsque le menu se trouve en bas de l'écran. (Ib87a2, b/294103942)
Version 1.2.0-alpha05
9 août 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha05
. Liste des commits de la version 1.2.0-alpha05
Modifications apportées à l'API
- Mises à jour des couleurs de la case à cocher et de
TriStateCheckbox
.CheckboxDefaults.colors()
disabledUncheckedColor
ne concerne désormais que la bordure de la case à cocher. Les cas particuliers qui vous obligent à définir la couleur de la boîte interne lorsque la case est désactivée et décochée nécessitent une instanceCheckboxColors
personnalisée avec les valeurs de couleur souhaitées. (I77d17, b/291943198)
Version 1.2.0-alpha04
26 juillet 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha04
. Liste des commits de la version 1.2.0-alpha04
Nouvelles fonctionnalités
- API expérimentale Segmented Button (Ifc8fb)
- Les séparateurs disposent désormais d'un paramètre permettant de contrôler l'orientation pour prendre en charge les séparateurs verticaux. (I4c899, b/288438593)
Modifications apportées à l'API
- Nous déplaçons la dépendance à la densité au niveau du composant. Cela s'applique aux composants
SwipeToDismiss
et aux composants basés sur une feuille de calcul. Veuillez utiliser la nouvelle surcharge fournie où la densité est un paramètre. (I1846e) - Annotations supplémentaires pour spécifier les entrées autorisées aux composables (Ief234)
- Ajoutez un paramètre d'icône au bouton segmenté, divisez la sémantique afin que les boutons segmentés puissent être sélectionnables pour implémenter la sélection unique et activables/désactivables pour implémenter la sélection multiple, avec
SelectableSegmentedButtonRow
etToggelableSegmentedButtonRow
respectivement. (I38740) - Le séparateur a été renommé
HorizontalDivider
. Ajout de la fonctionnalitéVerticalDivider
. (I5975c) - Modifiez l'utilisation de
ClosedFloatingPointRange
pour le poids plus légerFloatRange
dans les API Material3 expérimentales afin de minimiser l'autoboxing. (I4aab5) - Ajout d'un nouvel alignement de début pour
FabPosition
(Ib7aea, b/170592777)
Correction de bugs
ModalBottomSheet
respecte l'orientation de la mise en page locale. (Ib4f44, b/285628622)
Version 1.2.0-alpha03
21 juin 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha03
. Liste des commits de la version 1.2.0-alpha03
Nouveaux comportements
includeFontPadding
est désormais défini surfalse
par défaut dans la typographie Material 3. Le style de hauteur de ligne par défaut a également été modifié pourTrim.None
etAlignment.Center
, et deslineHeight
explicites (en sp) ont été ajoutés auxTextStyle
deTypography
. Consultez la documentation de l'API si vous souhaitez personnaliser ces valeurs. Pour obtenir une explication détaillée de ces modifications, consultez l'article de blog. (I6266f, Icabc3)
Nouvelles fonctionnalités
- Ajout d'une surcharge pour
RangeSlider
qui est une version avec état du composant. Création deRangeSliderState
qui contient toutes les informations sur la piste active actuelle, les mesures des composants deRangeSlider
et la logique de déplacement et de geste. (I8c270) - La barre de recherche est désormais compatible avec les ombres grâce au nouveau paramètre
shadowElevation
. (Ia5369, b/271040353) ColorScheme
est désormais compatible avec les nouveaux rôlesSurfaceContainer
.- La superposition d'élévation tonale de surface peut désormais être désactivée avec la composition locale
LocalTonalElevationEnabled
. (Ic203c, b/277774590)
Modifications apportées à l'API
- Ouvrez les constructeurs de couleurs de composants. (I8c4a6)
- Ajout d'un paramètre de focus aux deux API d'info-bulle, afin que les développeurs puissent choisir si l'info-bulle doit consommer les événements tactiles ou non. Soyez prudent, car cela pourrait interrompre le déplacement automatique de la sélection d'accessibilité. (Ie32d8)
- Accessibilité optimisée pour les performances et les allocations de mémoire. (Iede48)
- Exposer
DefaultSizeClasses
et créerStandardSizeClasses
pourWindowSizeClasses
(I91838) - Remplacer
WindowWidth/HeightSizeClass
par des classes de valeurs flottantes (Ie686e)
Correction de bugs
- Le paramètre
contentWindowInsets
de Scaffold respecte désormais les encarts de fenêtre consommés. Notez que le comportement du remplissage de contenu basé surtopBar
etbottomBar
reste inchangé lorsque ces paramètres sont fournis. (I08b73, b/264601542) - Corrigez l'alignement de la barre d'application supérieure centrale pour vous assurer qu'un titre long ne s'affiche pas au-dessus des icônes d'action ou de navigation. (I4369f, b/236994621)
- La largeur minimale du contenu des positions d'onglet est désormais de 24 dp. Cela fournit une zone tactile accessible pour les indicateurs d'onglet. (Id8861)
- Les palettes de couleurs dynamiques de
dynamicLightColorScheme
etdynamicDarkColorScheme
sont désormais compatibles avec de nouveaux rôles de surface. (I1252e) - Mise à jour de l'alignement des notifications de badge pour éviter le chevauchement en cas de collision avec l'arrière-grand-parent. (Idf75a)
Version 1.2.0-alpha02
24 mai 2023
Publication d'androidx.compose.material3:material3-*:1.2.0-alpha02
. Liste des commits de la version 1.2.0-alpha02
Modifications apportées à l'API
- Ajoutez un paramètre d'encarts de fenêtre à
ModalBottomSheet
.- Le scrim pour
ModalBottomSheet
peut désormais être dessiné derrière la barre d'état lorsquewindowInsets
est défini sur zéro. - Mise à jour de la fonctionnalité
ModalBottomSheet
par défaut pour rester en dehors des barres système, y compris la barre de navigation - La gestion des encarts de la barre d'état est assurée par la poignée de déplacement en mode bord à bord.
BottomSheetDefaults
inclut les encarts de fenêtre pourBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Le scrim pour
- Abandon de
Indicator
et ajout dePrimary
/SecondaryIndicator
pour correspondre aux spécifications M3.PrimaryIndicator
correspond à la largeur du contenu de l'onglet, tandis queSecondaryIndicator
s'étend sur toute la largeur disponible.SecondaryIndicator
est équivalent àIndicator
, qui est désormais obsolète, et peut le remplacer directement. (I27604) - Ajout d'une option permettant de transmettre un
ScrollState
lors de la construction d'unDropdownMenu
ou d'unExposedDropdownMenu
pour contrôler l'état de défilement vertical des éléments de menu affichés. (Ia0734, b/185304441) - Ajout d'une surcharge pour
Slider
qui est une version avec état du composant. Création deSliderState
qui contient toutes les informations sur la piste active actuelle, les mesures des composants deSlider
et la logique de déplacement et de geste. (I124a5) - Renommage de la propriété sémantique
isContainer
enisTraversalGroup
(I121f6) - Ajout de
TextStyle.merge(...)
optimisé avec la liste complète des paramètres. (Iad234, b/246961787) - Publication des interfaces
TooltipState
,RichTooltipState
etPlainTooltipState
. Ajout deRichTooltipStateImpl
etPlainTooltipStateImpl
pour les états par défaut. Ajout de fonctionsremember*State
pour obtenir ces états implémentés.TooltipSync
a été supprimé au profit d'unTooltipDefault.GlobalMutatorMutex
. (I7813d) - Mise à jour de
DatePickerColors
pour inclure des options de personnalisation supplémentaires pour les couleurs du séparateur, de la navigation et des champs de saisie de texte du sélecteur de date. (I1a685, b/274626815) DatePickerState
etDateRangePickerState
sont désormais des interfaces publiques avec des implémentations par défaut qui peuvent être récupérées parrememberDatePickerState
etrememberDateRangePickerState
. (I71c52)- Suppression de
dateValidator
deDatePicker
etDateRangePicker
, et introduction d'une interfaceSelectableDates
qui peut être définie sur l'état pour contrôler les dates ou les années sélectionnables dans l'UI. (Ic2fc6) TimePicker
supprimé de l'API stable. D'autres modifications sont attendues dans l'API d'état (I3f39a).ModalBottomSheet
: uniquement sur Android.ModalBottomSheet
n'est pas recommandé pour une utilisation sur ordinateur, et la fonctionnalité n'est pas activement gérée. (Ib3778)
Correction de bugs
- L'action de fermeture
AlertDialog
s'affiche désormais sous l'action de confirmation lorsque les actions sont empilées les unes sur les autres pour s'adapter à la largeur de la boîte de dialogue. Cette correction aligne l'implémentation sur la spécification Material Design. (I029de, b/235454277) - Correction d'un bug dans
ListItem
qui utilisait une marge intérieure incorrecte pour les éléments sur trois lignes. (I6e235) ModalBottomSheet
peut désormais afficher le clavier IME (Idc508, b/262140644, b/268380384, b/272483584).
Version 1.2.0-alpha01
10 mai 2023
Publication d'androidx.compose.material3:material3:1.2.0-alpha01
et d'androidx.compose.material3:material3-window-size-class:1.2.0-alpha01
. Liste des commits de la version 1.2.0-alpha01
Version 1.1
Version 1.1.2
20 septembre 2023
Publication d'androidx.compose.material3:material3:1.1.2
et d'androidx.compose.material3:material3-window-size-class:1.1.2
. Liste des commits de la version 1.1.2
Correction de bugs
- Correction d'un modificateur transmis de manière incorrecte à deux composables. (b/282761472)
- Correction de
TimePickerState
qui renvoyait des heures incorrectes lorsqu'il était initialisé avec 23 heures. (b/278242122) - Correction de l'état initial du bouton bascule pour la validation de l'heure et des minutes. (b/269768197, b/282790635)
- Correction de
state.hour
qui renvoyait une valeur incorrecte pour 23h. (b/282761472, b/278242122)
Version 1.1.1
21 juin 2023
Publication d'androidx.compose.material3:material3:1.1.1
et d'androidx.compose.material3:material3-window-size-class:1.1.1
. Liste des commits de la version 1.1.1
Correction de bugs
- Ajoute un appel pour
ModalBottomSheet
sans paramètrewindowInset
pour la compatibilité binaire. (Ib7959) - Ajoutez un paramètre d'encarts de fenêtre à
ModalBottomSheet
.- Le scrim pour
ModalBottomSheet
peut désormais être dessiné derrière la barre d'état lorsquewindowInsets
est défini sur zéro. - Mise à jour de la fonctionnalité
ModalBottomSheet
par défaut pour rester en dehors des barres système, y compris la barre de navigation - La gestion des encarts de la barre d'état est assurée par la poignée de déplacement en mode bord à bord.
BottomSheetDefaults
inclut les encarts de fenêtre pourBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Le scrim pour
Version 1.1.0
10 mai 2023
Publication d'androidx.compose.material3:material3:1.1.0
et d'androidx.compose.material3:material3-window-size-class:1.1.0
. Liste des commits de la version 1.1.0
Principales fonctionnalités de la version 1.1.0
Nouveaux composants Material Design 3
Améliorations apportées aux composants Material Design 3 existants.
Les API expérimentales sont désormais stables !
Pour en savoir plus, consultez cet article de blog.
Version 1.1.0-rc01
19 avril 2023
Publication d'androidx.compose.material3:material3:1.1.0-rc01
et d'androidx.compose.material3:material3-window-size-class:1.1.0-rc01
. Liste des commits de la version 1.1.0-rc01
Modifications apportées à l'API
TimePicker
supprimé de l'API stable. D'autres modifications sont attendues dans l'API d'état (I3f39a).ModalBottomSheet
: uniquement sur Android.ModalBottomSheet
n'est pas recommandé pour une utilisation sur ordinateur, et la fonctionnalité n'est pas activement gérée. (Ib3778)
Version 1.1.0-beta02
5 avril 2023
Publication d'androidx.compose.material3:material3:1.1.0-beta02
et d'androidx.compose.material3:material3-window-size-class:1.1.0-beta02
. Liste des commits de la version 1.1.0-beta02
Modifications apportées à l'API
SheetState
comporte désormais un paramètreskipHiddenState
facultatif.rememberStandardBottomSheetState
comporte désormais un paramètreskipHiddenState
facultatif.BottomSheetScaffold
dispose désormais d'une ancre masquée définie, bien qu'elle soit désactivée par défaut.- La documentation
SheetState.requireOffset
a été mise à jour BottomSheetDefaults.MinimizedShape
a été renomméBottomSheetDefaults.HiddenShape
(I839f4, b/273870234)
Correction de bugs
- Ne passez pas du cadran des heures à celui des minutes lorsque l'exploration tactile est activée. (I717d0)
- Les informations sémantiques des poignées de déplacement
ModalBottomSheet
etBottomSheetScaffold
sont désormais fusionnées. (I05afb) - Les paramètres
BottomSheetScaffold
,containerColor
etcontentColor
n'affectent désormais que le contenu. (I992cb) BottomSheetScaffold nestedScroll
pour le contenu de la feuille implémente désormais les balayages. (I992cb)
Version 1.1.0-beta01
22 mars 2023
Publication d'androidx.compose.material3:material3:1.1.0-beta01
et d'androidx.compose.material3:material3-window-size-class:1.1.0-beta01
. Liste des commits de la version 1.1.0-beta01
Modifications apportées à l'API
- Ajoutez un paramètre de type de mise en page au composable
TimePicker
. Il permet d'utiliser différentes mises en page en fonction de la configuration de l'écran (Ia0e16). SearchBarDefaults
a été marqué comme expérimental. (I65561)- Ajout de l'élévation de l'ombre à
BottomSheetScaffold
(I94e0f) - Ajout de la prise en charge de l'affichage des sélecteurs de date sans la partie d'en-tête. Modifications de l'API pour autoriser la transmission d'un titre nul lors de la création d'un sélecteur de date. Vous pouvez désormais transmettre un titre, un en-tête et un
showToggleMode = false
nuls pour afficher un sélecteur sans en-tête. (Id3f3a, b/266132421, b/267194809)
Correction de bugs
- Les barres de recherche ne sont plus sélectionnées automatiquement lorsqu'elles sont rendues inactives. (I22a7c, b/261444487)
- Mise à jour de
DateRangePicker
pour permettre la sélection d'une plage avec la même date de début et de fin. (I16529, b/272882497) - Les champs de texte positionnent désormais correctement leurs éléments de texte lorsque la taille de police est plus petite que prévu. Cela peut entraîner une modification de quelques pixels dans vos applications en fonction des paramètres de police et du script. (I8b8d0)
- Les actions sémantiques des bottom sheets ont désormais des libellés. (I277b0)
Version 1.1.0-alpha08
8 mars 2023
Publication d'androidx.compose.material3:material3:1.1.0-alpha08
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha08
. Liste des commits de la version 1.1.0-alpha08
Nouvelles fonctionnalités
- Ajout de la prise en charge de
BottomSheetScaffold
etBottomSheetScaffoldState
. (I063d4)
Modifications apportées à l'API
- Ajout de fonctionnalités à
DatePickerState
etDateRangePickerState
pour permettre de définir des dates après la création initiale de l'état, ainsi que de réinitialiser les sélections en définissant des codes temporels nuls. La définition manuelle des dates doit être effectuée avec précaution. La nouvelle fonctionsetSelection
générera une exception si une date fournie ne respecte pas une condition préalable (voir la documentation). (Ifa645, b/268609314, b/270427389) - Renommez "Collapsed
SheetValue
" (SheetValue
réduit) en "PartiallyExpanded
" pour décrire plus précisément et de manière plus flexible le comportement dans cet état. (Ia1491) - Les noms des paramètres
ListItem
ont été remplacés par "_content" au lieu de "_text". Les getters par défaut sont désormaisReadOnlyComposables
, le cas échéant. (I69a25) - Passage des API Surface interactives de l'état expérimental à un niveau supérieur. (I90d59, b/261561812)
Correction de bugs
- Correction d'un problème à cause duquel l'état
HalfExpanded
deModalBottomSheet
n'était pas calculé correctement et la feuille semblait flotter. (I45e84, b/268411386) - Ajoutez une vérification
confirmValueChange
à l'appui sur le cache pourModalBottomSheet
. (I2311a, b/270425759) - Déplacez les actions sémantiques
BottomSheet
vers la poignée de déplacement. (I158ba) ModalBottomSheet
commande désormais la mise au point au lancement et gère le bouton Retour. (I4d2ab)ModalBottomSheet onDismissRequest
est désormais également géré lors des défilements imbriqués. (I655c5, b/268433166)
Version 1.1.0-alpha07
22 février 2023
Publication d'androidx.compose.material3:material3:1.1.0-alpha07
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
. Liste des commits de la version 1.1.0-alpha07
Nouvelles fonctionnalités
- Ajout d'un composable Time Input qui fonctionne avec
rememberTimePickerState()
et qui suit la spécification M3 pour la saisie de l'heure (Ia4fab) - Ajout d'une API
DateRangePicker
Material 3 pour sélectionner une plage de dates. (I7a6c3, b/267194809) - Ajout de la prise en charge du mode de saisie Material 3 pour la sélection de plages de dates via l'API
DateRangePicker
. (Ifdbc4) - Les couleurs des champs de texte peuvent désormais être personnalisées :
- Couleurs du champ de saisie et du texte d'espace réservé en fonction de l'état de sélection et d'erreur. Le paramètre
textColor
a été renomméunfocusedTextColor
, etplaceholderColor
a été renomméunfocusedPlaceholderColor
. - Couleur du conteneur pour les champs de texte remplis en fonction de l'état d'erreur avec le nouveau paramètre
errorContainerColor
.
- Couleurs du champ de saisie et du texte d'espace réservé en fonction de l'état de sélection et d'erreur. Le paramètre
- Les couleurs des champs de texte des menus déroulants exposés ont été mises à jour avec des paramètres pour prendre en charge la nouvelle API de préfixe et de suffixe. (I9c8b4, b/254284181, b/264766350)
Modifications apportées à l'API
- Rétablissement de certaines versions de l'API Slider et suppression des surcharges Slider redondantes couvertes par le nouveau Slider expérimental avec curseur et piste personnalisés. Promotion de
RangeSlider
en version stable. (Ie8fbd) defaultElevation
a été renomméelevation
dans les fonctions d'élévation du chip. (I0f872)- Les API de champ de texte Material 3 suivantes ne sont plus expérimentales :
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
,outlinedTextFieldPadding
. (Ieb5c0, b/261561819) TimePickers
is24Hour
utilise le paramètre système (I18856)- Suppression de l'annotation expérimentale des API de canevas. (Ibb51e, b/261565765, b/261436953)
Correction de bugs
- La forme par défaut de
ModalBottomSheet
est désormais toujoursSheetDefaults.ExpandedShape
. (I0dfca) - Améliorations de l'accessibilité pour Material 3
DatePicker
etDateRangePicker
. (I5087e) - Correction d'un bug où la contrainte de hauteur maximale est propagée et peut entraîner un plantage. (I30d8c)
- Suppression des rôles sémantiques des surfaces cliquables et sélectionnables, et mise à jour des composants qui les utilisaient pour définir les rôles à l'aide de modifier.semantics (I793d9)
Version 1.1.0-alpha06
8 février 2023
Publication d'androidx.compose.material3:material3:1.1.0-alpha06
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
. Liste des commits de la version 1.1.0-alpha06
Nouvelles fonctionnalités
- Les champs de texte sont désormais compatibles avec le texte du préfixe et du suffixe. (Ia8578, b/179884561)
- Ajout d'une fonction
TimePicker
pour afficher un outil de sélection de l'heure conformément à la spécification Material 3, utilisée avecTimePickerState
et la méthode pratiquerememberTimePickerState
. (I71910) - Une date saisie est désormais un mode d'affichage dans
DatePicker
. Il est maintenant possible de passer du sélecteur de date au mode de saisie de date, et vice versa. (Ieeff7) - API ajoutée pour
RichTextTooltips
. (I58ef3) - Implémentation de la bottom sheet modale pour Material 3, y compris
ModalBottomSheet
etModalBottomSheetDefaults
. Ajout également deSheetState
et derememberSheetState
, qui peuvent être utilisés pour les futurs composants de la feuille. (I0853a, b/244189383)
Modifications apportées à l'API
- Stabilisation de l'API
showSnackbar
. (I195c2, b/261424370) - Stabilisation des API pour le chip d'assistance et le chip de suggestion. (Ibb67b, b/261424370)
- Passage de l'API
ListItem
,ListItemDefaults
etListItemColors
en version non expérimentale. (I7e7fa, b/261438882) - Passage de
SliderPositions
,SliderDefaults.Thumb
etSliderDefaults.Track
en version stable, et ajout d'APISlider
etRangeSlider
non expérimentales contenant des pouces et des canaux personnalisés. Abandon des APISlider
etRangeSlider
précédentes. (Ie5ea6, b/261566890) Modifier.tooltipAnchor()
est désormais public, afin que les développeurs puissent le transmettre à l'ancre pour indiquer qu'une info-bulle doit s'afficher lorsque l'utilisateur appuie de manière prolongée. L'APIPlainTooltipBox
a été mise à jour pour ne plus permettre àTooltipState
d'avoir une valeur nulle. Dispose désormais d'une valeur par défaut. (Ie2fb7)ProgressIndicatorDefaults.circularTrackColor
a été marqué@Composable
à des fins de cohérence. (Id29cc)- Le getter
LocalMinimuTouchTargetEnforcement
a été restauré, marqué comme obsolète, puis redirigé versLocalMinimumInteractiveComponentEnforcement
. (I60dd5)
Version 1.1.0-alpha05
26 janvier 2023
Publication d'androidx.compose.material3:material3:1.1.0-alpha05
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
. Liste des commits de la version 1.1.0-alpha05
Nouvelles fonctionnalités
DatePickerDialog
et accessibilité- Pouce et piste personnalisés ajoutés à
RangeSlider
.
Mises à jour des dépendances
Compose UI
etCompose Material
dépendent désormais de Lifecycle 2.6.0.
Version 1.1.0-alpha04
11 janvier 2023
Publication d'androidx.compose.material3:material3:1.1.0-alpha04
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
. Liste des commits de la version 1.1.0-alpha04
Nouvelles fonctionnalités
- API
DatePicker
initiale permettant de choisir une date via une UI d'agenda. Cette API est toujours en cours de modification. (I722b9) - Ajout de la prise en charge des info-bulles en texte brut via
PlainTooltipBox
. (I0cdfb) - Barre de recherche (Iad128)
SwipeToDismiss
(I458a8, b/242889540)
Modifications apportées à l'API
- Ajout à la propriété sémantique
IsContainer
sur les surfaces. Cette propriété sera utilisée lors d'une modification ultérieure qui détermine l'ordre de navigation en fonction de la signification sémantique des éléments tels que les surfaces. (I63379) - Marquage des API associées au panneau de navigation comme stables. (Iab01e, b/261439597)
- Ajout d'un paramètre de couleur de suivi pour les indicateurs de progression circulaires, et d'un paramètre de limite de trait pour les indicateurs de progression circulaires et linéaires. (Ie668c, b/216325962, b/222964817)
- Possibilité de valeur nulle de type renvoyé accrue pour les fonctions obsolètes ou masquées. (Ibf7b0)
- Ajout de
Modifier.minimumInteractiveComponentSize
. Vous pouvez l'utiliser pour réserver une taille d'au moins 48 dp pour résoudre les problèmes d'interaction tactile si l'élément est plus petit. (I33f58, b/258495559) - Ajout d'une API expérimentale pour le composable
AlertDialog
comportant un emplacement de contenu. (Iec4a2)
Correction de bugs
- La progression des indicateurs de progression est désormais correctement limitée à la plage attendue. (I8a7eb, b/262262727)
Problème connu
- Lorsque vous passez de
androidx.compose.foundation:1.4.0-alpha03
àandroidx.compose.foundation:1.4.0-alpha04
, une erreurjava.lang.NoSuchFieldError
peut se produire. Le problème a été initialement signalé ici. Un correctif a été envoyé et sera disponible lors de la prochaine mise à jour de Compose. Pour contourner ce problème, mettez à jour votreandroidx.compose.material
etandroidx.compose.material3
vers la dernière version (1.1.0-alpha04) ou revenez à la version 1.4.0-alpha03 deandroidx.compose.foundation
.
Version 1.1.0-alpha03
7 décembre 2022
Publication d'androidx.compose.material3:material3:1.1.0-alpha03
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
. Liste des commits de la version 1.1.0-alpha03
Modifications apportées à l'API
consumedWindowInsets()
a été renomméconsumeWindowInsets()
, etwithConsumedWindowInsets()
onConsumedWindowInsetsChanged()
, et les modificateurs sont désormais publics. (Ie44e1)- Ajout d'une marge intérieure par défaut pour le bouton de texte avec icône à utiliser. (I8f662)
- Ajout de couleurs désactivées pour la barre de navigation et le rail. (Ia7892, b/258867034)
- Ajout d'une API de modificateur pour interroger les informations de défilement des ancêtres. (I2ba9d, b/203141462)
- Utilisation dans
Clickable
pour retarder correctement les interactions liées à une pression du doigt susceptible de devenir un événement de défilement. - Correction de
Clickables
qui ne retardait pas correctement les ondulations en cas d'utilisation dans unScrollable ViewGroup
. - Mise à jour des panneaux et des feuilles pour retarder les pressions du doigt lorsque les gestes peuvent devenir des événements de défilement.
Mises à jour des dépendances
Compose UI
etCompose Material
dépendent désormais de Lifecycle version 2.5.1. (I05ab0, b/258038814)
Version 1.1.0-alpha02
9 novembre 2022
Publication d'androidx.compose.material3:material3:1.1.0-alpha02
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
. Liste des commits de la version 1.1.0-alpha02
Modifications apportées à l'API
awaitFirstDown
etwaitForUpOrCancellation
acceptent désormaisPointerEventPass
pour plus de flexibilité (et correction deExposedDropdownMenuBox
qui affichait un menu lorsque l'utilisateur faisait défiler la page). (I7579a, b/212091796)- Ajout du paramètre
minLines
dans le texte Material et Material3, ainsi queTextField
etOutlinedTextField
, ce qui permet de définir la hauteur minimale du composant en termes de nombre de lignes. (I4af1d) - Abandon de la fonction
TopAppBarDefaults smallTopAppBarColors
au profit d'une nouvelle fonctiontopAppBarColors
à utiliser lors de la création d'uneTopAppBar
. (Ie6cb9) - Ajout du paramètre
minLines
dansBasicText
etBasicTextField
. Permet de définir la hauteur minimale de ces composables en nombre de lignes. (I24294, b/122476634)
Correction de bugs
- Création d'un extrait à partir du contenu des
IconButton
etIconToggleBotton
Material3 à la forme de la couche d'état du composant (par exemple, forme circulaire). (I9da8f) - Mise à jour des barres d'application supérieures Material3 grandes et moyennes afin d'appliquer la même couleur d'arrière-plan à toute la surface et de pouvoir remplacer les couleurs par défaut par des valeurs de couleur transparentes. (I67659, b/249688556, b/250838918)
Version 1.1.0-alpha01
24 octobre 2022
Publication d'androidx.compose.material3:material3:1.1.0-alpha01
et d'androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
. Liste des commits de la version 1.1.0-alpha01
Correction de bugs
- Corrections apportées à la barre d'application supérieure lorsque le titre est appliqué avec un style de texte et un pinceau. (If667e)
Version 1.0
Version 1.0.1
9 novembre 2022
Publication d'androidx.compose.material3:material3:1.0.1
et d'androidx.compose.material3:material3-window-size-class:1.0.1
. Liste des commits de la version 1.0.1
Correction de bugs
- Mise à jour des barres d'application supérieures Material3 grandes et moyennes afin d'appliquer la même couleur d'arrière-plan à toute la surface et de pouvoir remplacer les couleurs par défaut par des valeurs de couleur transparentes. (I67659, b/249688556, b/250838918)
Version 1.0.0
24 octobre 2022
Publication d'androidx.compose.material3:material3:1.0.0
et d'androidx.compose.material3:material3-window-size-class:1.0.0
. Liste des commits de la version 1.0.0
Principales fonctionnalités de la version 1.0.0
Première version stable de Compose Material 3.
Thématisation Material Design 3 et couleur dynamique Material You
Composants Material Design 3
- Badge
- Barre d'application inférieure
- Boutons
- Bouton d'action flottant et bouton d'action flottant étendu
- Fiches
- Case à cocher
- Chips
- Boîtes de dialogue
- Séparateur
- Menu déroulant
- Liste
- Barre de navigation
- Panneau de navigation
- Rail de navigation
- Indicateur de progression
- Case d'option
- Curseur
- Bouton bascule
- Onglets
- Champs de texte
- Barre d'application supérieure
- Icône
- Texte
- Surface
- Mise en page
- Couleur du contenu
Classe de taille de fenêtre
material3-window-size-class
est une nouvelle bibliothèque qui prend en charge les classes de taille de fenêtre, qui sont un ensemble de points d'arrêt de fenêtre d'affichage définis qui permettent de concevoir, de développer et de tester des mises en page d'application redimensionnables. Vous pouvez utilisercalculateWindowSizeClass
pour récupérer une instance de classe de taille de fenêtre, qui vous permettra de déterminer l'apparence de votre UI (tel que l'affichage d'un rail de navigation au lieu de la barre de navigation inférieure pour les grandes fenêtres, par exemple). Pour en savoir plus et accéder à un exemple d'utilisation, consultez la documentation de référence de l'API pourWindowSizeClass
.Pour en savoir plus, consultez cet article de blog.
Version 1.0.0-rc01
5 octobre 2022
Publication d'androidx.compose.material3:material3:1.0.0-rc01
et d'androidx.compose.material3:material3-window-size-class:1.0.0-rc01
. Liste des commits de la version 1.0.0-rc01
Modifications apportées à l'API
- Ajout d'un paramètre d'emplacement pour prendre en charge le texte dans l'API de champ de texte. (Iaac0d, b/227146125)
Version 1.0.0-beta03
21 septembre 2022
Publication d'androidx.compose.material3:material3:1.0.0-beta03
et d'androidx.compose.material3:material3-window-size-class:1.0.0-beta03
. Liste des commits de la version 1.0.0-beta03
Modifications apportées à l'API
ExposedDropdownMenuDefaults
affiche désormais une valeur de marge intérieure pour les éléments de menu. (I6e1e0)ExposedDropdownMenuBoxScope
comporte désormais un modificateurModifier.menuAnchor()
qui doit être transmis au champ de texte pour un comportement d'accessibilité (a11y) approprié. (I27fa3)- Ajout de deux méthodes surchargées pour l'API Slider actuelle afin que les utilisateurs puissent transmettre un curseur à faire glisser sur une piste pour remplir le curseur. (I21c00)
Correction de bugs
- Remplacement de la carte de couleurs du thème sombre pour le conteneur On Error par le ton 90. (Ic5612)
- Correction visant à permettre la définition d'un arrière-plan transparent pour les petites barres d'application supérieures Material 3. (I645e2, b/245575782)
Version 1.0.0-beta02
7 septembre 2022
Publication d'androidx.compose.material3:material3:1.0.0-beta02
et d'androidx.compose.material3:material3-window-size-class:1.0.0-beta02
. Liste des commits de la version 1.0.0-beta02
Modifications apportées à l'API
- Les encarts de composants par défaut introduits dans les composants m3 dans la version bêta01 ne tiennent plus compte des encarts IME.
- Le composant Material3 Scaffold dispose désormais d'un paramètre
contentWindowInsets
, qui permet de spécifier le nombre d'encarts à gérer pour l'emplacement du contenu. (Icf11a, b/243713323) - Abandon de la fonction expérimentale
SmallTopAppBar
de Material 3 et ajout d'une fonctionTopAppBar
équivalente. Veuillez adopter la nouvelle fonction. (I74404, b/226918634) - Ajout d'un contrôle sur les mouvements de glissement et d'ancrage de la barre d'application supérieure. (I15c81)
- Suppression de "startIndent" dans "Divider", déplacement la couleur vers le dernier paramètre. (If7be2)
Correction de bugs
- Les boîtes de dialogue s'identifient auprès des utilisateurs de TalkBack lorsqu'ils énoncent le mot Dialogue et qu'elles sont affichées. (I857ef)
Version 1.0.0-beta01
24 août 2022
Publication d'androidx.compose.material3:material3:1.0.0-beta01
et d'androidx.compose.material3:material3-window-size-class:1.0.0-beta01
. Liste des commits de la version 1.0.0-beta01
Documentation de référence de l'API
Pour voir les derniers thèmes, composants et autres composables disponibles, consultez la présentation de la documentation de référence de l'API Compose Material 3.
Modifications apportées à l'API
- Mise à jour de la barre d'application supérieure de Material 3 pour passer d'un état entièrement réduit à un état entièrement développé. Mise à jour de la fonction de comportement
TopAppBarDefaults
pour qu'elle soit composable et qu'elle fournisse des valeurs par défaut pour l'état de la barre d'application supérieure et les spécifications d'animation. (I642b3) - Mise à jour des signatures des composants du bouton d'action flottant pour correspondre à l'API Surface. (I3afaa)
- Ajout de la possibilité d'intégrer des encarts dans les barres d'application, les panneaux, les barres de navigation et les rails intégrés. Lorsqu'ils sont utilisés séparément ou avec Scaffold, ces composants gèrent automatiquement les encarts pour les développeurs. Notez que ce changement n'ajoute ni la gestion automatique des icônes de barre d'état ni la transparence de l'état et des barres de navigation. Veuillez continuer à procéder manuellement pour bénéficier d'une expérience bord à bord optimale. (I7e4e6, b/183161866)
- Mise à jour des composants par défaut afin de réduire la surface d'API et d'améliorer la flexibilité et les performances futures. (I31820)
- Réorganisation du chip et des paramètres de la feuille du panneau de navigation pour maintenir la cohérence dans l'API. (I45d0b)
- Suppression de
startIndent
dans "Divider" et déplacement de la couleur pour correspondre au dernier paramètre. (If7be2)
Version 1.0.0-alpha16
10 août 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha16
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
. Liste des commits de la version 1.0.0-alpha16
Nouvelles fonctionnalités
- Prise en charge de la spécification d'une largeur personnalisée dans un panneau de navigation. (Ia7f10)
Modifications apportées à l'API
- Réorganisation des paramètres des onglets et d'icône de début pour assurer la cohérence au sein de l'API. (Ie2637)
- Identification de
BadgeDefaults
comme étant expérimental. (I98ef3) - Suppression de la fonction de panneau de navigation obsolète. (I4f2db)
- Réorganisation des paramètres de curseur dans Material 3 pour assurer la cohérence dans l'API. (I0aee7)
- Réorganisation des paramètres
NavigationBar
etNavigationRail
pour assurer la cohérence dans l'API. (I51cda) - Réorganisation des paramètres dans Material 3 pour assurer la cohérence dans l'API. (If4ae1)
- Réorganisation des paramètres de curseur dans Material 3 pour assurer la cohérence dans l'API. (I62673)
- Remplacement du nom du paramètre des icônes par "actions" afin d'être cohérent avec la barre d'application supérieure. (Id75be)
- Identification de
Badge
etBadgedBox
comme étant expérimental, car l'alignement de l'ancre est toujours utilisé. (I1712e, b/236524516) - Remplacement des annotations
@ExperimentalMaterial3Api
au niveau des variantes de boutons d'icône par@OptIn
. (I070b5) - Séparation du contenu d'un panneau de navigation vers son propre composable afin de permettre la définition d'une largeur personnalisée pour celui-ci. (Ia7f10)
- Suppression de
Divider
dansMenuDefaults
etTabDefaults
. (I4e33c)
Version 1.0.0-alpha15
27 juillet 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha15
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
. Liste des commits de la version 1.0.0-alpha15
Nouvelles fonctionnalités
- Autorisation du glissement de la barre d'application supérieure à partir de la barre elle-même. (I65c00, b/205873416)
Modifications apportées à l'API
- Mises à jour des API
FilterChip
etElevatedFilterChip
afin de supprimer l'emplacementselectedIcon
et d'encourager la réutilisation deleadingIcon
pour afficher un état sélectionné. (Ie5dc2) - Ajout de rôles de couleur de bordure et de contour. (Id6d54)
- Correction des conventions d'attribution de noms pour les composables par défaut. (I62b27)
- Identification de
ListItemDefaults
etListItemColors
comme étant expérimental. (I1f3ec) - Modifications apportées à l'API de la barre d'application supérieure pour mieux refléter la signification de ses propriétés d'état. Identification de la barre d'application supérieure comme étant expérimentale. (Ic0ad8)
- Ajout des couleurs de sélection de texte à
TextFieldColors
pour une meilleure visibilité. (Iba1b8) - Ajout de
ButtonDefault.ButtonWithIconContentPadding
à utiliser avec les boutons contenant une icône. (I2bf9c) - Identification des champs de texte comme expérimentaux pour gagner en flexibilité lors des modifications futures de l'API. (I127b5)
- Suppression de l'annotation
@ExperimentalMaterial3Api
dans la fonctionCheckbox
. (I5eefc) - Suppression de l'annotation
@ExperimentalMaterial3Api
dans la fonctionRadioButton
. (I17e2a) - Suppression de l'annotation
@ExperimentalMaterial3Api
dans les fiches non interactives. (I9bd49) - Mise à jour de divers objets par défaut des composants pour inclure des couleurs, des formes, etc. (I96e11)
Correction de bugs
- Suppression des icônes de fin ne fonctionnant pas dans les exemples de chips d'entrée pour éviter toute confusion auprès des utilisateurs dans l'application de catalogue. (I9846a)
Version 1.0.0-alpha14
29 juin 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha14
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
. Liste des commits de la version 1.0.0-alpha14
Nouvelles fonctionnalités
- Ajout de l'implémentation de la liste M3 ; consultez la documentation pour voir un exemple d'utilisation. (Id7a20)
Modifications apportées à l'API
- Remplacement du nom de paramètre "values" par "value" dans
RangeSlider
. (I3b79a) - Modifications d'API apportées à l'implémentation d'
InputChip
pour permettre la sélection d'un état conformément aux spécifications de Material Design. Prise en charge supplémentaire au niveau des couleursFilterChip
lorsque l'état désactivé est sélectionné. (I55244, b/235792432) - Ajout du bouton d'action flottant par défaut
BottomAppBar
. (Ida4c8) - Ajout de
ColorScheme.surfaceColorAtElevation
. (Id41af) - Mise à jour des interfaces dans les bibliothèques Compose, désormais créées à l'aide des méthodes d'interface jdk8 par défaut. (I5bcf1)
- Prise en charge de l'implémentation de la fonction Comparable par
WindowWidthSizeClass
etWindowHeightSizeClass
, qui permet de les comparer en utilisant des opérateurs (<, <=, >=, >) et d'autres API. (I747d0)
Correction de bugs
- Mise à jour de l'exemple de badge pour fournir une description de contenu plus pertinente. (I10b9d)
- Ajout d'une option permettant d'utiliser la taille de police du système dans le sélecteur de thème du catalogue Material 3. (I10605)
- Ajout d'un exemple de code pour le badge et les indicateurs de progression indéterminés. (I8fbe0)
Version 1.0.0-alpha13
1er juin 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha13
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
. Liste des commits de la version 1.0.0-alpha13
Modifications apportées à l'API
- Conservation de la position de la barre d'application supérieure lors d'un changement de configuration. (I10459, b/216160958)
Version 1.0.0-alpha12
18 mai 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha12
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
. Liste des commits de la version 1.0.0-alpha12
Correction de bugs
- Le parent du curseur peut maintenant avoir une largeur correspondant à 0. (b/231707291)
Version 1.0.0-alpha11
11 mai 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha11
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
. Liste des commits de la version 1.0.0-alpha11
Nouvelles fonctionnalités
- Ajout de
RangeSlider
à Material 3. (I18e38) - Ajout de la compatibilité
AssistChip
etInputChip
avec Material 3. (I0d25a) - Ajout de la compatibilité
FilterChip
etSuggestionChip
avec Material 3. (I9fdf3)
Modifications apportées à l'API
- Remplacement du nom du composable
TextFieldDefaults.BorderStroke
permettant de tracer un trait de bordure dansOutlinedTextField
parTextFieldDefaults.BorderBox
. (I5f295) - Changement des modifications visuelles m3. (Iab30e)
- Prise en charge de la transmission des couleurs aux boutons d'icône standards. (Ia2445)
Correction de bugs
- Ajout d'une vérification lint pour Material/Scaffold, afin d'assurer l'utilisation de la marge intérieure. (I72293, b/226951418)
Version 1.0.0-alpha10
20 avril 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha10
et d'androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
. Liste des commits de la version 1.0.0-alpha10
Nouvelles fonctionnalités
material3-window-size-class
est une nouvelle bibliothèque qui prend en charge les classes de taille de fenêtre, qui sont un ensemble de points d'arrêt de fenêtre d'affichage définis qui permettent de concevoir, de développer et de tester des mises en page d'application redimensionnables. Vous pouvez utilisercalculateWindowSizeClass
pour récupérer une instance de classe de taille de fenêtre, qui vous permettra de déterminer l'apparence de votre UI (tel que l'affichage d'un rail de navigation au lieu de la barre de navigation inférieure pour les grandes fenêtres, par exemple). Pour en savoir plus et accéder à un exemple d'utilisation, consultez la documentation de référence de l'API pourWindowSizeClass
. Pour vous familiariser avec les définitions de classe de taille de fenêtre, consultez les conseils publics sur la prise en charge de différentes tailles d'écran.
Modifications apportées à l'API
- Ajout de l'élévation du bouton d'action flottant par défaut pour
BottomAppBar
, suppression du lambda de fin dans le champBottomAppBar
avec le bouton d'action flottant. (I92c47) - Ajout des éléments Material 3
FilledIconButton
,FilledTonalIconButton
etOutlinedIconButton
. (Ib2bda) - Mise à jour de l'API Material 3 Snackbar afin d'accepter les valeurs de couleur pour l'action facultative et l'action "Ignorer". (Ibe4b4)
- Abandon de la consommation partielle (position OR vers le bas) dans
PointerInputChange
. Vous pouvez utiliserconsume()
pour consommer complètement le changement. Vous pouvez utiliserisConsumed
pour déterminer si le changement a déjà été consommé par un tiers. - Mise à jour de
PointerInputChange::copy()
, qui crée désormais toujours une copie superficielle. Autrement dit, les copies dePointerInputChange
seront consommées une fois que l'une des copies aura été consommée. Si vous souhaitez créer unPointerInputChange
non associé, utilisez plutôt le constructeur. (Ie6be4, b/225669674) - Modifications apportées à l'API Cards afin de recevoir les couleurs du conteneur et du contenu via une interface
CardColors
, et de permettre la désactivation des fiches cliquables. (I927df) - Remplacement du nom du paramètre
backgroundColor
parcontainerColor
dans les champs de texte Material 3 afin d'améliorer la cohérence avec les autres composants. (I6fbd9)
Correction de bugs
- Mises à jour de l'élément standard
IconButton
pour qu'il corresponde avec la spécification Material 3. (I09Eab) - Déplacement de la hauteur de la barre supérieure de Material Scaffold vers la marge intérieure qui s'affiche au niveau du contenu, de sorte que le contenu apparaisse sous la barre d'application supérieure. Si les valeurs
PaddingValues
sont ignorées, le contenu risque d'être obscurci par la barre supérieure. (I83cbc, b/217776202)
Version 1.0.0-alpha09
6 avril 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha09
. Liste des commits de la version 1.0.0-alpha09
Nouvelles fonctionnalités
- Ajout de l'API Material 3 Switch. (I2c3ad)
Modifications apportées à l'API
- Ajout de la prise en charge des menus déroulants comportant des champs de texte (également appelés "menus déroulants exposés" ou "boîtes combinées"). (I1b832)
- Ajout du paramètre de forme ajouté au sous-système MaterialTheme et Shape. (I37426)
- Ajout d'un paramètre développé à
ExtendedFloatingActionButton
pour contrôler si le bouton d'action flottant est développé ou réduit, avec des animations entre chaque état. Ajout d'une surcharge pour les boutons d'action flottants étendus, avec un texte de fin sans icône. (Iba7f1)
Version 1.0.0-alpha08
23 mars 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha08
. Liste des commits de la version 1.0.0-alpha08
Nouvelles fonctionnalités
- Ajout de la prise en charge des champs de texte Material 3. (I795cc, b/199377790)
Modifications apportées à l'API
- Ajout d'un séparateur par défaut au menu. (I01374)
- Ajout du paramètre de couleur
surfaceTint
à la classeColorScheme
. (I2f558)
Correction de bugs
- Correction au niveau du bouton Material3 pour lire sa valeur de style de texte par défaut à partir du MaterialTheme. (Ie62fc)
Version 1.0.0-alpha07
9 mars 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha07
. Liste des commits de la version 1.0.0-alpha07
Modifications apportées à l'API
- Mises à jour de l'API Material 3 Surface qui restaure les fonctions surchargées pour les surfaces cliquables, et ajout d'une fonction prenant en charge les surfaces qui peuvent être sélectionnées et activées. (I4bf18)
- Mise à jour de
LazyVerticalGrid
etLazyHorizontalGrid
, désormais considérés comme stables. (I307c0) LazyVerticalGrid/LazyHorizontalGrid
et des API associées ont été déplacées dans le sous-package .grid. Remplacez vos importations d'androidx.compose.foundation.lazy par androidx.compose.foundation.lazy.grid. (I2d446)- Annulation d'une modification précédente qui consistait à ne dépendre que d'une vue pour
WindowInsetsControllerCompat
, et à exiger de nouveau une fenêtre pour gérer certains indicateurs de fenêtre. Abandon deViewCompat.getWindowInsetsController
au profit deWindowCompat.getInsetsController
pour assurer l'utilisation de la fenêtre appropriée (par exemple, si la vue se trouve dans une boîte de dialogue). (I660ae, b/219572936) - Ajout d'une API
LazyVerticalGrid
permettant de définir les tailles de l'axe transversal. (I17723)
Correction de bugs
- Mises à jour de l'API Card pour suivre les modifications apportées à l'API Surface. (I3c8b9)
Version 1.0.0-alpha06
23 février 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha06
. Liste des commits de la version 1.0.0-alpha06
Modifications apportées à l'API
- Ajout de
NavigationDrawerItem
, qui représente une destination unique dans les panneaux. (Ic396f, b/218286829) - Ajout de
PermanentNavigationDrawer
etDismissibleNavigationDrawer
en tant qu'API expérimentales. Ces panneaux conviennent bien aux appareils à grand écran. (I5f8ab, b/218286829) - Ajout de la prise en charge de la barre d'application Material 3. (Ic432a)
- Remplacement du nom de
NavigationDrawer
parModalNavigationDrawer
. (I1807d, b/218286829) - Ajout des jetons et de la classe Material 3 Slider. (I1ccee)
- Ajout de l'implémentation de "Tab" ; consultez la documentation pour voir un exemple d'utilisation. (Ie0146)
Correction de bugs
- Correction d'un problème qui provoquait la sélection d'un titre de barre d'application vide dans la navigation linéaire du lecteur d'écran
TalkBack
. (Id4690) - Ajout de
IconSize
au groupeFloatingActionButtonDefaults
. (Ia71cf) - Correction d'un bug pour les boutons
AlertDialog
masqués lorsqu'un texte long est ajouté avec un élémentLazyColumn
. (Ib2cc9, b/216663029)
Version 1.0.0-alpha05
9 février 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha05
. Liste des commits de la version 1.0.0-alpha05.
Nouvelles fonctionnalités
Ajout de composants Material Design 3
- Menu déroulant
- Fiches
Modifications apportées à l'API
- Abandon de la fonction
Surface
qui accepte un rappel onClick. Les surfaces cliquables doivent être créées avecInteractionSource
etModifier.clickable()
. (I211c6) - Ajout de la prise en charge de l'élévation en cas de pression et de ciblage des boutons d'action flottants. (Ibb584)
- Modification de l'API
Surface
pour recevoir une InteractionSource qui permet de contrôler son apparence dans différents états. (Iafbc8)
Correction de bugs
- Ajout des couleurs tertiaires manquantes dans les combinaisons de couleurs dynamiques. (I456c4, b/214588434)
Version 1.0.0-alpha04
26 janvier 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha04
. Liste des commits de la version 1.0.0-alpha04
Modifications apportées à l'API
- Ajout de
NonRestartableComposable
aux méthodes correspondant à des surcharges de méthodes existantes sans logique complexe. Cela réduit le nombre de vérifications (d'égalité) de la mémorisation générées par le compilateur pour tous les paramètres répétés dans la fonction interne appelée. (I90490) - Ajout du séparateur Material 3. (Ica5fc)
- Identification des éléments "Checkbox" et "RadioButton" avec une annotation d'API expérimentale. (Ie44bb)
- Ajout de la prise en charge des indicateurs de progression de Material 3. (Iff232, b/205023841)
Correction de bugs
- Mise à jour une couleur de conteneur
TextButton's
désactivée pour qu'elle soit transparente. (I6b248, b/213339737)
Version 1.0.0-alpha03
12 janvier 2022
Publication d'androidx.compose.material3:material3:1.0.0-alpha03
. Liste des commits de la version 1.0.0-alpha03
Correction de bugs
- Ajout de
LocalIndication
auMaterialTheme
de Material 3. (I7ce4e) - Correction de l'arrondi d'angle appliqué aux cases à cocher. (I38b03, b/175198975, b/202309440)
Mises à jour de la dépendance
- Elle dépend désormais de Kotlin
1.6.10
.
Version 1.0.0-alpha02
1er décembre 2021
Publication d'androidx.compose.material3:material3:1.0.0-alpha02
. Liste des commits de la version 1.0.0-alpha02
Nouvelles fonctionnalités
- Ajout de la prise en charge des cases à cocher et des cases d'option.
- Mise à jour pour assurer la compatibilité avec Kotlin
1.6.0
.
Modifications apportées à l'API
- Suppression du panneau de Material 3 Scaffold. (I04f51)
- Ajout de la prise en charge de
Checkbox
pour Material 3. (Id5542) - Ajout de la prise en charge de
RadioButton
pour Material 3. (I20334)
Correction de bugs
- Réduction rayon d'onde de l'élément
IconButton
de 40 dp à 20 dp. (I68bbe, b/206674345) - Changement du chemin d'accès rapide de la chaîne du port pour
Text
à partir decompose.material
. (I30b03) - Correction du bouton codé en dur pour qu'il soit toujours activé. (Iea832, b/205335456)
Version 1.0.0-alpha01
27 octobre 2021
Publication d'androidx.compose.material3:material3:1.0.0-alpha01
. Liste des commits de la version 1.0.0-alpha01
Nouvelles fonctionnalités
Thématisation Material Design 3 et couleur dynamique Material You
Composants Material Design 3
- Boutons
- Bouton d'action flottant et bouton d'action flottant étendu
- Boîtes de dialogue
- Barre de navigation
- Panneau de navigation
- Rail de navigation
- Barre d'application supérieure
- Badge
- Icône
- Texte
- Surface
- Mise en page
- Couleur du contenu
Pour en savoir plus, consultez la section Material Design 3 et Material You du guide sur la thématisation Material de Compose.