Износостойкий композиционный материал 3
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
27 августа 2025 г. | 1.5.0 | - | - | - |
Объявление зависимостей
Чтобы добавить зависимость от Wear, необходимо добавить репозиторий Google Maven в свой проект. Подробнее см. в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
классный
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.0" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Котлин
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Wear Compose Material3 Версия 1.5
Версия 1.5.0
27 августа 2025 г.
Выпущен androidx.wear.compose:compose-*:1.5.0
. Версия 1.5.0 содержит следующие коммиты .
Важные изменения с версии 1.4.0
Первый выпуск библиотеки Wear Compose Material 3, поддерживающей новую систему дизайна Material 3 Expressive. В этот выпуск входят:
- Обновленная
MaterialTheme
и динамическая цветовая тема. - Новые компоненты
AppScaffold, ScreenScaffold
,HorizontalPagerScaffold
иVerticalPagerScaffold
для компоновки структуры экрана и координации анимацийScrollIndicator
,TimeText
,HorizontalPageIndicator
иVerticalPageIndicator
. - Формоизменение
IconButton
,TextButton
,IconToggleButton
иTextToggleButton
с вариациями, которые анимируются при нажатии или установке отметки. -
EdgeButton
, имеющая специальную форму, предназначенную для нижней части экрана. -
ButtonGroup
представляет собой выразительную группу кнопок, расположенных в ряд и меняющих свою форму при касании. -
AlertDialog
иConfirmationDialog
с вариациями для дополнительного диалогового содержимого. - Компоненты
TimePicker
иDatePicker
. - Индикаторы прогресса включают
CircularProgressIndicator
(с сегментированной вариацией),ArcProgressIndicator
иLinearProgressIndicator
.
Кроме того, Wear Compose Foundation 1.5.0 включает в себя следующее:
-
TransformingLazyColumn
— ленивый вертикально прокручиваемый список, поддерживающий анимацию масштабирования и морфинга. - Поддержка пагинации в Wear Compose Foundation с помощью
HorizontalPager
иVerticalPager
. - Иерархические фокус-группы — используются для аннотирования компонуемых элементов в приложении с целью отслеживания активной части композиции и координации фокуса.
Узнайте больше о ( Material 3 Expressive для Wear OS )
Версия 1.5.0-rc02
13 августа 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-rc02
. Версия 1.5.0-rc02 содержит следующие коммиты .
Исправления ошибок
- Исправлена ошибка в
TimePicker
, из-за которой длинные интернационализированные строки для периода (AM/PM) могли нарушить макет. ( I0fa81 )
Версия 1.5.0-rc01
30 июля 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-rc01
. Версия 1.5.0-rc01 содержит следующие коммиты .
Исправления ошибок
-
TimePicker
теперь полностью управляется локалью пользователя, используяDateFormat.getBestDateTimePattern
для определения порядка и содержимого своих элементов выбора и разделителей. Это исправляет некорректный порядок столбцов для языков CJK, устраняет проблемы с написанием справа налево в таких языках, как арабский, использует локализованные разделители и поддерживает форматы часов 0–11 и 1–12 в зависимости от локали ( I5d543 ). -
DatePicker
теперь отображает месяц в числовом формате в некоторых локалях, например, CJK, чтобы избежать смешивания числовых и языковых форматов (например, 2025 | 07 | 02 вместо 2025 | 7月 | 02). Это изменение применяет эвристику, которая проверяет, используются ли в локали языковые суффиксы для обозначения года, и, если да, меняет формат месяца с текстового (MMM) на числовой (MM) для обеспечения согласованности. ( Ia93fe ) - Вертикальное пространство для заголовка в компоненте «Выбор» теперь постоянно, что предотвращает видимое смещение при выборе столбца выбора, особенно в режиме
Talkback
. ( I7f8b7 ) - Исправлена ошибка доступности, вызванная отображением
HorizontalPageIndicator
иVerticalPageIndicator
на весь экран. Индикаторы страниц больше не отображаются на весь экран и будут позиционироваться автоматически при использовании сHorizontalPagerScaffold
илиVerticalPagerScaffold
. Если шаблон пейджера не используется, укажите выравнивание явно с помощьюmodifier = Modifier.align(Alignment.BottomCenter)
дляHorizontalPageIndicator
иmodifier =Modifier.align(Alignment.CenterEnd)
дляVerticalPageIndicator
. ( I3a0ad ) - Направление смахивания в
SwipeToReveal
теперь одинаково дляLayoutDirections
как LTR, так и RTL. ( I6d427 ) - Восстановлено вертикальное центрирование
SwipeToReveal
для действий. ЕслиhasPartiallyRevealedState = true
,RevealState
должен быть сброшен доRevealValue.Covered
вызывающим кодом при прокрутке. ( I6473d ) -
SwipeDismissableNavHost
теперь корректно обрезает содержимое для API 36 и более поздних версий. ( Ib9a44 )
Версия 1.5.0-beta06
16 июля 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-beta06
. Версия 1.5.0-beta06 содержит следующие изменения .
Исправления ошибок
- Исправлена анимация
EdgeButton
, когдаLazyColumn
илиScalingLazyColumn
имеютreverseLayout = true
. ( I46a1a ) - Исправлена ошибка в
ScreenScaffold
, из-за которой функция Touch-to-Explore не работала в режиме Talkback, если был указанScrollIndicator/PageIndicator
. ( I6dcee ) -
TransformingLazyColumn
теперь позволяет выполнять пользовательскую трансформацию изTransformationSpec
путем считывания значенияitemHeight
, предоставленногоTransformationSpec
в фоновом рисовщике. ( I6a599 ) - Анимированные переходы цветов для
IconButton
включены/выключены для соответствияIconToggleButton
. ( Ife10a ) - Убрано ограничение минимального размера сечения в
CircularProgressIndicator
, чтобы избежать заметного скачка к минимальному размеру точки при анимации. В связи с этим изменением параметрtargetProgress
вdrawCircularProgressIndicator
теперь не используется. ( I33309 ) - В средстве выбора теперь есть семантическая роль
ValuePicker
, которую могут использовать программы чтения с экрана для повышения доступности. Кроме того, в средстве выбора обновлены метки щелчков, которые различаются между изменением значения в режиме «только для чтения» и выбором текущего значения в противном случае. ( I33309 )
Версия 1.5.0-beta05
2 июля 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-beta05
. Версия 1.5.0-beta05 содержит следующие изменения .
Исправления ошибок
- Обновлена документация для уточнения использования
Modifier.edgeSwipeToDismiss
( I78cb5 ). - Исправлена ошибка, из-за которой в ленивых списках с помощью
SwipeToReveal
могло отображаться несколько раскрытых элементов ( I1d4f6 ). - Формы контейнеров в
TransformingLazyColumn
теперь масштабируются, чтобы избежать обрезки содержимого. ( I9221a ) - Метки
TimePicker
иDatePicker
для часов/минут/секунд или года/месяца/дня теперь имеют семантику заголовков для программ чтения с экрана ( I77d8b ) - Убрана пауза между циклами в неопределенном
CircularProgressIndicator
( Iaf0bb ) - Исправлена ошибка анимации в
TransformingLazyColumn
при удалении элементов. ( I73034 ) - Исправлена обработка элементов привязки в
TransformingLazyColumn
при удалении элементов. ( I841a8 ) -
PickerGroup
теперь анимирует элементы выбора горизонтально при включении автоцентрирования и изменении выбранного (центрированного) элемента выбора. ( Ic82c4 )
Версия 1.5.0-beta04
18 июня 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-beta04
. Версия 1.5.0-beta04 содержит следующие коммиты .
Исправления ошибок
- Исправлена ошибка макета в
TransformingLazyColumn
, из-за которой содержимое, помещающееся на экране, теперь правильно выравнивается по верхнему краю экрана ( I80115 ). - Исправлена проблема с
TransformingLazyColumn
, из-за которой нижний элемент неправильно масштабировался при прокрутке списка до самого низа с помощьюEdgeButton
. Теперь при восстановлении макета ход прокрутки следует градиентному спуску. ( Iea375 ) -
TransformingLazyColumn
теперь считывает высоту элемента внутри фонового рисователя, что позволяет настраиваемымTransformationSpecs
реализовывать морфинг. ( I022f0 ) -
SwipeToReveal
теперь правильно центрирует отображаемые действия по вертикали. ( I4419b ) - Исправлена ошибка в
SwipeToReveal
, из-за которой функция не работала корректно при смахивании для закрытия, если на экране одновременно использовались и просмотр, и создание сообщения. ( I5dc0e ) - Исправлена ошибка, из-за которой действия
SwipeToReveal
отображались с вертикальным смещением при прокрутке. ( I29444 ) -
AlertDialog
,ConfirmationDialog
,OpenOnPhoneDialog
иSwipeToReveal
теперь округляют отступы и размеры, которые рассчитываются как процент от размера экрана. ( I76367 ) -
ButtonDefaults.outlinedButtonBorder
теперь обновляется в соответствии с изменениями размера включенного/выключенного состояния ( If2ddd ) - Исправлена ошибка высоты
EdgeButton
, возникавшая на сложных экранах с Pager иScreenScaffold
. ( I946e3 ) - Исправлено состояние гонки, которое могло привести к остановке анимации плейсхолдеров. ( I53530 )
- Улучшена производительность
HorizontalPageIndicator
иVerticalPageIndicator
за счет рисования на холсте. ( Ifae1e ) - Уточнена форма EdgeButton для сглаживания переходов между эллипсисом и кругами, составляющими контур. ( I7721e )
- Исправлена ошибка в
LevelIndicator
, приводившая к остановке анимации из-за ненужных перекомпозиций. ( I45d08 )
Версия 1.5.0-beta03
4 июня 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-beta03
. Версия 1.5.0-beta03 содержит следующие коммиты .
Изменения API
-
OpenOnPhoneDialog
теперь озвучивает только текст сообщения в TalkBack и пропускает семантику значка.OpenOnPhoneDialogDefaults
обновлены: параметрыiconContentDescription
иcontentDescription
удалены изicon()
. Кроме того,ConfirmationDialogDefaults
теперь имеет параметры-модификаторы для компонуемых объектовSuccessIcon
иFailureIcon
. ( Id2ae2 )
Исправления ошибок
- Изменён порядок применения параметров
SurfaceTransformation
. Ранее преобразования, применяемые к компонентам Wear Material3, выполнялись следующим образом: рисование фона, преобразование контейнера, преобразование содержимого. Теперь первые два инвертируются, и между ними применяется любой переданный модификатор, поэтому на него влияют преобразования контейнера. Это исправляет такие случаи, как использование эффекта мерцания заполнителя с элементами в TLC, использующими параметр преобразования. ( I786cf ) - Добавлен
RevealState.Saver
для использования при восстановлении состоянияSwipeToReveal
при повторном создании активности или процесса. ФункцияrememberRevealState
теперь использует этот Saver по умолчанию. ( Ie0ecb ) - Кнопки основных и дополнительных действий
SwipeToReveal
должны по умолчанию иметь значениеButtonDefault.Height
(исправлена ошибка, из-за которой они заполняли максимальную высоту для более высоких кнопок). ( Ibfba1 ) - Изменено
SwipeToReveal
для сброса последнего взаимодействовавшего компонента при выполнении жеста смахивания вправо. ( Ia8450 ) -
SwipeToReveal
был изменен для установки в состояниеRevealing
, когда конечная позиция смахивания находится между якорями раскрытия и раскрытия и ближе к якорю раскрытия. ( If4458 ) - Теперь содержимое
ButtonGroup
правильно инвертируется в макете RTL ( Ib378d ) -
AnimatedText
теперь поддерживает направление текста справа налево ( I4533c ) -
TransformingLazyColumn
теперь правильно изменяет размеры элементов при удалении нижнего элемента ( Idacab ) -
TransformingLazyColumn
теперь выполняет только один проход измерения, что повышает производительность за счет сокращения времени кадра. ( I501a1 )
Версия 1.5.0-beta02
20 мая 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-beta02
. Версия 1.5.0-beta02 содержит следующие коммиты .
Исправления ошибок
- Обновлены базовые профили для библиотек фундамента, материалов и материалов3. ( I53f06 )
- Исправлена ошибка в
TransformingLazyColumn
, из-за которой элементы изменялись в размере при удалении нижнего элемента. ( Idacab ) - Исправлена ошибка
TransformingLazyColumn
, из-за которой список застревал в верхней или нижней части списка. ( I49d00 ) -
OpenOnPhoneDialog
в TalkBack должен озвучивать изогнутый текст, а не описание содержимого значка. ( I4efe8 ) - Исправлена ошибка в
SwipeToReveal
, из-за которой сообщалось о неправильной привязке вRevealState.currentValue
, еслиhasPartiallyRevealedState
имел значение false. ( I9c7cf ) - Кнопки отмены
SwipeToReveal
теперь по умолчанию имеютButtonDefaults.Height
. ( I1f6c8 ) - Производительность
BasicSwipeToDismissBox
была улучшена за счет отказа от использования Canvas для рисования сеток. ( I68f2c ) - Исправлена ошибка доступности в Slider, из-за которой объявленный процент не соответствовал значению после обновлений ( I91146 ).
- Исправлена ошибка в реализации
placeholderShimmer
. ( Iee39b - Производительность
TransformingLazyColumn
была улучшена за счет оптимизации расчетаScrollProgress
на 30%. ( I4c4cb )
Версия 1.5.0-beta01
7 мая 2025 г.
Выпущена androidx.wear.compose:compose-*:1.5.0-beta01
. Версия 1.5.0-beta01 содержит следующие изменения .
Выпуск Compose для Wear OS версии 1.5.0-beta01 означает, что в этом выпуске библиотека имеет полный набор функций, а API заблокирован (за исключением случаев, помеченных как экспериментальные).
Wear Compose 1.5.0-beta01 включает библиотеку Wear Compose Material3, которая поддерживает новую систему дизайна пользовательского интерфейса Material 3 Expressive. Рекомендуется перейти с Material на Material3, чтобы использовать новый визуальный дизайн в приложениях и воспользоваться следующими новыми компонентами:
-
MaterialTheme
для обновленных и расширенных цветовых схем, типографики и форм, которые привнесут в ваши проекты глубину и разнообразие. - Динамическая цветовая схема, которая автоматически генерирует цветовую схему для вашего приложения в соответствии с цветами циферблата часов.
- Новые компоненты по умолчанию автоматически адаптируются к большим размерам экрана.
- Изменение формы — компоненты круглой кнопки, такие как
IconButton
,TextButton
,IconToggleButton
иTextToggleButton
поддерживают вариации, которые анимируются при нажатии или выборе. -
EdgeButton
— новая кнопка специальной формы, прилегающая к краю экрана. - Scaffolds — представляем
AppScaffold
иScreenScaffold
для разработки структуры экрана и координации анимацийScrollIndicator
иTimeText
. - Кнопки — множество кнопок в форме стадиона поддерживаются гибкими однослотовыми контейнерами и многослотовыми вариантами для кнопок с иконками и надписями.
CheckboxButton
иSwitchButton
предоставляются для переключателей, аRadioButton
— это доступная кнопка выбора (также доступны варианты «Разделённые» для переключателей и кнопок выбора). -
ButtonGroup
— реализует выразительную группу кнопок в ряду, которые меняют форму при касании. - Варианты
AlertDialog
поддерживают кнопки «ОК/Отмена» илиEdgeButton
. -
ConfirmationDialog
позволяет отображать сообщение с задержкой, поддерживая специальные анимации для успешного завершения, неудачного завершения и вариантов открытия по телефону. - Поддерживаются варианты Pickers —
TimePicker
иDatePicker
, а также компоненты Picker иPickerGroup
для создания собственных экранов Pickers. -
ProgressIndicators
— поддерживаются круговые и линейные индикаторы прогресса (CircularProgressIndicator
имеет сегментированные и неопределенные варианты). - Карточки — доступно несколько вариантов карточек, включая
TitleCard
, предлагающий специальные макеты для карточек с заголовком, временем, подзаголовком или полем для содержания.TitleCard
также можно использовать фоновое изображение, чтобы подчеркнуть смысл информации на карточке. - Компоненты Pagers —
HorizontalPagerScaffold
,VerticalPagerScaffold
иAnimatedPage
координируют анимациюHorizontalPageIndicator
иVerticalPagerIndicator
.HorizontalPager
иVerticalPager
входят в библиотеку Wear Compose Foundation. - Заполнители — рисуют каркасную форму над компонентом для ситуаций, когда временное содержимое отсутствует.
- Ползунки и степперы — как ползунки, так и степперы позволяют пользователям выбирать из диапазона значений. Ползунки более компактны и могут быть сегментированы, тогда как степпер — это полноэкранный компонент, обычно работающий в паре с
StepperLevelIndicator
. -
SwipeToReveal
— используется для добавления дополнительных действий к компонуемому элементу при его смахивании справа налево.
Кроме того, Wear Compose Foundation 1.5.0-beta01 включает в себя следующие новые компоненты:
-
TransformingLazyColumn
— ленивый, вертикально прокручиваемый список, поддерживающий анимацию масштабирования и морфинга. - Иерархические фокус-группы — используются для аннотирования компонуемых элементов в приложении, отслеживания активной части композиции и координации фокуса.
- Пейджеры — компоненты
HorizontalPager
иVerticalPager
, созданные на основе компонентов Compose Foundation с усовершенствованиями, специфичными для Wear, для повышения производительности и соответствия рекомендациям Wear OS.
Изменения API
- Обновлен API иерархического фокуса —
Modifier.hierarchicalFocus
переименован вModifier.hierarchicalFocusGroup
и удален параметр обратного вызова; удалена перегрузкаModifier.hierarchicalFocusRequester
с параметромFocusRequester
; создан новыйCompositionLocal
,LocalScreenIsActive
, чтобы компоненты могли сообщать и проверять, какой экран является активным. ( I5ff7c ). - Устаревший
SwipeToReveal
из Wear Compose Foundation заменен APISwipeToReveal
в Wear Compose Material и Wear Compose Material3. Чтобы продолжить использование API, замените импортSwipeToReveal
из Wear Foundation на импорт Wear Compose Material/Wear Compose Material3. ( Ia147d ). - Зависимости Wear Compose Material3
SwipeToReveal
от Foundation были перенесены в пакет material3, например,RevealValue
,RevealDirection
,RevealActionType
,RevealState
иrememberRevealState
. Разработчикам следует изменить импорт этих классов и функций сandroidx.wear.compose.foundation
наandroidx.wear.compose.material3
. ( I640e6 ). - Обновлен API Wear Compose Material3
SwipeToReveal
следующим образом: добавлены параметрыprimaryAction
,onFullSwipe
,secondaryAction
,undoPrimaryAction
,undoSecondaryAction
иhasPartiallyRevealedState
в составной элементSwipeToReveal
; удалена возможность настройкиpositionalThreshold
иanimationSpec
изRevealState
; удаленыlastActionType
,revealThreshold
и width изRevealState
; изменен конструкторRevealState
для принятияRevealDirection
вместо якорей; удалены функцииcreateRevealAnchors
, якори иbidirectionalAnchors
; функцииSwipeToRevealScope
primaryAction
,secondaryAction
,undoPrimaryAction
иundoSecondaryAction
переименованы вPrimaryActionButton
,SecondaryActionButton
,UndoActionButton
и преобразованы в составные функции; помеченRevealActionType
как внутренний. ( I885d0 ). - Далее API
SwipeToReveal
обновлено следующим образом:onFullSwipe
переименован вonSwipePrimaryAction
;SwipeToRevealNonAnchoredSample
переименован для указания использования параметраhasPartiallyRevealedState
; удаленactionButtonHeight
, поскольку значение по умолчанию равно высоте кнопки по умолчанию, а большую высоту можно задать с помощью модификатора; удаленSmallActionButtonHeight
изSwipeToRevealDefaults
; параметр value в конструкторахRevealValue
иRevealDirection
сделан закрытым. ( I465ce ).
Исправления ошибок
- Исправлена обработка
EdgeButton
вScreenScaffold
, так что после удаления элементаTransformingLazyColumn
EdgeButton
анимированно возвращается на место. ( I6d366 ). - Обновлены зависимости Wear Compose от библиотек Compose до версии 1.8.0. ( I2ef3f ).
- Обновлено движение неопределенного
CircularProgressIndicator
, так что теперь он больше не регрессирует временно. ( Ieddb1 ). - Исправлена ошибка
SwipeDismissableNavHost
— фокус не переключался правильно после смахивания назад, что приводило к сбою вращательного ввода (это было для API 36+, в котором используется предиктивный возврат). ( Ieddb1 ). - Измененная документация для Hierarchical Focus API ( Idf2ff ).
- Обновлена документация для Button и Card с целью описания того, как
containerPainter
иdisabledContainerPainter
переопределяютcontainerColor
иdisabledContainerColor
( I4a453 ). - Отменено изменение
TimeText
в предыдущем выпуске , которое перемещалоBroadcastReceiver
в рабочий поток, поскольку это вызывало проблемы для приложений, которые управляют собственными потоками во время навигации. ( I34d02 ). - Обновлены примеры Picker для удаления ненужных вызовов remember и использования вместо этого
rememberUpdatedState
в Picker для запоминания последней лямбда-функцииcontentDescription
. ( Icb5b1 ). - Обновлены стили текста в
TimePicker
иDatePicker
, чтобы изменение шрифта больше не приводило к усечению. ( I26194 ). -
ListHeader
иListSubHeader
теперь по умолчанию выравнивают текст по центру и по началу соответственно. ( I78339 ). - Обновлены примеры и демонстрации Foundation и Material Swipe to Reveal для анонсирования пользовательских действий по обеспечению доступности (пользовательские действия должны быть добавлены как семантика для контента, а не для самого компонуемого объекта
SwipeToReveal
). ( Ie92a3 ). - Обновлено значение
MaxLines
по умолчанию для содержимогоEdgeButton
в соответствии с его размером — теперь 1 для очень маленького, 2 для маленького и среднего и 3 для большого. ( Ie35f6 ). - Упрощенный
LocalReduceMotion
позволяет регистрировать наблюдателя только один раз для повышения производительности. ( Ib1979 ). - Минимизировано количество перерисовок в
ScrollIndicator
для повышения производительности. ( Ia7a67 ). - Исправлена ошибка в
TransformingLazyColumn
, из-за которой верхний видимый элемент в списке не масштабировался правильно, когда EdgeButton достигал своей полной высоты. ( I30580 ).
Wear Compose Material3 Версия 1.0
Версия 1.0.0-альфа37
23 апреля 2025 г.
Выпущена androidx.wear.compose:compose-material3:1.0.0-alpha37
. Версия 1.0.0-alpha37 содержит следующие коммиты .
Изменения API
-
scrollTransform
удалён из публичного API. Для достижения той же функциональности используйте комбинацию модификаторовtransformedHeight
иgraphicsLayer
. ( Ie181d ) - Компонуемые элементы
ImageButton
иImageCard
заменены на перегрузкиButton
иCard/TitleCard
соответственно. ПереименованыimageButtonColors
вbuttonWithContainerPainterColors
иimageCardColors
вcardWithContainerPainterColors
. Добавлены публичныеButtonDefaults.scrimBrush
иCardDefaults.scrimBrush
. Переименованы buttonimageBackgroundGradientStartColor
иimageBackgroundGradientEndColor
вscrimGradientStartColor
иscrimGradientEndColor
. ПереименованыCardDefaults.ImageContentPadding
вCardDefaults.CardWithContainerPainterContentPadding
( I7b8b6 ). -
Picker
иPickerGroup
теперь принимаютcontentDescription
как лямбда-выражение, чтобы избежать ненужных повторных компоновок. ( I002dd )
Исправления ошибок
- Исправлена ошибка, из-за которой неопределенный
CircularProgressIndicator
колебался во время анимации, если ширина не равна высоте. ( I76bfe ) - Исправлена проблема с расположением кнопки на краю при недопустимом размере. Теперь предотвращает обновление расположения кнопки на краю, если высота равна NaN. ( I32b93 )
- Увеличен максимальный угол развертки в
OpenOnPhoneDialog
, чтобы текст по умолчанию «Проверьте свой телефон» не обрезался при максимальном размере шрифта. ( I90af9 )
Версия 1.0.0-альфа36
9 апреля 2025 г.
Выпущена androidx.wear.compose:compose-material3:1.0.0-alpha36
. Версия 1.0.0-alpha36 содержит следующие коммиты .
Изменения API
-
ButtonDefaults.imageBackgroundButtonColors
заменен наImageButton
,ButtonDefaults.imageButtonColors
,ButtonDefaults.containerPainter
иButtonDefaults.disabledContainerPainter
. Аналогичные изменения внесены для Card. Удалены рисовальщики изButtonColors
иCardColors
. ( I8c6a1 ) - Обновлены плейсхолдеры для упрощения API. Теперь мы предоставляем два модификатора:
Modifier.placeholderShimmer
для применения эффекта мерцания на уровне компонента иModifier.placeholder
для применения маски поверх незагруженного содержимого ( Iaee7a ).
Исправления ошибок
- Интегрированная прокрутка в
ScrollIndicator
. ( Icfb7f ) - Исправление проблем с пустым фоном и отсутствующими диалоговыми окнами при запуске диалоговых окон Material3. ( Ice597 )
- Исправлены проблемы в
FadingExpandingLabel
, когда текст занимал несколько строк. ( I04eb7 ) - Обновлены отступы между основными и дополнительными надписями на кнопках. ( I99b7b )
-
ArcLarge
уменьшен с20sp
до18sp
, а межбуквенные интервалы вArcLarge
иArcSmall
обновлены.ConfirmationDialog
иOpenOnPhoneDialog
теперь используют значениеArcLarge
по умолчанию, а не переопределяют его на18sp
( Id39a8 )
Обновления зависимостей
- Эта библиотека теперь ориентирована на уровень языка Kotlin 2.0 и требует KGP 2.0.0 или более поздней версии. ( Idb6b5 )
Версия 1.0.0-альфа35
26 марта 2025 г.
Выпущена androidx.wear.compose:compose-material3:1.0.0-alpha35
. Версия 1.0.0-alpha35 содержит следующие коммиты .
Изменения API
- Верхний отступ
AlertDialog
теперь по умолчанию уменьшен при наличии значка — это позволяет максимально эффективно использовать доступный размер экрана. ( Ief06c ) -
PagerScaffoldDefaults.FadeOutAnimation
переименован вPagerScaffoldDefaults.FadeOutAnimationSpec
. Параметр страницы вAnimatedPage
переименован вpageIndex
. ( I701f2 ) - Обновлено наименование
SurfaceTransformation
дляTransformingLazyColumn
:applyTransformation
разделён наapplyContainerTransformation
иapplyContentTransformation
, аcreateBackgroundPainter
переименован вcreateContainerPainter
. Внесены дальнейшие изменения в наименованияTransformationSpec
иResponsiveTransformationSpec
. ( I1c534 ) -
AppScaffold backgroundColor
был переименован вcontainerColor
. ( I4e63f )
Исправления ошибок
- Исправлена проблема в
FadingExpandingLabel
, из-за которой текст не всегда расширялся правильно. ( I0e773 ) -
ArcLarge
уменьшен с 20 до 18 сп, а межбуквенные интервалы вArcLarge
иArcSmall
обновлены.ConfirmationDialog/OpenOnPhoneDialog
теперь используютArcLarge
по умолчанию, а не переопределяют его до 18 сп. ( Id39a8 ) - Обновлена анимация заголовков для
DatePicker
иTimePicker
, так что анимация затухания и появления действует как одна анимация Spring. ( I68963 ) - Оптимизирован
PagerScaffold
путем избежания чтенияcurrentPageOffsetFraction
в компонуемом объектеAnimatedPage
. ( I433ef ) - Все шкалы шрифтов обновлены и теперь по умолчанию используют пропорциональные цифры, поскольку это наиболее распространённый вариант использования, а табличные значения по умолчанию приводят к слишком большим интервалам между некоторыми парами цифр.
TimePicker
иDatePicker
продолжают применятьFontFeatureSetting=tnum
для табличных цифр. ( I88929 ) - Исправлен начальный фокус ввода RSB для
TimePicker
иDatePicker
. ( I1c773 ) - Текст по умолчанию в
OpenOnPhoneDialog
обновлён на «Проверьте свой телефон». ( I00a3f ) - Обновлены значения веса для
ArcLarge
иArcMedium
с 600 до 599, чтобы обойти проблему, из-за которой значение веса 600 воспринималось как полужирное ( I2a51d ). - Обновите отступы
SwipeToReveal
между содержимым и кнопками действий, а также отступы между значком и текстом кнопок действий. ( Ic46cb )
Версия 1.0.0-альфа34
12 марта 2025 г.
Выпущена androidx.wear.compose:compose-material3:1.0.0-alpha34
. Версия 1.0.0-alpha34 содержит следующие коммиты .
Изменения API
-
PagerScaffold
больше не создаёт компонентPager
— вместо этого он должен быть предоставлен черезcontent
Composable.AnimatedPage
иsnapWithSpringFlingBehaviour
теперь общедоступны и могут использоваться вместе с Wear FoundationPager
для достижения предыдущего поведения M3PagerScaffold
. (См. обновлённые примеры). ( Ia4724 ) - Обновлён
PagerState
, удалён Compose FoundationPagerState
как базовый класс и добавлены свойстваcurrentPage
,currentPageOffsetFraction
иpageCount
. Обновлён интерфейсGestureInclusion
, метод переименован вignoreGestureStart
. ( I4ae07 ) - Параметры угла развертки
LevelIndicator
теперь аннотируются с помощьюFloatRange(0, 360)
( I7e636 ) - Мы добавили
CurvedModifier.clearAndSetSemantics
, чтобы предоставить возможность отключения семантики изогнутых элементов.CurvedText
по-прежнему использует текст в качестве описания содержимого по умолчанию, ноtimeTextCurvedText
иtimeTextSeparator
теперь не объявляют своё содержимое. ( I4b568 ) - Добавлены параметры фона и цвета содержимого по умолчанию в
AppScaffold
. ( I56652 ) - Обработка жестов смахивания по умолчанию в
HorizontalPager
переименована вPagerDefaults.gestureInclusion
. Теперь по умолчанию игнорируются только те жесты смахивания, которые начинаются с левого края первой страницы, и только при отключенной функции Talkback. В остальных случаях по умолчанию жесты смахивания не игнорируются пейджером, поэтому они недоступны обработчикам смахивания для закрытия. ( Iee486 ) - Добавлен параметр
SurfaceTransformation
к компонентам кнопки, карточки и заголовка списка, чтобы они могли применять различные преобразования фона и содержимого при использовании в контейнерах, которые изменяют внешний вид элементов в зависимости от их положения, например,TransformingLazyColumn
. ( Iabe3f ) - Мы обновили свойства «public const val» в нашем API Wear Compose Material3 до «public val», чтобы избежать встраивания значений. ( Ib0f32 )
- Добавлена поддержка зоны смахивания от края в
SwipeToReveal
. Поведение по умолчанию для FoundationSwipeToReveal
теперь запрещает смахивание, если жест начинается от края. Поведение по умолчанию для Material3SwipeToReveal'
теперь запрещает смахивание, если жест начинается от края, еслиSwipeDirection
задано как однонаправленное. ( I32ef0 ) - Добавлен компонуемый элемент
FadingExpandingLabel
, позволяющий постепенно проявлять текст с анимацией строка за строкой. ( Ic60fa ) -
TransformingLazyColumn
теперь по умолчанию использует пустойcontentPadding
вместо размещения первого и последнего элементов в центре. ( I77ab7 ) - Удален
rememberRevealState
SwipeToReveal
из библиотеки Wear Compose Material3. ( I8c0e0 )
Исправления ошибок
- Библиотеки Wear Compose обновлены до компилятора Kotlin 2.0. ( I2de79 )
- Поддержка некруглых
ScrollIndicator
иPageIndicator
удалена из Material3. Поддержка квадратных экранов также больше не является частью требований Wear OS. Подробнее см. в руководстве по началу работы . ( I9a852 ) - Стиль
CurvedTextStyle
, используемый вConfirmationDialogDefaults
иOpenOnPhoneDialogDefaults
, был обновлен для использования типографикиArcLarge
с размером18sp
и межбуквенным интервалом1.8sp
. ( Ic9ced ) - Элементы управления
Card
,ListHeader
,RadioButton
,CheckboxButton
иSwitchButton
больше не ограничивают высоту своего содержимого по умолчанию. При необходимости используйтеModifier.height(IntrinsicSize.Min)
для восстановления прежнего поведения. ( I80bb8 ) - Мы обновили цвета
TimeText
иScrollIndicator
по умолчанию, включив в них больше серых тонов, поскольку использованиеOnBackground
(белого цвета) имело слишком большой визуальный вес при сравнении с другим содержимым на экране, например заголовками. ( I8b36f ) - Мы сократили время ожидания анимации
TimeText
иScrollIndicator
в компонентах scaffold до 2 секунд. ( I52021 ) - Мы обновили движение диалогового окна, чтобы масштаб фона диалогового окна синхронизировался с движением пальца для его закрытия. ( I925a9 )
- Добавьте демо M3
SwipeToReveal
с использованием модификатораedgeSwipeToDismiss
. ( I02b07 ) - Мы добавили заголовок к
DatePicker
иTimePicker
в TalkBack, чтобы у пользователя была возможность прокрутить страницу для установки даты/времени. ( Id738d ) -
AnimatedText
теперь следует настройке уменьшения движения. ( Ib6578 ) - Улучшена оптимизация использования
AppScaffold
для отображения содержимого диалоговых окон, что позволяет отображать несколько диалоговых окон друг над другом ( I1209c ).
Версия 1.0.0-альфа33
26 февраля 2025 г.
Выпущена androidx.wear.compose:compose-material3:1.0.0-alpha33
. Версия 1.0.0-alpha33 содержит следующие коммиты .
Изменения API
- Мы удалили параметр label из
primaryAction
иsecondaryAction
компонентаSwipeToRevealScope
. Пользовательскую семантику действий следует добавлять непосредственно в содержимое компонентаSwipeToReveal
разработчиком. ( Ia67f3 ) - Мы удалили префиксы «Button» из размеров, стилей текста и функций цвета в
IconToggleButtonDefaults
иTextToggleButtonDefaults
( I5471d ). - Мы удалили экспериментальный
LocalMinimumInteractiveComponentEnforcement
( I4ad8a ). - Мы заменили DSL
PickerGroupScope
на компонуемый. В связи с этим мы удалили методpickerGroupItem
изPickerGroupScope
и вместо него добавили@Composable PickerGroupItem
, который следует использовать для добавления Picker вPickerGroup
. Мы также обновили тип параметра 'content'PickerGroup
на@Composable PickerGroupScope.() -> Unit
. ( Ic6aec ) - Мы добавили перегрузку
LevelIndicator
для дробных значений и добавили префикс Stepper к тем перегрузкам, которые включают параметр диапазона (которые подходят для использования с компонентом Stepper). ( If4234 ) - Мы добавили
TransformationSpec
TransformingLazyColumn
в API, что позволяет определять точные преобразования, происходящие с элементами при их прокрутке через TLC. ( I21856 ) - Мы обновили
IconButtonShapes
,IconToggleButtonShapes
,TextButtonShapes
иTextToggleButtonShapes
для соответствия классам compose/material3 ( I5a081 ). - Мы добавили параметр
overscrollEffect
вScalingLazyColumn
,TransformingLazyColumn
иScreenScaffold
. ( I0cee8 ) - Мы переименовали параметр
swipeDirection
вrevealDirection
вrememberRevealState
. ( I7472f ) - Wear Pager теперь имеет собственный
PagerScope
вместо использования ComposePagerScope
. ( I9195b ) - Мы удалили компонуемый
LinearProgressIndicatorContent
, используйтеLinearProgressIndicator
напрямую, чтобы изменения значений анимировались по умолчанию. ( I2c4ad ) - Мы удалили составной элемент
CircularProgressIndicatorStatic
и добавили общедоступную функциюDrawScope
drawCircularProgressIndicator
с той же функциональностью. Пожалуйста, используйтеCircularProgressIndicator
напрямую, чтобы изменения анимировались по умолчанию, но создайте свой собственный составной объект изdrawCircularProgressIndicator
, если необходимы пользовательские анимации. ( Ie762f ) - Мы изменили порядок параметров в
DrawScope.drawCircularProgressIndicator
, чтобы переместить параметрtargetProgress
вверх. ( I8ab92 ) - API
OpenOnPhoneDialog
был обновлен для большей ясности и согласованности с другими диалоговыми окнами. Параметрshow
был переименован вvisible
, и теперь вызывающая сторона предоставляетcurvedText
вместо значения по умолчанию. ( Idec2d ) - Мы переименовали
openOnPhoneCurvedText
вopenOnPhoneDialogCurvedText
( I65bdd ). - Мы добавили
ScrollIndicatorColors
для предоставления пользовательских цветов вScrollIndicator
. ( I9eb8c ) - Разрешите настройку цвета, используемого для рисования фона позади
TimeText
. ( I9f5d9 ) - Обновлены типографики
ArcLarge
,ArcMedium
иArcSmall
, теперь они сталиCurvedTextStyle
( Iffc41 ). - Мы удалили
ScreenScaffoldDefaults.contentPaddingWithEdgeButton
. ( Ia923e ) - Мы добавили
errorDim
вColorScheme
для ошибок с высоким приоритетом или экстренных действий, таких как предупреждения безопасности, неудачные наложения диалогов или кнопки остановки. ( I70998 )
Исправления ошибок
- Мы закрепили
wear.compose.material3
до версии 1.15.0androidx.core.core
( I132e9 ). - Мы улучшили производительность Dialog, используя
AppScaffold
для наложения диалогов на другое содержимое экрана ( I1b9a4 ). - Уменьшено внутреннее вертикальное заполнение
EdgeButton
. ( I1a5bb ) - Мы добавили семантику кнопок к кнопкам слайдера. ( I80cc6 )
Версия 1.0.0-альфа32
29 января 2025 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha32
. Версия 1.0.0-alpha32 содержит эти коммиты .
Изменения API
- В
CurvedTextStyle
мы разделили интервал между буквами на интервал между буквами по часовой стрелке и интервал между буквами против часовой стрелки. Это необходимо, поскольку буквы по часовой стрелке расходятся от базовой линии, а буквы против часовой стрелки — внутрь (поэтому требуется больший интервал между буквами) ( I4b848 ). - Мы обновили
IconButtonShapes
,IconToggleButtonShapes
,TextButtonShapes
иTextToggleButtonShapes
, чтобы улучшить согласованность между библиотеками Material3. Это изменение также вводит кэширование форм для уменьшения количества выделений. ( I049FC ) - Мы удалили параметр
pressedShapeCornerSizeFraction
изvariantAnimatedShape
вIconToggleButton
иTextToggleButton
( I58a65 ). - Мы вносим улучшения в рендеринг изогнутого текста (включая
TimeText
), несовместимые с некруглыми экранами. Поддержка некруглого экрана также больше не входит в требования Wear OS; дополнительную информацию см. в руководстве по началу работы . ( I1cc1c ) - Мы обновили
ButtonGroupScope
дляButtonGroup
, заменивButtonGroupItem
на основе DSL наModifier.weight
,Modifier.minWidth
иModifier.enlargeOnPress
. ( I16c3c ) - В API
ButtonGroup
мы обновили новыйButtonGroupScope
на основе модификатора:enlargeOnPress
теперь называетсяanimateWidth
и принимаетInteractionSource
, а неMutableInteractionSource
, поскольку нет необходимости его изменять. Мы также добавили общедоступную константуButtonGroupDefaults.DefaultMinWidth
, минимальную ширину кнопок по умолчанию вButtonGroup
. ( Ie27ec ) - Мы обновили
ListHeaderDefaults.contentColor
, чтобы он начинался со строчной буквы, поскольку это составное свойство ( I125a5 ). - Мы добавили параметр описания контента в
SliderDefaults.DecreaseIcon
иSliderDefaults.IncreaseIcon
с подходящими значениями по умолчанию ( I2e1a7 ). - Мы переименовали параметр
spacing
вPicker
иPickerGroup
verticalSpacing
( Ib75cc ). - Мы удалили
ConfirmationDialogDefaults.successText
иfailureText
, так как ожидается, что вызывающиеConfirmationDialog
будут предоставлять строки с большим количеством контекста. ТакжеconfirmationCurvedText
переименовано вconfirmationDialogCurvedText
. Наконец, параметрshow
диалогов» переименован в видимый для обеспечения согласованности с другими недавними обновлениями диалогов. ( I10074 ) -
IconButton
переименовалdisabledImageOpacity
вDisabledImageOpacity
. ( I5f94a )
Исправления ошибок
- Мы исправили ошибку в анимации
EdgeButton
, чтобы в каждом кадре использовался правильный размер ( Id3b58 ). - Исправлена проблема, из-за которой
animateContentSize
не работал сButton
. ( Ib18a0 ) - Мы изменили масштаб шрифта Title Large, чтобы размер шрифта был
18dp
( Ic9d52 ). - Мы обновили расстояние и размер значков
AlertDialog
( Iac28c ). - Мы исправили несоответствия в точках останова на большом экране (экраны с разрешением 225 dp и выше являются большими экранами) ( I36474 ).
- Исправлена небольшая ошибка в позиционировании кнопок ( I952c2 ).
Версия 1.0.0-альфа31
15 января 2025 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha31
. Версия 1.0.0-alpha31 содержит эти коммиты .
Изменения API
- Мы обновили все библиотеки Wear Compose до режима «явного API». ( Iebf9f )
- Мы обновили API
ScreenScaffold
иEdgeButton
, чтобы упростить указание полей содержимого на экранах, содержащихEdgeButton
. В новом APIsize
EdgeButton
передается толькоEdgeButton
, аScreenScaffold
принимает параметрedgeButtonSpacing
для расстояния междуEdgeButton
и содержимым списка. ( I424fd ) - В
DatePicker
мы переименовали параметрыminDate
вmaxDate
иminValidDate
вmaxValidDate
. ВDatePickerColors
мы переименовали параметрselectedPickerContentColor
вactivePickerContentColor
, а параметрunselectedPickerContentColor
вinactivePickerContentColor
( Iba17b ). - Мы обновили значения по умолчанию
ArcProgressIndicator
, установивstrokeWidth=6dp
и рекомендуемыйdiameter = 81.24%
высоты экрана ( I6f248 ). - Мы обновили API подтверждения, чтобы отразить его использование в качестве диалогового окна. Компонуемый элемент теперь называется
ConfirmationDialog
с соответствующими обновлениями именования цветов и классов по умолчанию. Мы также переименовали параметрshow
вvisible
для совместимости с другими API-интерфейсами Compose анимации. Кроме того, мы сделалиConfirmationDialogContent
,SuccessConfirmationDialogContent
,FailureConfirmationDialogContent
доступными для ситуаций, когда разработчикам необходимо настроить анимацию вступительного и завершающего диалога. ( Яеб33 ) - Мы обновили
CircularProgressIndicatorContent
доCircularProgressIndicatorStatic
(неанимированный вариантCircularProgressIndicator
), чтобы его теперь можно было использовать для созданияCircularProgressIndicator
с настраиваемой анимацией. ( I1346f ) - Мы исправили порядок параметров в
ArcProgressIndicator
, поместив сначала параметр-модификатор ( I4656a ). - Улучшен API
SwipeToReveal
, позволяющий получать параметр текстового слота для меток действий (кроме вторичного действия) и удалять параметры меток из действия отмены ( I5b3db ).
Исправления ошибок
- Мы исправили ошибку, из-за которой тактильные ощущения
LongPress
срабатывали более одного раза вButton
,Card
,IconButton
,TextButton
( Ia8b0f ). - Изменения в пользовательском интерфейсе
AlertDialog
— на больших экранах кнопки подтверждения и закрытия стали меньше. Также увеличено пространство под кнопками подтверждения и отклонения. ( I4f066 ) - Мы изменили характеристики анимации метки кнопки действия компонента
SwipeToReveal
. ( Ib87fb ) - Изменен
SwipeToReveal
, чтобы контейнер разворачивался одновременно с отображением текста. ( I44cf8 ) - Улучшен
SwipeToReveal
для тактильной обратной связи, когда смахивание достигает порога, при котором совершается основное действие. ( I23efe ) - Мы обновили
SwipeToReveal
, чтобы по умолчанию отображать многоточие при переполнении текста для основных действий и действий отмены. ( I71f5a ) - Мы исправили проблему, вызывающую дрожание анимации
ButtonGroup
. ( I63f8f ) - Мы добавили текстовую семантику в
AnimatedText
( I6063c ). - Диалог теперь сбрасывает масштабирование фона, когда диалог удаляется из композиции (без этого исправления стартовый экран мог остаться в уменьшенном состоянии) ( Id24ac ).
- Мы добавили анимацию морфинга формы к кнопкам в компоненте Stepper ( Id6ed3 ).
Версия 1.0.0-альфа30
11 декабря 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha30
. Версия 1.0.0-alpha30 содержит эти коммиты .
Изменения API
- Модификатор
scrollTransform
дляTransformingLazyColumn
был реорганизован, что привело к изменению API. ( I0c6dc ) - Мы обновили
IconToggleButtonShapes
иTextToggleButtonShapes
, чтобы иметь два разных параметра фигуры:uncheckedPressed
checkedPressed
( I85dbd ). - Недопустимые параметры месяца/дня теперь отображаются в
DatePicker
с новымinvalidPickerContentColor
при использованииminDate
илиmaxDate
. ( Если4541 ) - Мы обновили API
Stepper
, чтобы предоставить слотыincreaseIcon
иdecreaseIcon
— содержимое для них может быть создано, как обычно, из компонуемого значка. ( Id35da ) - Мы обновили
dynamicColorScheme
, удалив необязательный параметрdefaultColorScheme
и теперь возвращаяColorScheme
допускающий значение NULL. Это означает, что вызывающая сторона должна явно обрабатывать резервный случай, когда динамическая цветовая схема не предоставляется. ( I6d62e ) - Мы обновили размеры значков в
ButtonDefaults
для использования сCompactButton
.CompactButton
, содержащий только значок, должен использоватьButtonDefaults.SmallIconSize = 24.dp
, тогда какCompactButton
, содержащий и значок, и текст, должен использоватьButtonDefaults.ExtraSmallIconSize = 20.dp
Рекомендуется, чтобыCompactButton
переносил свое содержимое (вместо заполнения максимальной ширины), и примеры были обновлены, чтобы показать это. ( I0582c ) - Мы добавили
EdgeButtonDefaults
с рекомендуемыми размерами значков для 4 различныхEdgeButtonSizes
. Кроме того, обновлен макетEdgeButton
, теперь его нижнее отступы немного больше, чем верхние, что улучшает внешний вид как значков, так и текстового содержимого. ( Ид772а ) - Мы добавили движение в
LinearProgressIndicator
и предоставилиLinearProgressIndicatorContent
, который предоставляет визуальный контент без анимации. ( Идея99 ) - Мы добавили новый составной элемент
CircularProgressIndicatorContent
для отображения визуального содержимогоCircularProgressIndicator
без анимации. ( Ie33d4 ) -
TransformingLazyColumn
недавно предоставляет локальную композициюLocalTransformingLazyColumnItemScope
, которуюCard
,Button
иListHeader
теперь используют для автоматического преобразования при размещении внутриTransformingLazyColumn
. Вызывающие абоненты могут отключить автоматическое морфирование с помощью новой оболочкиTransformExclusion
. ( I1652f ) - Мы обновили тип
ButtonDefaults.shape
наRoundedCornerShape
( Iccdf2 ).
Исправления ошибок
- Мы исправили ошибку, связанную с учетом существующей альфа-версии в фоновом режиме для
TimeText
( I1eb60 ). - В нашей типографике мы по умолчанию установили для
TextMotion
значениеAnimated
, чтобы избежать дрожания текста из-за привязки глифов букв к границам пикселей во время операций масштабирования. ( I626fa ) - Мы обновили внешний вид
ScrollIndicator
, увеличив ширину и размер промежутка, чтобы улучшить видимость. ( Ied7cb ) - Мы исправили ошибку в
Modifier.scrollTransform
при добавлении/удалении/перемещении элементов. ( I6830f ) - Исправлена проблема с анимацией круглых кнопок при коротких нажатиях (ранее не всегда соблюдалась минимальная продолжительность анимации). ( I757a7 )
- Мы обновили угол развертки
LevelIndicator
до 20% (т.е. 72 градуса). ( Idde5c ) - Мы исправили положение
ScrollIndicator
, когдаScalingLazyColumn
использовался сAutoCenteringParams
. ( I387dd ) - Мы обновили цвета и оформление
ListHeader
иListSubHeader
. Также цвета элементов управления переключателями наCheckboxButton
иSwitchButton
. ( I39817 ) - Мы исправили позиционирование
ScrollIndicator
вLazyColumn
иScalingLazyColumn
с помощьюContentPadding
. ( I2bc51 ) - Мы исправили ошибку, возникающую в анимации прогресса
OpenOnPhoneDialog
, используя новыйCircularProgressIndicatorContent
. ( I3e443 ) - Мы обновили
HorizontalPagerScaffold
иVerticalPagerScaffold
, чтобы отключить анимацию при включении уменьшения движения ( Iaaf68 ). - Мы реализовали отдельную анимацию для круговых индикаторов прогресса, когда прогресс превышает 100%. ( I47135 )
- Мы исправили ошибку, из-за которой
EdgeButton
мог отображаться неправильной формы в компонентах Pager ( I91db9 ).
Версия 1.0.0-альфа29
13 ноября 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha29
. Версия 1.0.0-alpha29 содержит эти коммиты .
Изменения API
- Мы обновили
TimeText
, чтобы предоставить содержимое по умолчанию, показывающее время. ( Id23b3 ) - Мы упростили
ScrollInfoProvider
дляPagerState
, удалив параметрorientation
, который больше не нужен. Новое поведение заключается в том, чтоTimeText
остается на месте как для горизонтального, так и для вертикального листания. ( I71767 ) -
LocalHapticFeedback
теперь предоставляет реализациюHapticFeedback
по умолчанию, когда API-интерфейс Vibrator указывает, что тактильные ощущения поддерживаются. ВHapticFeedbackType
были добавлены следующие параметры:Confirm
,ContextClick
,GestureEnd
,GestureThresholdActivate
,Reject
,SegmentFrequentTick
,SegmentTick
,ToggleOn
,ToggleOff
,VirtualKey
. Компоненты Wear Compose, активируемые при длительном нажатии, такие какButton
,IconButton
,TextButton
иCard
теперь выполняют тактильный эффектLONG_PRESS
когда предоставлен обработчик длительного щелчка. ( I5083d )
Исправления ошибок
- Мы обновили предложение о подтверждениях. ( I04bff )
- Мы обновили минимальную зависимость API до 1.7.4 для библиотек Compose. ( I88b46 )
- Для диалога
OpenOnPhone
было добавлено новое движение. ( I1e10a ) - Мы исправили ошибку в
LevelIndicator
, и теперь он корректно отображается с нулевым уровнем. ( Ie95a4 ) - Мы обновили анимации
HorizontalPageIndicator
иVerticalPageIndicator
. ( I5c8f3 ) - Мы добавили анимацию сжатия в точку к неопределенному
ArcProgressIndicator
. ( I9fd51 )
Версия 1.0.0-альфа28
30 октября 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha28
. Версия 1.0.0-alpha28 содержит эти коммиты .
Изменения API
- Мы добавили вариант дуги неопределенного кругового индикатора прогресса ( I2efc1 ).
- Мы опубликовали составные элементы
AlertDialogContent
иDialog
, составляющие APIAlertDialog
, чтобы при необходимости можно было добавить настройку (например, настройку анимацииAlertDialog
, сохраняя при этом рекомендуемый макет содержимого). Кроме того, мы добавили параметрыModifier
иColor
к членамEdgeButton
,ConfirmButton
иDismissButton
изAlertDialogDefaults
. ( I4eb71 ) - Мы обновили API-интерфейс
Placeholder
следующим образом: переименовалиPlaceholderState.startPlaceholderAnimation
вPlaceholderState.animatePlaceholder
,PlaceholderState.isShowContent
вPlaceholderState.isHidden
иPlaceholderDefaults.shape
вPlaceholderDefaults.Shape
; переименовал параметрpainter
вpainterWithPlaceholderOverlayBackgroundBrush
вoriginalPainter
; изменил видимостьPlaceholderState.placeholderProgression
с публичного на внутренний и переименовал его вplaceholderShimmerProgression
; добавлены константы продолжительности анимации заполнителя вPlaceholderDefaults
. ( Ie5a59 ) - Мы обновили API
EdgeButton
следующим образом: переименовали параметр вScreenScaffold
сbottomButton
наedgeButton
; сделалEdgeButtonSize
классом значений. ( Ииф15 ) - Мы изменили видимость
copy()
на public в классах Wear Material3 Colors ( I0287f ).
Исправления ошибок
- Добавлена минимальная продолжительность анимации для
IconToggleButton
иTextToggleButton
при нажатии ( Ieb333 ). - Добавлена минимальная продолжительность анимации фигур
IconButton
иTextButton
( Iebcee ). - Исправлено состояние опции повтора
DatePicker
. ( I3587c ) - Добавлено движение для диалогов оповещения и подтверждения. ( I173b1 )
Версия 1.0.0-альфа27
16 октября 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha27
. Версия 1.0.0-alpha27 содержит эти коммиты .
Изменения API
- Мы обновили
ScreenScaffold
иScrollIndicator
после переименования Wear Compose FoundationLazyColumn
вTransformingLazyColumn
. ( I0608b ) - Параметр
preferredHeight
EdgeButton
был переименован вbuttonSize
, и его значение можно выбрать только из четырех констант в недавно представленном классе значенийEdgeButtonSize
. ( Icdd70 ) - Мы изменили название
ListSubheader
наListSubHeader
и добавили общедоступные значения по умолчанию дляListHeader
иListSubHeader
. ( I96730 ) - Мы добавили новые компоненты
HorizontalPagerScaffold
иVerticalPagerScaffold
для Wear, которые обеспечивают новую анимацию и координацию между текстом времени и компонентами индикатора страницы. ( Iff7d0 ) - Мы добавили поддержку поворота в
HorizontalPagerScaffold
иVerticalPagerScaffold
, что позволяет пользователям перемещаться по пейджерам с помощью поворотных устройств ввода. ( I9770d ) - Мы внесли изменения в API
MotionScheme
, чтобы упростить использование и повысить согласованность. Удалены встроенные функции запоминания и перемещены встроенные схемы движения в специальный сопутствующий объект MotionScheme.standardMotionScheme
иexpressiveMotionScheme
схемы движения переименованы в стандартные и выразительные. ( I5fd45 ) - Мы добавили поддержку динамической цветовой схемы на основе системных цветов. ( I073e9 )
- Мы обновили Stepper до последних спецификаций UX. ( I622bb )
Исправления ошибок
- Мы обновили типографику и отступы для компонентов карты. ( I3ae48 )
- Мы изменили отступы в
AlertDialog
между кнопками «Подтвердить/Отклонить» и остальным содержимым с 8dp на 12dp в соответствии со спецификациями UX ( Ie55f0 ). - Мы обновили непрозрачность цвета для компонента «Ползунок». ( Идб383 )
Версия 1.0.0-альфа26
2 октября 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha26
. Версия 1.0.0-alpha26 содержит эти коммиты .
Изменения API
- Мы обновили API и внешний вид
HorizontalPageIndicator
и добавилиVerticalPageIndicator
для использования сVerticalPager
( Ic9309 ). -
AlertDialog
теперь поддерживает возможность исключить нижнюю кнопку по умолчанию из варианта стека кнопок для пользовательских макетов, в которых EdgeButton не требуется. ( I34fa9 ) - Мы добавили компонент
SwipeToReveal
для Wear Material 3 ( Ic38b2 ). - Мы добавили поддержку двунаправленного пролистывания в
SwipeToReveal
для редких случаев, когда текущий экран не поддерживает пролистывание для закрытия. По умолчанию по-прежнему используется смахивание для открытия только при пролистывании справа налево, и настоятельно рекомендуется соблюдать поведение по умолчанию, чтобы избежать конфликта с пролистыванием для закрытия. ( Ифак04 ) - Мы переименовали параметр
buttonHeight
EdgeButton
вpreferredHeight
. ( I4fab3 ) - Версия Kotlin обновлена до 1.9 ( I1a14c ).
- Мы переименовали
OpenOnPhoneDialogDefaults.Icon
вOpenOnPhoneDialogDefaults.OpenOnPhoneIcon
, чтобы избежать конфликта сIcon
( I0f391 ). - Мы добавили поддержку
ScrollIndicator
вLazyColumn
. ( Я546а ) - Мы обновили значения по умолчанию для
TextToggleButton
иIconToggleButton
. ( I7aaa9 ) - Мы упростили API
Picker
иPickerGroup
. ( Ид0653 ) - Мы добавили
CardDefaults.Shape
иCardDefaults.Height
, которые (будучи токенами) в противном случае были частными для разработчиков, использующих библиотеку. ( I1594a , б/347649765 ) - Мы переименовали параметр прогресса для двоичного сегментированного кругового индикатора прогресса в
segmentValue
. ( Ib72d9 ) - Мы обновили цвета и макет слайдера. ( Ic3eec )
Исправления ошибок
- Мы обновили анимацию значка
openOnPhone
( I66f85 ). - Теперь мы используем значки символов Google в
Slider
,TimePicker
иDatePicker
. ( I46c7c ) - Мы обновили отступы в
Confirmation
иOpenOnPhoneDialog
. ( Iaa82e )
Версия 1.0.0-альфа25
18 сентября 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha25
. Версия 1.0.0-alpha25 содержит эти коммиты .
Изменения API
- Мы добавили индикатор неопределенного кругового прогресса. ( I427a7 )
- Мы добавили поддержку переполнения прогресса (прогресс>100%) как для
CircularProgressIndicator
, так и дляSegmentedCircularProgressIndicator
. Когда прогресс превысит 1,0, это будет обозначено новым цветомoverflowTrack
. ( Иааа3d ) - Круглые
IconToggleButton
иTextToggleButton
теперь поддерживают новый вариант анимации фигур, в котором разные фигуры представляют отмеченное, неотмеченное и нажатое состояния. Предыдущий вариант анимированной формы для только что нажатого состояния продолжает поддерживаться. ( I29f03 ) - Мы удалили поддержку использования
EdgeButton
сColumn
из-за необходимости явно указывать высотуEdgeButton
вScreenScaffold
. ( Ie353d ) - Мы добавили поддержку Wear Compose
LazyColumn
с помощью нашегоScreenScaffold
(и добавили реализациюScrollInfoProvider
дляLazyColumnState
). ( Ib8d29 ) - Мы объединили
LocalTextMaxLines
,LocalTextAlign
,LocalTextOverflow
в единую локальную композициюLocalTextConfiguration
, чтобы обеспечить более масштабируемое решение в будущем. ( I5edbc ) - Мы добавили большую дугу в качестве дополнительной шкалы шрифта, зарезервированной для коротких текстовых строк заголовков в самом верху или внизу экрана, как в наложениях подтверждения. ( I60e3e )
- Мы добавили в Button параметры по умолчанию для рекомендуемых больших и очень больших размеров значков и заполнения содержимого. ( I84675 )
Исправления ошибок
- Мы обновили цвета
IconButton
иTextButton
. ( I48324 ) - Мы изменили базовые перегрузки Button, чтобы они были выровнены по центру по вертикали для согласованности с другими перегрузками. Чтобы восстановить предыдущее поведение, используйте
Modifier.align
изRowScope
. ( I66e57 )
Версия 1.0.0-альфа24
4 сентября 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha24
. Версия 1.0.0-alpha24 содержит эти коммиты .
Изменения API
- Мы добавили схему движения в тему Material3. Это будет использоваться компонентами библиотеки для применения характеристик анимации, таких как пружины для выразительного движения. ( I54ff3 )
- Мы добавили компоненты
AppScaffold
иScreenScaffold
в библиотеку Material3, которые включают в себя функциональные возможности для координации слоев и переходовTimeText
иScrollIndicator
.AppScaffold
предоставляет верхний уровень компонентов scaffold, которые располагаются поверх всех экранов. Таким образом, добавлениеTimeText
вAppScaffold
позволяет ему оставаться на месте при перелистывании между экранами. Экраны сами могут переопределять или скрывать текст времени.ScreenScaffold
предоставляет слот дляScrollIndicator
и автоматически анимирует индикатор прокрутки при прокрутке, включая время ожидания, чтобы скрыть индикатор прокрутки после бездействия. ( I047d6 ) - Мы добавили
ScrollIndicator
с новым дизайном Material3. Он имеет фиксированный размер большого пальца, основанный на исходном содержимом списка, чтобы избежать изменений размера при отложенной загрузке содержимого в список. ( Ic228d ) - Мы изменили API
ScrollAway
таким образом, чтоScreenStage
является классом значения, а не классом перечисления, чтобы можно было добавлять дополнительные этапы по мере необходимости в дальнейшем. ( I48c93 ) - Мы добавили
EdgeButton
— специальную кнопку, специфичную для Wear, форма которой повторяет кривизну нижней части экрана ( I16369 ). - Мы добавили в
ScreenScaffold
новый слот для нижней кнопки (например,EdgeButton
), которая будет отображаться и изменять размер в зависимости от прокручиваемого содержимого ( I032eb ). - Мы добавили
Modifier.scrollTransform
иModifier.targetMorphingHeight
, чтобы добавить эффекты движения Material3 к элементам вLazyColumn
. ( Ie229a ) - Мы добавили
SegmentedCircularProgressIndicator
как вариантCircularProgressIndicator
. Сегментированный вариант либо показывает одно значение прогресса для всех сегментов, либо показывает, что каждый сегмент включен или выключен. ( I6e059 ) - Мы добавили
LinearProgressIndicator
в качестве альтернативы существующемуCircularProgressIndicator
. ( I89182 ) - Мы добавили
AlertDialog
, предоставляющий макеты для отображения важных подсказок пользователю. Варианты включены либо для пары кнопок подтверждения/отключения, либо для одной нижней кнопки (обычно EdgeButton) под стопкой опций. В обоих вариантах есть слоты для значка, заголовка и дополнительного текста для предоставления дополнительной информации. ( Ieb873 ) - Мы добавили
OpenOnPhoneDialog
, который следует использовать для указания действия, которое будет продолжено на телефоне пользователя.OpenOnPhoneDialog
закрывается по истечении указанного времени ожидания. ( I978fd ) - Мы добавили
Confirmation
, компонент диалогового окна, в котором есть слоты для значков и изогнутого или линейного текста. Для сообщений об успехе/неуспехе предусмотрены конкретные варианты. Подтверждения автоматически отклоняются по истечении времени ожидания. ( Ib43e8 ) - Мы добавили фон в
TimeText
, чтобы устранить проблемы, при которых базовый контент иTimeText
перекрывались и скрывали время. ( Ia11fd ) - Мы добавили
LevelIndicator
, который показывает значение такого параметра, как громкость, и может использоваться с существующим компонентомStepper
для создания экрана громкости.LevelIndicator
похож наScrollIndicator
, но отображается на противоположной стороне экрана и по умолчанию имеет более широкую ширину штриха и другой цвет индикатора. ( I8a4ac ) - Мы добавили
TimePicker
с макетами для 24-часового времени (с секундами или без них) или 12-часового времени с выбором до/после полудня. ( Я5124 ) - Мы добавили
DatePicker
с настройкой порядка столбцов (т. е. день-месяц-год, месяц-день-год или год-месяц-день) и дополнительными минимальными/максимальными датами. ( Ibf13b ) - Мы добавили параметр веса в
text
функциюTimeText
. В тех случаях, когда TimeText состоит из более чем одного текстового элемента, это позволяет контролировать распределение пространства. ( I36700 ) - Мы добавили
RadioButton
иSplitRadioButton
— эти компоненты упрощают предыдущий API, объединяя как (Split)SelectableButton
, так и дочерний радиоуправление ( If7ae8 ). - Мы добавили
CheckboxButton
иSplitCheckboxButton
— эти компоненты упрощают предыдущий API, объединяя как (Split)ToggleButton
, так и дочерний элемент управления Checkbox ( Ia8f70 ). - Мы добавили
SwitchButton
иSplitSwitchButton
— эти компоненты упрощают предыдущий API, объединяя как(Split)ToggleButton
, так и дочерний элемент управления Switch ( I0d349 ). - Мы обновили документацию
AnimatedText
, чтобы объяснить поведение выхода за пределы. ( Iff30a ) - Мы добавили
ButtonGroup
для объединения 2 или 3 кнопок, чтобы нажатие кнопок создавало скоординированную анимацию. ( Ie27db ) - Мы добавили дополнительную анимацию формы для
IconButton
иTextButton
при нажатии. ( Иффка5 ) - Мы добавили дополнительный вариант цвета
FilledVariant
дляButton
,IconButton
,TextButton
,CompactButton
иEdgeButton
( I65fc3 ). - Мы добавили параметр
forcedSize
вImageWithScrimPainter
, так что фон изображения кнопки теперь сохраняет размер своего компонента по умолчанию. УстановкаforcedSize = null
вместо этого принимаетPainter.instrinsicSize
. ( Ic57af ) - Мы добавили долгое нажатие в кнопки ( Ib613d ).
- Поддержка длительного нажатия также была добавлена в
IconButton
иTextButton
. ( I38891 ) - В «Карточки» добавлена поддержка длительного нажатия. ( I305d5 )
- Мы добавили
LocalTextMaxLines
,LocalTextAlign
,LocalTextOverflow
в качествеCompositionLocals
и использовали их в качестве параметров по умолчанию дляText
. Локальные параметры композиции теперь могут использоваться такими компонентами, какCheckboxButton
,SwitchButton
,RadioButton
для реализации рекомендаций UX, но при необходимости параметры могут быть переопределены разработчиками. ( Iab841 ) - Мы добавили
Placeholder
, который помогает маскировать содержимое таких компонентов, как кнопки и карточки, до загрузки данных. ( I1a532 ) - Мы добавили
IconToggleButtonColors
иTextToggleButtonColors
вместо удаленныхToggleButtonColors
. ( Ie0bf1 )
Исправления ошибок
- Мы обновили
Button
,FilledTonalButton
,OutlinedButton
,ChildButton
,CompactButton
, чтобы использовать новыеCompositionLocals
LocalTextMaxLines
,LocalTextAlign
,LocalTextOverflow
для реализации рекомендаций по UX — при необходимости эти параметры могут быть переопределены разработчиками непосредственно в Text ( Ie51f7 ). - Мы изменили ширину обводки
LevelIndicator
по умолчанию на6dp
чтобы отличать ее отScrollIndicator
, ширина обводки которого равна4dp
. ( Если6f63 ) - Мы исправили проблему в
TimeText
, чтобы поддерживать большие углы развертки. ( Ie489f ) - Исправлена проблема во время рекомпозиции
EdgeButton
. ( I4cdca ) - Исправлены макеты разделенных кнопок переключения при предоставлении настраиваемого заполнения контента. ( Ia33d3 )
- Небольшие значения прогресса округлены как минимум до ширины линии индикатора прогресса. ( I3bd84 )
Версия 1.0.0-альфа23
14 мая 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha23
. Версия 1.0.0-alpha23 содержит эти коммиты .
Изменения API
- Мы обновили API-интерфейсы
ToggleButton
иRadioButton
, чтобы можно было настроить отключенные цвета. ( Если13а7 ) - Мы добавили новый индикатор
CircularProgressIndicator
для Material3. ( Ib3bd7 )
Исправления ошибок
- Мы исправили ошибку, из-за которой выбираемые кнопки объявляли двойное нажатие для переключения, если они уже выбраны. ( I7ed88 )
Версия 1.0.0-альфа22
1 мая 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha22
. Версия 1.0.0-alpha22 содержит эти коммиты .
Изменения API
- Мы обновили
ColorScheme
Material3. ( I7b2b8 ) - Мы обновили переключатель Material3 — помимо некоторых изменений цвета, галочка теперь соответствует галочке, используемой для флажка. ( Icac7b )
Исправления ошибок
- Обновите все демо-версии интеграции, чтобы использовать новый модификатор
rotaryScrollable
. ( I25090 )
Версия 1.0.0-альфа21
17 апреля 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha21
. Версия 1.0.0-alpha21 содержит эти коммиты .
- Этот выпуск был запущен из-за технической проблемы в предыдущем выпуске, которая привела к отсутствию файлов исходного кода. В этом выпуске нет новых коммитов.
Версия 1.0.0-альфа20
3 апреля 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha20
. Версия 1.0.0-alpha20 содержит эти коммиты .
Исправления ошибок
- Мы скорректировали альфа-каналы нажатого и сфокусированного состояния Ripple для контраста. ( I59f0a )
- Мы добавили расстояние между основными и дополнительными метками в
Button
,ToggleButton
иRadioButton
в соответствии с последними изменениями в стилях оформления и высоте строк. ( I2c0ba )
Версия 1.0.0-альфа19
6 марта 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha19
. Версия 1.0.0-alpha19 содержит эти коммиты .
Изменения API
- Мы добавили
TimeText
в библиотеку Wear Compose Material3. Этот компонент показывает текущее время (и дополнительный статус) вверху экрана. Новый лаконичный API Material3 позволяет избежать дублирования линейного и изогнутого контента. ( I4d7c3 ) - Мы обновили имена параметров с
onSelected
наonSelect
дляRadioButton
. ( I1a971 ) - Токенизировать
RadioButton
иSplitRadioButton
, а также провести рефакторинг существующих методов, чтобы уменьшить объем поискаCompositionLocal
, добавив кэшированные экземпляры цветов и сделав методыRadioButtonColors
иSplitRadioButtonColors
внутренними. ( I02b33 )
Версия 1.0.0-альфа18
21 февраля 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha18
. Версия 1.0.0-alpha18 содержит эти коммиты.
Изменения API
- Мы переработали шаблон по умолчанию для
CardColors
,ToggleButtonColors
иSplitToggleButtonColors
, создав внутренние кэшированные экземпляры и сократив использованиеCompositionLocal
. ( Если3fec )
Версия 1.0.0-альфа17
7 февраля 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha17
. Версия 1.0.0-alpha17 содержит эти коммиты.
Изменения API
- Мы обновили API кнопок, чтобы использовать
buttonColors
по умолчанию, и удалили дубликатыfilledButtonColors
. ( I4fe3b ) - Мы реорганизовали шаблоны по умолчанию для
ButtonColors
,IconButtonColors
иTextButtonColors
, создав внутренний кэшированный экземпляр и сократив использованиеCompositionLocal
. ( I5f51c ) - Мы устранили накладные расходы на
rememberUpdatedState
в классах цветов, специфичных для компонентов, и пометили методы доступа внутри классов цветов как внутренние. ( Если6571 )
Исправления ошибок
- Мы обновили
Modifier.minimumInteractiveComponentSize
для использованияModifier.node
. ( Iba6b7 )
Версия 1.0.0-альфа16
24 января 2024 г.
Выпущен androidx.wear.compose:compose-material3:1.0.0-alpha16
. Версия 1.0.0-alpha16 содержит эти коммиты.
Новые функции
- Мы добавили
CompactButton
, который может использовать те же цвета заливки, тона и контура, что и Button. ( I05df0 ).
Изменения API
- Мы добавили
RadioButton
/SplitRadioButton
в качестве контейнеров для элементов управления выбором, таких как элемент управления Radio. This differs from the existingToggleButton
in thatRadioButton
is selectable (and operates within a selection group) whereasToggleButton
is toggleable (and is independent). ( I61275 ) - We are removing
LocalContentAlpha
from the Wear Compose Material3 library for consistency with the Compose Material3 library. ( I49a0a ) - Wear material and wear material3 components exposing a
MutableInteractionSource
in their API have been updated to now expose a nullableMutableInteractionSource
that defaults to null. There are no semantic changes here: passing null means that you do not wish to hoist theMutableInteractionSource
, and it will be created inside the component if needed. Changing to null allows for some components to never allocate aMutableInteractionSource
, and allows for other components to only lazily create an instance when they need to, which improves performance across these components. If you are not using theMutableInteractionSource
you pass to these components, it is recommended that you pass null instead. It is also recommended that you make similar changes in your own components. ( Ib90fc , b/298048146 ) - Adds new ripple API in
wear:compose-material
andwear:compose-material3
libraries which replaces the deprecatedrememberRipple
. Also adds a temporaryCompositionLocal
,LocalUseFallbackRippleImplementation
, to revert Material components to using the deprecatedrememberRipple/RippleTheme
APIs. This will be removed in the next stable release, and is only intended to be a temporary migration aid for cases where you are providing a customRippleTheme
. See developer.android.com for migration information and more background information behind this change. ( af92b21 ) - We have made minor improvements to the
HorizontalPageIndicator
api and its documentation. ( I60efc ) - We have updated
ColorScheme
to be immutable, making individual color updates less efficient, but making more common usage of colors more efficient. The reasoning behind this change is that the majority of apps wouldn't have updating individual colors as a main use case. This is still possible but it will recompose more than before, in turn we significantly decrease the amount of state subscriptions through all of material code and will impact initialization and runtime cost of more standard use cases. ( Ibc2d6 ) - Updated
ToggleButton
andSplitToggleButton
APIs to allow disabled colors to be customized. In addition, Material Design tokens are now used for color and typography values. ( If087c ) - Updated Button image background colors to use Material Design tokens. ( Iba215 )
- We have changed the
Checkbox
,Switch
andRadioButton
components to be display-only, by removing the click handling. These components are expected to be used in(Split)ToggleButton
which handles the click, so the components are now more clearly indicated as display-only (and are not intended for standalone use on Wear). ( I2322e )
Исправления ошибок
- We have added tokens for motion values of durations and easings in Wear Compose Material 3. ( I437cd )
- We have fixed a bug in the
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
andRadioButton
so that accessibility announcements are not repeated (previously, semantic roles were duplicated). ( Ica281 ) - We have removed the materialcore layer for
CompactButton
to improve performance. ( 7902858 )
Version 1.0.0-alpha15
15 ноября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha15
is released. Версия 1.0.0-alpha15 содержит эти коммиты.
Изменения API
- We have renamed the Foundation level
SwipeToDismissBox
toBasicSwipeToDismissBox
. This makes the distinction clearer between the Foundation level component and the Material3 levelSwipeToDismissBox
. The latter pulls colors from theMaterialTheme
to be used in scrims and delegates the remaining implementation to theBasicSwipeToDismissBox
. ( Ibecfc )
Исправления ошибок
- We have removed the material-core layer for Material3 Button to improve performance. ( I55555 )
Версия 1.0.0-альфа14
October 18, 2023
androidx.wear.compose:compose-material3:1.0.0-alpha14
is released. Версия 1.0.0-alpha14 содержит эти коммиты.
Изменения API
- We have removed the
indicatorStyle
parameter from the Material3HorizontalPageIndicator
- instead, it will follow the device screen shape (linear or round). ( I83728 ) - We have separated the colors for
SplitToggleButton
from those forToggleButton
, by adding a newSplitToggleButtonColors
class. ( I78bee )
Version 1.0.0-alpha13
4 октября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha13
is released. Версия 1.0.0-alpha13 содержит эти коммиты.
Изменения API
- We have added an optional Subtitle field to
TitleCard
. ( Ifc45a ) - We have added Material Design color tokens for
TextButton
. ( I769dc )
Версия 1.0.0-альфа12
20 сентября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha12
is released. Версия 1.0.0-alpha12 содержит эти коммиты.
Изменения API
- We have updated
IconButton
to use Material Design tokens. ( I3f137 ) - We have updated
IconToggleButton
to use Material Design tokens. ( I7d263 ) - We have made public the constructors of
CheckboxColors
,RadioButtonColors
,SwitchColors
. ( I82b73 )
Версия 1.0.0-альфа11
6 сентября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha11
is released. Версия 1.0.0-alpha11 содержит эти коммиты.
Исправления ошибок
- We update updated the typography for Material3 Cards to
TitleMedium
. ( I597bd ) - We have updated the typography and alignment for our Material3
ListHeader
andListSubheader
. ( Ib5ceb )
Версия 1.0.0-альфа10
23 августа 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha10
is released. Версия 1.0.0-alpha10 содержит эти коммиты.
Новые функции
- Add
HorizontalPageIndicator
in Wear Material3 library. ( Ifee99 )
Изменения API
- Update Buttons code to use Material3 design tokens. ( I92fe4 )
- Declaring Wear Material 3 Stepper and Slider APIs as experimental as the details of the user interface are still being finalized. ( I84d54 )
- We have removed the
ExtraSmall
sizes from the roundTextButton
andTextToggleButton
as that size only applies to theIconButton
. ( Ibc7d5 )
Исправления ошибок
- We have updated the guidance on typography for TextToggleButton to use LabelLarge for LargeButtonSize ( Ib10fa )
- We have updated the guidance on typography for TextButton to use LabelLarge for LargeButtonSize ( I8f3a7 )
- We have set the Card's minimum touch target to be 48dp for accessibility. ( Ieb9b1 )
- Add AppCard with image demo, removing AppCard with Background demo ( Id735f )
- Fix a bug in round buttons where modifiers were not chained correctly. ( I5e162 )
Version 1.0.0-alpha09
9 августа 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha09
is released. Версия 1.0.0-alpha09 содержит эти коммиты.
Новые функции
- We have added
ToggleButton
for material3 ( I6bed6 )
Изменения API
- We have turned on the
FloatRange
annotation as API constraints , which were previously stated in comments. ( Icb401 ) - We have updated the typography for Wear Material3 to adhere to the latest Material3 guidelines. ( I1bad6 )
Исправления ошибок
- We have updated the colors for
Button
,IconButton
andTextButton
in line with Material3 design. ( Ib2495 ) - We have fixed checkbox tick visibility in disabled states. ( Ib25bf )
Version 1.0.0-alpha08
26 июля 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha08
is released. Версия 1.0.0-alpha08 содержит эти коммиты.
Новые функции
- We have added the following selection controls for Material3 -
Switch
,Checkbox
,RadioButton
. ( Ib918c ) - We have added
IconToggleButton
andTextToggleButton
to Material3, a circular toggle button with a single slot for icon and text respectively. For different sizes ofToggleButton
, we recommend usingModifier.touchTargetAwareSize
with the sizes provided in respective toggle buttons. ( I9f015 ) - We have added
ListHeader
andListSubheader
to our Material3 components. ( Ibaefe ) - We have added Material3
SwipeToDismissBox
, which calls the new FoundationSwipeToDismissBox
and supplies default color values from its theme. ( I275fb ) - We have added the Material3
InlineSlider
to Wear Compose. It allows users to make a selection from a range of values. The range of selections is shown as a bar between the minimum and maximum values of the range, from which users may select a single value.InlineSlider
is ideal for adjusting settings such as volume or brightness. ( I7085f )
Изменения API
- We have updated the Shapes in Wear Material 3 theme to use
RoundedCornerShape
based instead of Shape. ( Idb133 ) - We have made the height constants for Button public ( Idbfde )
- Updated API files to annotate compatibility suppression ( I8e87a , b/287516207 )
- We have updated
InlineSliderColors
in Wear Compose Material 3 to have public constructor and public properties. ( I6b632 ) - We have updated all color classes in Wear Compose Material 3 to have public constructors and public properties. ( I17702 )
- We have made Button horizontal and vertical padding constants public. ( Ieeaf7 )
Исправления ошибок
- Button will now adjust its height to accommodate content that has grown due to large fonts for accessibility, when required ( Iaf302 )
- We have updated a number of Button demos to address accessibility issues. ( I61ce9 )
-
Stepper
andInlineSlider
now support repeated clicks on long press so that you can quickly increase/decrease value ofStepper
andInlineSlider
by holding the + or - buttons ( I27359 )
Version 1.0.0-alpha07
21 июня 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha07
is released. Версия 1.0.0-alpha07 содержит эти коммиты.
Новые функции
- We have added the
Stepper
component to our Compose for Wear OS Material 3 library. This is similar to the previous Material version, but omits range semantics by default, following developer feedback. We provideModifier.rangeSemantics
the cases where range semantics are required. ( Ic39fd ) - We have added
curvedText
to our Compose for Wear OS Material 3 library. ( Ia8ae3 )
Исправления ошибок
- We have update
wear.compose.foundation
to be an API dependency ofwear.compose.material3
( I72004 , b/285404743 )
Версия 1.0.0-альфа06
7 июня 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha06
is released. Версия 1.0.0-alpha06 содержит эти коммиты.
Исправления ошибок
- We have updated
TextButton
to use thetoDisabledColor
extension function for correct disabled alpha values. ( I814c8 )
Версия 1.0.0-альфа05
24 мая 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha05
is released. Версия 1.0.0-alpha05 содержит эти коммиты.
Новые функции
- We have added
TextButton
to Material3, a circular button with a single slot for text. For different sizes ofTextButton
, we recommend usingModifier.touchTargetAwareSize
andExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
andLargeButtonSizeIcon
provided inTextButtonDefaults
. The defaultTextButton
has no border and a transparent background for low emphasis actions. For actions that require high emphasis, usefilledTextButtonColors
; for a medium-emphasis, outlinedTextButton
, set the border toButtonDefaults.outlinedButtonBorder
; for a middle ground between outlined and filled, usefilledTonalTextButtonColors
. ( I667e4 ) - We have added
Card
,OutlinedCard
,AppCard
andTitleCard
into the Wear Compose Material3 library.AppCard
andTitleCard
can also be given the outlined appearance usingCardDefaults.outlinedCardColors
andCardDefaults.outlinedCardBorder
( I80e72 )
Изменения API
- We have moved the Button label parameter to the end to support trailing lambda syntax and removed the role parameter (as this can be overridden using
Modifier.semantics
).ButtonColors
constructors are now public. ( Ie1b6d )
Версия 1.0.0-альфа04
10 мая 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha04
is released. Version 1.0.0-alpha04 contains these commits.
Новые функции
- We have added
IconButton
to Material3, a circular button with a single slot for icon/image. There are four variations:IconButton
,FilledIconButton
,FilledTonalIconButton
andOutlinedIconButton
. For different sizes ofIconButton
, we recommend usingModifier.touchTargetAwareSize
andExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
andLargeButtonSizeIcon
provided inIconButtonDefaults
. We also provideIconButtonDefaults.iconSizeFor
to determine the recommended icon size for a given button size. ( I721d4 )
Версия 1.0.0-альфа03
19 апреля 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha03
is released. Version 1.0.0-alpha03 contains these commits.
Изменения API
- We have added the Material 3 Button component - this is our stadium-shaped button and was formerly named Chip in the Wear Compose Material library (it has been renamed to Button for consistency with the Compose Material 3 library). The default Button has a filled background and there are button variations for
FilledTonal
(muted background), Outlined (transparent with a thin border) and Child (transparent background and no border, used for supplementary actions with the lowest amount of prominence). Round buttons for simple icon and text content will follow in a future release.( Ia6942 )
Версия 1.0.0-альфа02
5 апреля 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha02
is released. Версия 1.0.0-alpha02 содержит эти коммиты.
Исправления ошибок
- We have added a
DefaultTextStyle
to Wear Compose Material 3 which defaults thePlatformTextStyle.includeFontPadding
to true (the current setting). This will allow us to synchronize turning off font padding by default with the Compose libraries in the future (see Fix font padding in Compose for background ). ( I7e461 )
Версия 1.0.0-альфа01
22 марта 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha01
is released. Версия 1.0.0-alpha01 содержит эти коммиты.
Новые функции
Material 3 is the next evolution of Material Design and includes updated theming and redesigned components. Material 3 on Wear Compose is designed to be cohesive with the Material 3 Compose library on Android. This first alpha release contains early, functional implementations of the following:
We will continue to develop Wear Material (
androidx.wear.compose:compose-material
) and Wear Material 3 (androidx.wear.compose:compose-material3
) in parallel. Future material3 releases will extend the widget set to include other familiar components from Compose for Wear OS, such as buttons, pickers, and sliders.The Wear Material and Wear Material 3 libraries are mutually exclusive and should not be mixed in the same app, primarily because they reference different themes which would lead to unexpected inconsistencies.
Wear Compose Material 3
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
27 августа 2025 г. | 1.5.0 | - | - | - |
Объявление зависимостей
To add a dependency on Wear, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
классный
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.0" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Котлин
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.
Более подробную информацию см. в документации по системе отслеживания проблем .
Wear Compose Material3 Version 1.5
Version 1.5.0
27 августа 2025 г.
androidx.wear.compose:compose-*:1.5.0
is released. Version 1.5.0 contains these commits .
Important changes since 1.4.0
First release of the Wear Compose Material 3 library, which supports the new Material 3 Expressive design system. This release includes:
- Updated
MaterialTheme
and dynamic color theming. - New
AppScaffold, ScreenScaffold
,HorizontalPagerScaffold
, andVerticalPagerScaffold
components to lay out the structure of the screen and coordinateScrollIndicator
,TimeText
,HorizontalPageIndicator
, andVerticalPageIndicator
animations. - Shape morphing
IconButton
,TextButton
,IconToggleButton
, andTextToggleButton
, with variations that animate when pressed or checked. -
EdgeButton
, which has a special shape designed for the bottom of the screen. -
ButtonGroup
implements an expressive group of buttons, in a row that shape-morphs when touched. -
AlertDialog
andConfirmationDialog
with variations for additional dialog content. -
TimePicker
andDatePicker
components. - Progress indicators include
CircularProgressIndicator
(with segmented variation),ArcProgressIndicator
, andLinearProgressIndicator
.
In addition, Wear Compose Foundation 1.5.0 includes the following:
-
TransformingLazyColumn
, a lazy, vertically scrolling list that supports scaling and morphing animations. - Support for paging in Wear Compose Foundation with
HorizontalPager
andVerticalPager
. - Hierarchical Focus Groups - used to annotate composables in an application to keep track of the active part of the composition and coordinate focus.
Read about more about ( Material 3 Expressive for Wear OS )
Version 1.5.0-rc02
13 августа 2025 г.
androidx.wear.compose:compose-*:1.5.0-rc02
is released. Version 1.5.0-rc02 contains these commits .
Исправления ошибок
- Fixed a bug in
TimePicker
where long, internationalised strings for the period (AM/PM) could break the layout. ( I0fa81 )
Version 1.5.0-rc01
30 июля 2025 г.
androidx.wear.compose:compose-*:1.5.0-rc01
is released. Version 1.5.0-rc01 contains these commits .
Исправления ошибок
-
TimePicker
is now fully driven by the user's locale, usingDateFormat.getBestDateTimePattern
to determine the order and content of its pickers and separators. This fixes incorrect column ordering for CJK languages, resolves RTL layout issues in languages like Arabic, uses localized separators, and supports both 0-11 and 1-12 hour formats based on the locale ( I5d543 ) -
DatePicker
now displays a numeric month in some locales, such as CJK, to avoid mixing numeric and linguistic formats (eg, 2025 | 07 | 02 instead of 2025 | 7月 | 02). This change applies a heuristic that checks if the locale uses linguistic suffixes for the year and, if so, switches the month format from textual (MMM) to numeric (MM) for consistency. ( Ia93fe ) - The vertical space for the heading in the Picker component is now constant, preventing a visible shift when a picker column is selected, especially in
Talkback
mode. ( I7f8b7 ) - Fixed an accessibility bug caused by
HorizontalPageIndicator
andVerticalPageIndicator
being drawn full screen. The page indicators are no longer full-screen, and will be positioned automatically when used withHorizontalPagerScaffold
orVerticalPagerScaffold
. When not using a pager scaffold, specify the alignment explicitly usingmodifier = Modifier.align(Alignment.BottomCenter)
withHorizontalPageIndicator
andmodifier =Modifier.align(Alignment.CenterEnd)
withVerticalPageIndicator
. ( I3a0ad ) - The swipe direction in
SwipeToReveal
is now consistent for both LTR and RTLLayoutDirections
. ( I6d427 ) - Reinstated
SwipeToReveal
vertical centering for actions. IfhasPartiallyRevealedState = true
,RevealState
should be reset toRevealValue.Covered
by the caller when scrolling occurs. ( I6473d ) -
SwipeDismissableNavHost
now correctly clips content for API 36 onwards. ( Ib9a44 )
Version 1.5.0-beta06
16 июля 2025 г.
androidx.wear.compose:compose-*:1.5.0-beta06
is released. Version 1.5.0-beta06 contains these commits .
Исправления ошибок
- Fix
EdgeButton
animation whenLazyColumn
orScalingLazyColumn
havereverseLayout = true
. ( I46a1a ) - Fixed a bug in
ScreenScaffold
where touch-to-explore was not working under Talkback if aScrollIndicator/PageIndicator
was provided. ( I6dcee ) -
TransformingLazyColumn
now allows for custom morphing fromTransformationSpec
by readingitemHeight
value provided byTransformationSpec
in the background painter. ( I6a599 ) - Animated enabled/disabled color transitions for
IconButton
, to be consistent withIconToggleButton
. ( Ife10a ) - Removed the minimum section clamping in
CircularProgressIndicator
to avoid a noticeable jump to the minimum dot size when animating. As part of this change, thetargetProgress
parameter indrawCircularProgressIndicator
is now unused. ( I33309 ) - Picker now has the semantic role
ValuePicker
which can be used by screen readers to make pickers more accessible. Picker also has updated accessibility click labels which differentiate between adjusting the value in read-only mode and selecting the current value otherwise. ( I33309 )
Version 1.5.0-beta05
2 июля 2025 г.
androidx.wear.compose:compose-*:1.5.0-beta05
is released. Version 1.5.0-beta05 contains these commits .
Исправления ошибок
- Updated the documentation to clarify usage of
Modifier.edgeSwipeToDismiss
( I78cb5 ) - Addressed bug where multiple revealed items could be shown with
SwipeToReveal
in lazy lists ( I1d4f6 ) - Container shapes in
TransformingLazyColumn
are now scaled, in order to avoid clipping the contents. ( I9221a ) - The
TimePicker
andDatePicker
label for hour/minute/second or year/month/day now has heading semantics for screen readers ( I77d8b ) - Removed the pause between loops in the indeterminate
CircularProgressIndicator
( Iaf0bb ) - Fixed an animation bug in
TransformingLazyColumn
when items are removed. ( I73034 ) - Corrected handling of anchor items in
TransformingLazyColumn
when items are removed. ( I841a8 ) -
PickerGroup
now animates the Pickers horizontally when autocentering is turned on and the selected (centered) picker is changed. ( Ic82c4 )
Version 1.5.0-beta04
18 июня 2025 г.
androidx.wear.compose:compose-*:1.5.0-beta04
is released. Version 1.5.0-beta04 contains these commits .
Исправления ошибок
- Fix layout bug in
TransformingLazyColumn
, where content that fits within the screen is now aligned correctly from the top of the screen ( I80115 ) - Fixed an issue with
TransformingLazyColumn
where the bottom item was incorrectly scaled when scrolling to the very bottom of a list with anEdgeButton
. The scroll progress now follows a gradient descent when restoring the layout. ( Iea375 ) -
TransformingLazyColumn
now reads the item height inside the background painter, which allows customTransformationSpecs
to implement morphing. ( I022f0 ) -
SwipeToReveal
now vertically centers the revealed actions correctly. ( I4419b ) - Fixed a bug in
SwipeToReveal
that prevented it working correctly with swipe-to-dismiss if both views and compose were in use on the screen. ( I5dc0e ) - Fixed a bug where
SwipeToReveal
actions were drawn with a vertical offset when scrolling. ( I29444 ) -
AlertDialog
,ConfirmationDialog
,OpenOnPhoneDialog
andSwipeToReveal
now round up paddings and sizes that are calculated as a percentage of the screen size. ( I76367 ) -
ButtonDefaults.outlinedButtonBorder
now updates following enabled/disabled state changes size( If2ddd ) - Fixed a bug in
EdgeButton
height that occurred on complex screens with Pager andScreenScaffold
. ( I946e3 ) - Fixed a race condition that could cause Placeholder animations to stop. ( I53530 )
- Improved
HorizontalPageIndicator
andVerticalPageIndicator
performance by drawing to Canvas. ( Ifae1e ) - Refined the shape of EdgeButton to smooth the transitions between the ellipsis and circles that make up the outline. ( I7721e )
- Fixed a bug in
LevelIndicator
that caused animations to stop, due to unnecessary recompositions. ( I45d08 )
Version 1.5.0-beta03
4 июня 2025 г.
androidx.wear.compose:compose-*:1.5.0-beta03
is released. Version 1.5.0-beta03 contains these commits .
Изменения API
-
OpenOnPhoneDialog
now announces only the message text under TalkBack, and skips the icon semantics. TheOpenOnPhoneDialogDefaults
have been updated to remove theiconContentDescription
and thecontentDescription
parameter fromicon()
. Also,ConfirmationDialogDefaults
now has modifier parameters onSuccessIcon
andFailureIcon
composables. ( Id2ae2 )
Исправления ошибок
- Changed the order in which we apply the effect of
SurfaceTransformation
parameters. Before, the transformations applied to Wear Material3 components were done as follows: background painter, container transformation, content transformation. Now, the first 2 are inverted, and we apply any passed in modifier between them, so it is affected by container transformations. This fixes cases like using a placeholder shimmer effect with elements in a TLC using the transformation parameter. ( I786cf ) -
RevealState.Saver
was added to be used to restore the state ofSwipeToReveal
when activity or process is recreated.rememberRevealState
function now uses this Saver by default. ( Ie0ecb ) -
SwipeToReveal
primary and secondary actions buttons should default toButtonDefault.Height
(fixed bug where these were filling the maximum height for taller buttons). ( Ibfba1 ) - Changed
SwipeToReveal
to reset the last component interacted with, when the swipe right gesture is performed. ( Ia8450 ) -
SwipeToReveal
was changed to settle on theRevealing
state when the end position of the swipe is in between the revealing and revealed anchors, and is closer to the Revealing anchor. ( If4458 ) - Now
ButtonGroup
's content is properly inverted in a RTL layout ( Ib378d ) -
AnimatedText
now supports RTL text direction ( I4533c ) -
TransformingLazyColumn
now resizes items correctly when the bottom item is removed ( Idacab ) -
TransformingLazyColumn
now makes just one measuring pass, which improves performance by reducing frame times. ( I501a1 )
Version 1.5.0-beta02
20 мая 2025 г.
androidx.wear.compose:compose-*:1.5.0-beta02
is released. Version 1.5.0-beta02 contains these commits .
Исправления ошибок
- Updated baseline profiles for foundation, material & material3 libraries. ( I53f06 )
- Fixed a bug in
TransformingLazyColumn
, where items resized when the bottom item was removed. ( Idacab ) - Fixed a bug with
TransformingLazyColumn
, when the list got stuck at the top or bottom of the list. ( I49d00 ) -
OpenOnPhoneDialog
under TalkBack should announce the curved text, rather than the icon content description. ( I4efe8 ) - Fixed a bug in
SwipeToReveal
that would report the wrong anchor inRevealState.currentValue
whenhasPartiallyRevealedState
is set to false. ( I9c7cf ) -
SwipeToReveal
undo buttons are nowButtonDefaults.Height
by default. ( I1f6c8 ) -
BasicSwipeToDismissBox
performance has been improved by eliminating use of Canvas for drawing scrims. ( I68f2c ) - Fixed an accessibility bug in Slider, where the announced percentage did not match the value after updates ( I91146 )
- Fixed a bug on
placeholderShimmer
implementation. ( Iee39b -
TransformingLazyColumn
performance has been improved, by optimizingScrollProgress
calculation by 30%. ( I4c4cb )
Version 1.5.0-beta01
7 мая 2025 г.
androidx.wear.compose:compose-*:1.5.0-beta01
is released. Version 1.5.0-beta01 contains these commits .
The 1.5.0-beta01 release of Compose for Wear OS indicates that this release of the library is feature complete and the API is locked (except where marked as experimental).
Wear Compose 1.5.0-beta01 includes the Wear Compose Material3 library, which supports the new UI design system called Material 3 Expressive. It is recommended to upgrade from Material to Material3 to embrace the new visual design in apps, and to benefit from the new components as follows:
-
MaterialTheme
for updated and extended color schemes, typography, and shapes to bring both depth and variety to your designs. - Dynamic Color Theming which automatically generates a color scheme for your app to match the watch face colors.
- New components automatically adapt to larger screen sizes by default
- Shape Morphing - round button components like
IconButton
,TextButton
,IconToggleButton
andTextToggleButton
support variations that animate when pressed or checked. -
EdgeButton
- a new edge-hugging button with a special shape designed for the bottom of the screen. - Scaffolds - introducing
AppScaffold
andScreenScaffold
to lay out the structure of the screen and coordinateScrollIndicator
andTimeText
animations. - Buttons - numerous stadium-shaped buttons are supported with flexible, single-slot containers and multi-slot variations for buttons with icons and labels.
CheckboxButton
andSwitchButton
are provided when toggle buttons are needed, whilstRadioButton
is the available selection button ('Split' variations of the toggle and selection buttons are also provided). -
ButtonGroup
- implements an expressive group of buttons in a row that shape-morph when touched. -
AlertDialog
variations support ok/cancel buttons or anEdgeButton
. -
ConfirmationDialog
is available to display a message with a timeout, supporting special animations for success, failure and open-on-phone variations. - Pickers -
TimePicker
andDatePicker
variations are supported as well as the Picker andPickerGroup
components for building your own picker screens. -
ProgressIndicators
- circular, and linear progress indicators are supported (theCircularProgressIndicator
has segmented and indeterminate variations). - Cards - a number of card variations are available, including
TitleCard
which offers specific layouts for cards with title, time, subtitle or content slots.TitleCard
can also be given an image background to reinforce the meaning of the information in a card. - Pagers -
HorizontalPagerScaffold
,VerticalPagerScaffold
andAnimatedPage
components coordinateHorizontalPageIndicator
andVerticalPagerIndicator
animations.HorizontalPager
andVerticalPager
are released in the Wear Compose Foundation library. - Placeholders - draws a skeleton shape over a component, for situations where no provisional content is available.
- Sliders and Steppers - both sliders and steppers allow users to make a selection from a range of values. Sliders are more compact and can be segmented, whereas Stepper is a full screen component typically paired with a
StepperLevelIndicator
. -
SwipeToReveal
- used to add additional actions to a composable when it is swiped right-to-left.
In addition, Wear Compose Foundation 1.5.0-beta01 includes these new components:
-
TransformingLazyColumn
- a lazy, vertically scrolling list the supports scaling and morphing animations - Hierarchical Focus Groups - used to annotate composables in an application, to keep track of the active part of the composition and coordinate focus.
- Pagers -
HorizontalPager
andVerticalPager
components, built on the Compose Foundation components with Wear-specific enhancements to improve performance and adherence to Wear OS guidelines.
Изменения API
- Updated the Hierarchical Focus API - renamed
Modifier.hierarchicalFocus
toModifier.hierarchicalFocusGroup
and removed the callback parameter; removed the overload ofModifier.hierarchicalFocusRequester
with aFocusRequester
parameter; created a newCompositionLocal
,LocalScreenIsActive
so that components can inform and check which screen is the active one. ( I5ff7c ). - Deprecated
SwipeToReveal
from Wear Compose Foundation in favor ofSwipeToReveal
APIs in Wear Compose Material and Wear Compose Material3. Please replace Wear FoundationSwipeToReveal
imports with Wear Compose Material/ Wear Compose Material3 imports to continue using the APIs. ( Ia147d ). - Wear Compose Material3
SwipeToReveal
dependencies on Foundation were moved to the material3 package, egRevealValue
,RevealDirection
,RevealActionType
,RevealState
,rememberRevealState
. Developers should change their imports of these classes and functions fromandroidx.wear.compose.foundation
toandroidx.wear.compose.material3
. ( I640e6 ). - Updated the Wear Compose Material3
SwipeToReveal
API as follows: addedprimaryAction
,onFullSwipe
,secondaryAction
,undoPrimaryAction
,undoSecondaryAction
andhasPartiallyRevealedState
parameters to theSwipeToReveal
composable; removed the ability to customizepositionalThreshold
andanimationSpec
fromRevealState
; removedlastActionType
,revealThreshold
and width fromRevealState
; changed theRevealState
constructor to accept aRevealDirection
instead of anchors; removedcreateRevealAnchors
, anchors, andbidirectionalAnchors
functions;SwipeToRevealScope
functionsprimaryAction
,secondaryAction
,undoPrimaryAction
andundoSecondaryAction
were renamed toPrimaryActionButton
,SecondaryActionButton
,UndoActionButton
and made into Composable functions; markedRevealActionType
as internal. ( I885d0 ). - Further updated
SwipeToReveal
API as follows: renamedonFullSwipe
toonSwipePrimaryAction
; renamedSwipeToRevealNonAnchoredSample
to indicate the use of thehasPartiallyRevealedState
parameter; removedactionButtonHeight
, since the default is the Button's default height and the larger height can be set using a modifier; removed theSmallActionButtonHeight
fromSwipeToRevealDefaults
; made the value parameter inRevealValue
andRevealDirection
constructors private. ( I465ce ).
Исправления ошибок
- Fixed
ScreenScaffold
'sEdgeButton
handling so that, after aTransformingLazyColumn
item is removed, theEdgeButton
is animated into place. ( I6d366 ). - Updated Wear Compose dependencies on Compose libraries to version 1.8.0. ( I2ef3f ).
- Updated the motion of the indeterminate
CircularProgressIndicator
so that it no longer regresses temporarily. ( Ieddb1 ). - Fixed a
SwipeDismissableNavHost
bug - the focus was not switching correctly after swiping back, causing rotary input to fail (this was for API 36+, which uses predictive back). ( Ieddb1 ). - Amended documentation for the Hierarchical Focus API ( Idf2ff ).
- Updated the documentation for Button and Card to state how
containerPainter
anddisabledContainerPainter
overridecontainerColor
anddisabledContainerColor
( I4a453 ). - Reverted a change to
TimeText
in the previous release which moved theBroadcastReceiver
to a worker thread, because it caused issues for apps that manage their own threading during navigation. ( I34d02 ). - Updated the Picker samples to remove unnecessary remember calls and instead use
rememberUpdatedState
in Picker to remember the latestcontentDescription
lambda function. ( Icb5b1 ). - Updated text styles in
TimePicker
andDatePicker
so that font changes no longer result in truncation. ( I26194 ). -
ListHeader
andListSubHeader
now default text alignment to center-aligned and start-aligned respectively. ( I78339 ). - Updated Foundation and Material Swipe to Reveal samples and demos to announce custom accessibility actions (the custom actions must be added as semantics on the content, not on the
SwipeToReveal
composable itself). ( Ie92a3 ). - Updated the default
MaxLines
set on theEdgeButton
content according to its size - it is now 1 for extra small, 2 for small and medium, and 3 for large. ( Ie35f6 ). - Simplified
LocalReduceMotion
so that the observer is only registered once, to improve performance. ( Ib1979 ). - Minimized the number of redraws in
ScrollIndicator
, to improve performance. ( Ia7a67 ). - Fixed a bug in
TransformingLazyColumn
, where the top visible item in the list did not scale correctly when EdgeButton achieved its full height. ( I30580 ).
Wear Compose Material3 Version 1.0
Version 1.0.0-alpha37
23 апреля 2025 г.
androidx.wear.compose:compose-material3:1.0.0-alpha37
is released. Version 1.0.0-alpha37 contains these commits .
Изменения API
- Removed
scrollTransform
from the public API surface. Use the combination oftransformedHeight
andgraphicsLayer
modifiers if you need to get the same functionality. ( Ie181d ) - Replaced
ImageButton
andImageCard
composables withButton
andCard/TitleCard
overloads respectively. RenamedimageButtonColors
tobuttonWithContainerPainterColors
andimageCardColors
tocardWithContainerPainterColors
. Added publicButtonDefaults.scrimBrush
andCardDefaults.scrimBrush
. Renamed buttonimageBackgroundGradientStartColor
andimageBackgroundGradientEndColor
toscrimGradientStartColor
andscrimGradientEndColor
. RenamedCardDefaults.ImageContentPadding
toCardDefaults.CardWithContainerPainterContentPadding
( I7b8b6 ) -
Picker
andPickerGroup
now take thecontentDescription
as a lambda to avoid unnecessary recompositions. ( I002dd )
Исправления ошибок
- Fixed an issue where indeterminate
CircularProgressIndicator
would wobble during animation if width is not equal to height. ( I76bfe ) - Fixed an issue with edge button layout on invalid size. Now prevents updating the layout of the edge button when the height is NaN. ( I32b93 )
- Increased the max sweep angle in
OpenOnPhoneDialog
so that the default 'Check your phone' text is not clipped with the largest font size. ( I90af9 )
Version 1.0.0-alpha36
9 апреля 2025 г.
androidx.wear.compose:compose-material3:1.0.0-alpha36
is released. Version 1.0.0-alpha36 contains these commits .
Изменения API
- Replaced
ButtonDefaults.imageBackgroundButtonColors
withImageButton
,ButtonDefaults.imageButtonColors
,ButtonDefaults.containerPainter
andButtonDefaults.disabledContainerPainter
. And similar changes for Card. The painters are removed fromButtonColors
andCardColors
. ( I8c6a1 ) - Updated placeholders to simplify the API. We now provide two Modifiers,
Modifier.placeholderShimmer
to apply a shimmer effect at the component level, andModifier.placeholder
to apply a mask on top of unloaded content ( Iaee7a )
Исправления ошибок
- Integrated overscroll into the
ScrollIndicator
. ( Icfb7f ) - Address blank backgrounds and missing dialogs when launching material3 dialogs. ( Ice597 )
- Fixed issues in
FadingExpandingLabel
when text spans multiple lines. ( I04eb7 ) - Updated padding between primary and secondary labels on buttons. ( I99b7b )
-
ArcLarge
has been reduced from20sp
to18sp
, and letter spacings onArcLarge
andArcSmall
have been updated.ConfirmationDialog
/OpenOnPhoneDialog
now use the defaultArcLarge
instead of overriding it to18sp
. ( Id39a8 )
Обновления зависимостей
- This library now targets Kotlin 2.0 language level and requires KGP 2.0.0 or newer. ( Idb6b5 )
Version 1.0.0-alpha35
26 марта 2025 г.
androidx.wear.compose:compose-material3:1.0.0-alpha35
is released. Version 1.0.0-alpha35 contains these commits .
Изменения API
-
AlertDialog
top padding is now reduced by default when an icon is provided - this makes best use of the screen size available. ( Ief06c ) -
PagerScaffoldDefaults.FadeOutAnimation
has been renamed toPagerScaffoldDefaults.FadeOutAnimationSpec
. The page parameter onAnimatedPage
has been renamed topageIndex
. ( I701f2 ) - Updated naming for
TransformingLazyColumn
'sSurfaceTransformation
-applyTransformation
split intoapplyContainerTransformation
andapplyContentTransformation
, and renamedcreateBackgroundPainter
tocreateContainerPainter
. Further naming updates toTransformationSpec
andResponsiveTransformationSpec
. ( I1c534 ) - The
AppScaffold backgroundColor
has been renamed tocontainerColor
. ( I4e63f )
Исправления ошибок
- Fixed an issue in
FadingExpandingLabel
where the text did not always expand correctly. ( I0e773 ) -
ArcLarge
has been reduced from 20sp to 18sp, and letter spacings onArcLarge
andArcSmall
have been updated.ConfirmationDialog/OpenOnPhoneDialog
now use the defaultArcLarge
instead of overriding it to 18sp. ( Id39a8 ) - Updated the heading animation for
DatePicker
andTimePicker
based, so that the fade-out and fade-in animation act as one Spring animation. ( I68963 ) - Optimized
PagerScaffold
by avoiding the reading ofcurrentPageOffsetFraction
in theAnimatedPage
composable. ( I433ef ) - All type scales have been updated to have proportional numerals by default, because that is seen as the most frequent use case and defaulting to tabular resulted in too much spacing between certain number pairings.
TimePicker
andDatePicker
continue to applyFontFeatureSetting=tnum
for tabular numerals. ( I88929 ) - Corrected the initial RSB input focus for
TimePicker
andDatePicker
. ( I1c773 ) - Updated the default text on
OpenOnPhoneDialog
to "Check your phone". ( I00a3f ) - Updated weights for
ArcLarge
andArcMedium
from 600 to 599 to workaround an issue where weight 600 is treated as bold ( I2a51d ) - Update
SwipeToReveal
paddings between content and action buttons, and also the padding between the icon and text of the action buttons. ( Ic46cb )
Version 1.0.0-alpha34
12 марта 2025 г.
androidx.wear.compose:compose-material3:1.0.0-alpha34
is released. Version 1.0.0-alpha34 contains these commits .
Изменения API
-
PagerScaffold
no longer emits aPager
component - instead this must be provided via thecontent
Composable.AnimatedPage
andsnapWithSpringFlingBehaviour
are now public and can be used along with Wear FoundationPager
to achieve previous M3PagerScaffold
behaviour. (See updated samples). ( Ia4724 ) - Updated
PagerState
, removing the Compose FoundationPagerState
as the base class and addingcurrentPage
,currentPageOffsetFraction
andpageCount
properties. Updated theGestureInclusion
interface, renaming the method toignoreGestureStart
. ( I4ae07 ) -
LevelIndicator
sweep angle parameters are now annotated withFloatRange(0, 360)
( I7e636 ) - We have added
CurvedModifier.clearAndSetSemantics
to provide a means by which curved semantics can be turned off.CurvedText
continues to default the content description to the text, buttimeTextCurvedText
andtimeTextSeparator
do not now announce their contents. ( I4b568 ) - Added a background and default content color parameters to
AppScaffold
. ( I56652 ) -
HorizontalPager
's default handling of swipe gestures has been renamed toPagerDefaults.gestureInclusion
. The default behavior is now to only ignore swipe gestures that start on the left edge of the first page, and only then when Talkback is turned off. In other cases, the default behavior is that swipe gestures will not be ignored by the pager, so they will not be available to swipe-to-dismiss handlers. ( Iee486 ) - Added a
SurfaceTransformation
parameter to button, card and list header components, so that they can apply different background and content transformations when used in containers that change items appearance based on their position, such asTransformingLazyColumn
. ( Iabe3f ) - We have updated 'public const val' properties in our Wear Compose Material3 API to 'public val', to avoid the values being inlined. ( Ib0f32 )
- Added support for an edge-swipe zone to
SwipeToReveal
. FoundationSwipeToReveal
's default behavior is now to disallow swiping when the gesture starts from the edge. Material3SwipeToReveal'
s default behavior is now to disallow swiping when the gesture starts from the edge, when theSwipeDirection
is set to single direction. ( I32ef0 ) - Added
FadingExpandingLabel
composable, which allows it to fade in text with animation line by line. ( Ic60fa ) -
TransformingLazyColumn
now uses emptycontentPadding
by default instead of putting first and last items into center. ( I77ab7 ) - Removed
SwipeToReveal
'srememberRevealState
from the Wear Compose Material3 library. ( I8c0e0 )
Исправления ошибок
- Wear Compose libraries have been updated to the Kotlin 2.0 compiler. ( I2de79 )
- Support for non-round
ScrollIndicator
andPageIndicator
has been removed from Material3. Square screen support is also no longer part of the Wear OS requirements, see the Getting Started guide for more information. ( I9a852 ) - The
CurvedTextStyle
used inConfirmationDialogDefaults
andOpenOnPhoneDialogDefaults
has been updated to useArcLarge
typography with size18sp
and letter spacing1.8sp
. ( Ic9ced ) -
Card
,ListHeader
,RadioButton
,CheckboxButton
,SwitchButton
no longer constrain the height of its contents by default. Where necessary, useModifier.height(IntrinsicSize.Min)
to restore the previous behavior if needed. ( I80bb8 ) - We have updated the default
TimeText
andScrollIndicator
colors to include more gray tones, because usingOnBackground
(white) directly carried too much visual weight when competing with other content on screen like titles. ( I8b36f ) - We have reduced the timeout for animating the
TimeText
andScrollIndicator
in scaffold components to 2 seconds. ( I52021 ) - We have updated the motion of Dialog so that the scale of the background of the Dialog is synchronised with swiping to dismiss. ( I925a9 )
- Add demo of M3
SwipeToReveal
usingedgeSwipeToDismiss
modifier. ( I02b07 ) - We have added a heading to
DatePicker
andTimePicker
under TalkBack so that the user is informed to scroll to set date/time. ( Id738d ) -
AnimatedText
now follows the reduce motion setting. ( Ib6578 ) - The optimisation to use
AppScaffold
for display Dialog content has been improved to allow multiple dialogs to be displayed on top of each other ( I1209c )
Version 1.0.0-alpha33
26 февраля 2025 г.
androidx.wear.compose:compose-material3:1.0.0-alpha33
is released. Version 1.0.0-alpha33 contains these commits .
Изменения API
- We have removed the label parameter from
SwipeToRevealScope
'sprimaryAction
andsecondaryAction
. Custom action semantics should be added to the content of theSwipeToReveal
component directly, by the developer. ( Ia67f3 ) - We have removed the 'Button' prefixes from sizes, text styles and color functions in
IconToggleButtonDefaults
andTextToggleButtonDefaults
( I5471d ) - We have removed the experimental
LocalMinimumInteractiveComponentEnforcement
( I4ad8a ) - We have replaced the
PickerGroupScope
DSL with a composable. As such, we removed thepickerGroupItem
method fromPickerGroupScope
, and instead added@Composable PickerGroupItem
that should be used to add a Picker toPickerGroup
. We also updated the type ofPickerGroup
'content' parameter to@Composable PickerGroupScope.() -> Unit
. ( Ic6aec ) - We have added a
LevelIndicator
overload for fractional values and added a Stepper prefix to those overloads that include a range parameter (which are suitable for use with the Stepper component). ( If4234 ) - We have added
TransformingLazyColumn
'sTransformationSpec
to the API, which allows the definition of the exact transformations happening to the items as they are being scrolled through the TLC. ( I21856 ) - We have updated
IconButtonShapes
,IconToggleButtonShapes
,TextButtonShapes
andTextToggleButtonShapes
to be consistent with the compose/material3 classes ( I5a081 ) - We have added an
overscrollEffect
parameter added toScalingLazyColumn
,TransformingLazyColumn
andScreenScaffold
. ( I0cee8 ) - We have renamed the
swipeDirection
parameter torevealDirection
inrememberRevealState
. ( I7472f ) - Wear Pager now has its own
PagerScope
instead of using ComposePagerScope
. ( I9195b ) - We have removed the
LinearProgressIndicatorContent
composable, please useLinearProgressIndicator
directly so that changes to values are animated by default. ( I2c4ad ) - We have removed the
CircularProgressIndicatorStatic
composable and added a publicDrawScope
functiondrawCircularProgressIndicator
with the same functionality. Please useCircularProgressIndicator
directly so that changes are animated by default, but build your own composable fromdrawCircularProgressIndicator
if custom animations are needed. ( Ie762f ) - We have reordered the parameters in
DrawScope.drawCircularProgressIndicator
to move up thetargetProgress
parameter. ( I8ab92 ) - The
OpenOnPhoneDialog
api was updated for better clarity and consistency with other Dialogs. Theshow
parameter was renamed tovisible
andcurvedText
is now provided by the caller instead of having a default value. ( Idec2d ) - We have renamed
openOnPhoneCurvedText
toopenOnPhoneDialogCurvedText
( I65bdd ) - We have added
ScrollIndicatorColors
for providing custom colors toScrollIndicator
. ( I9eb8c ) - Allow the configuration of the color used to draw a background behind
TimeText
. ( I9f5d9 ) - Updated
ArcLarge
,ArcMedium
andArcSmall
typographies to beCurvedTextStyle
( Iffc41 ) - We have removed
ScreenScaffoldDefaults.contentPaddingWithEdgeButton
. ( Ia923e ) - We have added
errorDim
to theColorScheme
, for high priority errors or emergency actions such as safety alerts, failed dialog overlays or stop buttons. ( I70998 )
Исправления ошибок
- We have pinned
wear.compose.material3
to version 1.15.0 ofandroidx.core.core
( I132e9 ) - We have improved Dialog's performance by using the
AppScaffold
to layer dialogs over other screen content ( I1b9a4 ) - Reduced
EdgeButton
's internal vertical padding. ( I1a5bb ) - We have added Button semantics to Slider buttons. ( I80cc6 )
Version 1.0.0-alpha32
January 29, 2025
androidx.wear.compose:compose-material3:1.0.0-alpha32
is released. Version 1.0.0-alpha32 contains these commits .
Изменения API
- On
CurvedTextStyle
, we have split letter spacing into clockwise letter spacing and counter clockwise letter spacing. This is required because clockwise letters fan out from the baseline whereas counter-clockwise letters fan in (so larger letter spacing is needed) ( I4b848 ) - We have updated
IconButtonShapes
,IconToggleButtonShapes
,TextButtonShapes
andTextToggleButtonShapes
to improve consistency across Material3 libraries. This change also introduces shape caching to reduce the number of allocations. ( I049fc ) - We have removed the
pressedShapeCornerSizeFraction
parameter from thevariantAnimatedShape
method inIconToggleButton
andTextToggleButton
( I58a65 ) - We are introducing improvements to curved text rendering (including
TimeText
) that are incompatible with non-round screens. Non-round screen support is also no longer part of the Wear OS requirements, see the Getting Started guide for more information. ( I1cc1c ) - We have updated
ButtonGroup
'sButtonGroupScope
, replacing the DSL-basedButtonGroupItem
withModifier.weight
,Modifier.minWidth
andModifier.enlargeOnPress
. ( I16c3c ) - In the
ButtonGroup
API, we have updated the new modifier-basedButtonGroupScope
:enlargeOnPress
is now calledanimateWidth
, and it takes anInteractionSource
, rather thanMutableInteractionSource
because it is not necessary to mutate it. We have also added public constantButtonGroupDefaults.DefaultMinWidth
, the default minimum width of buttons in aButtonGroup
. ( Ie27ec ) - We have updated
ListHeaderDefaults.contentColor
to start with a lowercase letter as it is a composable property ( I125a5 ) - We have added a content description parameter to
SliderDefaults.DecreaseIcon
andSliderDefaults.IncreaseIcon
, with suitable default values ( I2e1a7 ) - We have renamed the
spacing
parameter inPicker
andPickerGroup
toverticalSpacing
( Ib75cc ) - We have removed
ConfirmationDialogDefaults.successText
andfailureText
because it is expected that callers ofConfirmationDialog
will provide strings with more context. Also renamedconfirmationCurvedText
toconfirmationDialogCurvedText
. Finally, renamed the Dialogshow
parameter to visible for consistency with other recent updates to dialogs. ( I10074 ) -
IconButton
renameddisabledImageOpacity
toDisabledImageOpacity
. ( I5f94a )
Исправления ошибок
- We have fixed a bug in
EdgeButton
animation so that the correct size is used in each frame ( Id3b58 ) - Fixed an issue with
animateContentSize
not working withButton
. ( Ib18a0 ) - We have changed the Title Large type scale to have font size
18dp
( Ic9d52 ) - We have updated
AlertDialog
spacing and icon size ( Iac28c ) - We have fixed inconsistencies in large screen breakpoints (screens at and above 225dp are large screen) ( I36474 )
- Fixed a minor bug in button positioning ( I952c2 )
Version 1.0.0-alpha31
15 января 2025 г.
androidx.wear.compose:compose-material3:1.0.0-alpha31
is released. Version 1.0.0-alpha31 contains these commits .
Изменения API
- We have updated all Wear Compose libraries to 'explicit API' mode. ( Iebf9f )
- We have updated the
ScreenScaffold
andEdgeButton
APIs, so that it is easier to specify content paddings on screens that include anEdgeButton
. In the new API theEdgeButton
'ssize
is only passed to theEdgeButton
, and theScreenScaffold
takes anedgeButtonSpacing
parameter for the spacing betweenEdgeButton
and list content. ( I424fd ) - In
DatePicker
, we have renamed parametersminDate
tomaxDate
, andminValidDate
tomaxValidDate
. InDatePickerColors
, we have renamed parameterselectedPickerContentColor
toactivePickerContentColor
, andunselectedPickerContentColor
toinactivePickerContentColor
( Iba17b ) - We have updated the
ArcProgressIndicator
defaults tostrokeWidth=6dp
and recommendeddiameter = 81.24%
of screen height ( I6f248 ) - We have updated the Confirmation API to reflect its usage as a dialog. The composable is now called
ConfirmationDialog
, with associated updates to the naming of colors and defaults classes. We have also renamed theshow
parameter tovisible
for compatibility with other Compose animation APIs. In addition, we have madeConfirmationDialogContent
,SuccessConfirmationDialogContent
,FailureConfirmationDialogContent
available for situations where developers need to customize the intro/outro dialog animations. ( Iaeb33 ) - We have updated
CircularProgressIndicatorContent
toCircularProgressIndicatorStatic
(the non-animated variation ofCircularProgressIndicator
) so that it can now be used to buildCircularProgressIndicator
with custom animations. ( I1346f ) - We have fixed the parameter ordering on the
ArcProgressIndicator
, putting the modifier parameter first ( I4656a ) - Improved the
SwipeToReveal
API to receive a text slot parameter for the labels of the actions (except secondary action) and to remove label parameters from undo action ( I5b3db )
Исправления ошибок
- We have fixed a bug where
LongPress
haptics were triggered more than once inButton
,Card
,IconButton
,TextButton
( Ia8b0f ) - Changes to the UX of
AlertDialog
- on large screens the confirm and dismiss buttons are now smaller. There is also increased spacing below the confirm and dismiss buttons. ( I4f066 ) - We have changed the animation specs of the action button label of the
SwipeToReveal
component. ( Ib87fb ) - Changed
SwipeToReveal
to expand the container at the same time that the text is displayed. ( I44cf8 ) - Improved
SwipeToReveal
to perform haptic feedback when the swipe passes the threshold where the primary action is committed. ( I23efe ) - We have updated
SwipeToReveal
to display ellipsis on text overflow by default, for primary and undo actions. ( I71f5a ) - We have fixed an issue causing jitter on
ButtonGroup
animations. ( I63f8f ) - We have added text semantics to
AnimatedText
( I6063c ) - Dialog now resets background scaling when the dialog is removed from the composition (without this fix, the launching screen may have been left in a scaled down state) ( Id24ac )
- We have added a shape morph animation to the buttons in the Stepper component ( Id6ed3 )
Version 1.0.0-alpha30
11 декабря 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha30
is released. Version 1.0.0-alpha30 contains these commits .
Изменения API
- The
scrollTransform
modifier forTransformingLazyColumn
was refactored which triggered an API change. ( I0c6dc ) - We have updated
IconToggleButtonShapes
andTextToggleButtonShapes
to have two different shape parametersuncheckedPressed
andcheckedPressed
( I85dbd ) - Invalid month/day options are now visible in the
DatePicker
, with a newinvalidPickerContentColor
, when usingminDate
ormaxDate
. ( If4541 ) - We have updated the
Stepper
API to provideincreaseIcon
anddecreaseIcon
slots - the content for these can be built as usual from the Icon composable. ( Id35da ) - We have updated
dynamicColorScheme
by removing the optionaldefaultColorScheme
parameter and now returning nullableColorScheme
. This means that the caller must explicitly handle the fallback case when a dynamic color scheme is not provided. ( I6d62e ) - We have updated the icon sizes in
ButtonDefaults
for use withCompactButton
. ACompactButton
containing only an icon should useButtonDefaults.SmallIconSize = 24.dp
, whereas aCompactButton
containing both icon and text should useButtonDefaults.ExtraSmallIconSize = 20.dp
. It is recommended thatCompactButton
wrap its content (rather than filling the max width) and samples have been updated to show that. ( I0582c ) - We have added
EdgeButtonDefaults
with recommended icon sizes for the 4 differentEdgeButtonSizes
. Also, updated theEdgeButton
layout so that it has slightly larger bottom padding than top padding, which improves appearance for both Icon and Text content. ( Id772a ) - We have added motion to
LinearProgressIndicator
and exposedLinearProgressIndicatorContent
which provides the visual content without animations. ( Idee99 ) - We have added a new
CircularProgressIndicatorContent
composable to display the visual content ofCircularProgressIndicator
without animations. ( Ie33d4 ) -
TransformingLazyColumn
newly provides the composition localLocalTransformingLazyColumnItemScope
whichCard
s,Button
s andListHeader
s now use to automatically morph when placed inside aTransformingLazyColumn
. Callers can disable automatic morphing using the newTransformExclusion
wrapper. ( I1652f ) - We have updated the type of
ButtonDefaults.shape
toRoundedCornerShape
( Iccdf2 )
Исправления ошибок
- We have fixed a bug to respect existing alpha on background for
TimeText
( I1eb60 ) - We have set
TextMotion
toAnimated
by default in our typography, to avoid text jitter due to snapping letter glyphs to pixel boundaries during scaling operations. ( I626fa ) - We have updated the appearance of the
ScrollIndicator
by increasing width and gap size, to improve visibility. ( Ied7cb ) - We have fixed a bug on
Modifier.scrollTransform
when adding/removing/moving items. ( I6830f ) - We have fixed a round button animation issue for short taps (previously, the minimum animation duration was not always observed). ( I757a7 )
- We have updated the sweep angle for
LevelIndicator
to 20% (ie 72 degrees). ( Idde5c ) - We have fixed
ScrollIndicator
positioning whenScalingLazyColumn
was used withAutoCenteringParams
. ( I387dd ) - We have updated the colors and typography for
ListHeader
andListSubHeader
. Also the colors for the toggle controls onCheckboxButton
andSwitchButton
. ( I39817 ) - We have fixed
ScrollIndicator
positioning inLazyColumn
andScalingLazyColumn
withContentPadding
. ( I2bc51 ) - We have fixed a bug seen in
OpenOnPhoneDialog
progress animation by using the newCircularProgressIndicatorContent
. ( I3e443 ) - We have updated the
HorizontalPagerScaffold
andVerticalPagerScaffold
to disable animations when reduce motion is enabled ( Iaaf68 ) - We have implemented a separate animation for circular progress indicators when progress reaches over 100%. ( I47135 )
- We have fixed a bug where
EdgeButton
could be drawn with an incorrect shape in Pager components ( I91db9 )
Version 1.0.0-alpha29
13 ноября 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha29
is released. Version 1.0.0-alpha29 contains these commits .
Изменения API
- We have updated
TimeText
to provide default content that shows the time. ( Id23b3 ) - We have simplified the
ScrollInfoProvider
forPagerState
by removing theorientation
parameter, which is no longer needed. The new behavior is forTimeText
to remain in place for both horizontal and vertical paging. ( I71767 ) -
LocalHapticFeedback
now provides a defaultHapticFeedback
implementation when the Vibrator API indicates that haptics are supported. The following have been added to theHapticFeedbackType
-Confirm
,ContextClick
,GestureEnd
,GestureThresholdActivate
,Reject
,SegmentFrequentTick
,SegmentTick
,ToggleOn
,ToggleOff
,VirtualKey
. Wear Compose long-clickable components such asButton
,IconButton
,TextButton
, andCard
now perform theLONG_PRESS
haptic when a long-click handler has been supplied. ( I5083d )
Исправления ошибок
- We have updated the motion for Confirmations. ( I04bff )
- We have updated the minimum API dependency to 1.7.4 for Compose libraries. ( I88b46 )
- New motion was added for the
OpenOnPhone
dialog. ( I1e10a ) - We have fixed a bug in the
LevelIndicator
so that it is now correctly displayed with the level is zero. ( Ie95a4 ) - We have updated the
HorizontalPageIndicator
andVerticalPageIndicator
animations. ( I5c8f3 ) - We have added a shrink-to-dot animation to the indeterminate
ArcProgressIndicator
. ( I9fd51 )
Version 1.0.0-alpha28
30 октября 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha28
is released. Version 1.0.0-alpha28 contains these commits .
Изменения API
- We have added an arc variation on the indeterminate circular progress indicator ( I2efc1 )
- We have made public the
AlertDialogContent
andDialog
composables that make up theAlertDialog
API, so that it is possible to add customization if necessary (such as customizingAlertDialog
animation whilst keeping the recommended content layout). In addition, we have addedModifier
andColor
parameters to theEdgeButton
,ConfirmButton
andDismissButton
members ofAlertDialogDefaults
. ( I4eb71 ) - We have updated the
Placeholder
API as follows: renamedPlaceholderState.startPlaceholderAnimation
toPlaceholderState.animatePlaceholder
,PlaceholderState.isShowContent
toPlaceholderState.isHidden
, andPlaceholderDefaults.shape
toPlaceholderDefaults.Shape
; renamed thepainter
parameter inpainterWithPlaceholderOverlayBackgroundBrush
tooriginalPainter
; changed visibility ofPlaceholderState.placeholderProgression
from public to internal and renamed it toplaceholderShimmerProgression
; added placeholder animation duration constants toPlaceholderDefaults
. ( Ie5a59 ) - We have updated the
EdgeButton
API as follows: renamed the parameter onScreenScaffold
frombottomButton
toedgeButton
; madeEdgeButtonSize
a value class. ( Ieef15 ) - We have changed the visibility of
copy()
to public in wear material3 Colors classes ( I0287f )
Исправления ошибок
- Added minimum animation duration for
IconToggleButton
andTextToggleButton
on click ( Ieb333 ) - Added minimum duration on
IconButton
andTextButton
shape animation ( Iebcee ) - Corrected the repeat option state of
DatePicker
. ( I3587c ) - Added motion for Alert and Confirmation dialogs. ( I173b1 )
Version 1.0.0-alpha27
16 октября 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha27
is released. Version 1.0.0-alpha27 contains these commits .
Изменения API
- We have updated the
ScreenScaffold
andScrollIndicator
following the renaming of Wear Compose FoundationLazyColumn
toTransformingLazyColumn
. ( I0608b ) -
EdgeButton
'spreferredHeight
parameter has been renamed tobuttonSize
and its value can only be chosen from 4 constants in the newly introducedEdgeButtonSize
value class. ( Icdd70 ) - We have changed the naming of
ListSubheader
toListSubHeader
and added publicly accessible default values forListHeader
andListSubHeader
. ( I96730 ) - We have added new
HorizontalPagerScaffold
andVerticalPagerScaffold
components for Wear which provide new animations and coordination between time text and page indicator components. ( Iff7d0 ) - We have added rotary support to
HorizontalPagerScaffold
andVerticalPagerScaffold
, enabling users to navigate pagers using rotary input devices. ( I9770d ) - We have made
MotionScheme
API changes to simplify the usage and improve consistency. Removed inlined remember functions and moved the built-in Motion Schemes to a dedicated MotionScheme companion object. Renamed thestandardMotionScheme
and theexpressiveMotionScheme
to standard and expressive. ( I5fd45 ) - We have added support for a dynamic color scheme based on system colors. ( I073e9 )
- We have updated the Stepper to the latest UX specs. ( I622bb )
Исправления ошибок
- We have updated typography and paddings for Card components. ( I3ae48 )
- We have changed the padding in
AlertDialog
between Confirm/Dismiss buttons and the rest of the content from 8dp to 12dp according to UX specs ( Ie55f0 ) - We have updated the color opacity for the Slider component. ( Idb383 )
Version 1.0.0-alpha26
2 октября 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha26
is released. Version 1.0.0-alpha26 contains these commits .
Изменения API
- We have updated the API and appearance of
HorizontalPageIndicator
and addedVerticalPageIndicator
for use withVerticalPager
( Ic9309 ) -
AlertDialog
now supports the ability to omit the default bottom button from the button stack variation, for custom layouts in which EdgeButton is not required. ( I34fa9 ) - We have added a
SwipeToReveal
component for Wear Material 3 ( Ic38b2 ) - We have added support for bi-directional swiping in
SwipeToReveal
, for rare cases where the current screen does not support swipe to dismiss. The default is still to swipe-to-reveal only on right-to-left swipes and it is strongly advised to respect the default behavior to avoid conflict with swipe to dismiss. ( Ifac04 ) - We have renamed
EdgeButton
'sbuttonHeight
parameter topreferredHeight
. ( I4fab3 ) - The Kotlin version has been updated to 1.9 ( I1a14c )
- We have renamed
OpenOnPhoneDialogDefaults.Icon
toOpenOnPhoneDialogDefaults.OpenOnPhoneIcon
to avoid clashing withIcon
( I0f391 ) - We have added support for
ScrollIndicator
inLazyColumn
. ( Ia546a ) - We have updated default values for
TextToggleButton
andIconToggleButton
. ( I7aaa9 ) - We have simplified the
Picker
andPickerGroup
API. ( Id0653 ) - We have added
CardDefaults.Shape
andCardDefaults.Height
, which (being tokens) were otherwise private to developers using the library. ( I1594a , b/347649765 ) - We have renamed the progress parameter for the binary segmented circular progress indicator to
segmentValue
. ( Ib72d9 ) - We have updated the colors and layout for Slider. ( Ic3eec )
Исправления ошибок
- We have updated the
openOnPhone
icon animation ( I66f85 ) - We are now using Google Symbols icons in
Slider
,TimePicker
andDatePicker
. ( I46c7c ) - We have updated the paddings in
Confirmation
andOpenOnPhoneDialog
. ( Iaa82e )
Version 1.0.0-alpha25
18 сентября 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha25
is released. Version 1.0.0-alpha25 contains these commits .
Изменения API
- We have added an Indeterminate circular progress indicator. ( I427a7 )
- We have added support for progress overflow (>100% progress) for both the
CircularProgressIndicator
and theSegmentedCircularProgressIndicator
. When the progress exceeds 1.0, this will be indicated by the newoverflowTrack
color. ( Iaaa3d ) - The round
IconToggleButton
andTextToggleButton
now support a new shape animation variation, in which different shapes represent checked, unchecked and pressed states. The earlier animated shape variation for the just pressed state continues to be supported. ( I29f03 ) - We have removed support for using
EdgeButton
withColumn
, due to the need to specify theEdgeButton
height explicitly inScreenScaffold
. ( Ie353d ) - We have added support for the Wear Compose
LazyColumn
with ourScreenScaffold
(and added an implementation ofScrollInfoProvider
forLazyColumnState
). ( Ib8d29 ) - We have combined
LocalTextMaxLines
,LocalTextAlign
,LocalTextOverflow
into a singleLocalTextConfiguration
composition local to provide a more scalable solution going forwards. ( I5edbc ) - We have added arc-large as an additional typescale, reserved for short header text strings at the very top or bottom of the screen, like in Confirmation overlays. ( I60e3e )
- We have added defaults to Button for recommended large and extra large icon sizes and content padding. ( I84675 )
Исправления ошибок
- We have updated the colors for
IconButton
andTextButton
. ( I48324 ) - We have changed the base Button overloads to be vertically center-aligned for consistency with other overloads. To restore the previous behavior, use
Modifier.align
from theRowScope
. ( I66e57 )
Version 1.0.0-alpha24
4 сентября 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha24
is released. Version 1.0.0-alpha24 contains these commits .
Изменения API
- We have added a Motion scheme into the Material3 theme. This will be used by components across the library to apply animation specifications such as springs for expressive motion. ( I54ff3 )
- We have added
AppScaffold
andScreenScaffold
components to the Material3 library, which include functionality to coordinate layering and transitions ofTimeText
andScrollIndicator
.AppScaffold
provides a top level of scaffold components that sit on top of all screens. As such, addingTimeText
to theAppScaffold
allows it to remain in place while swiping between screens. Screens can themselves override or hide the time text.ScreenScaffold
provides a slot for theScrollIndicator
and automatically animates the scroll indicator when scrolling, including timeout to hide the scroll indicator after inactivity. ( I047d6 ) - We have added
ScrollIndicator
featuring the new Material3 design. It has a fixed thumb size based on initial list contents, in order to avoid size variations when lazy content is loaded into the list. ( Ic228d ) - We have changed the
ScrollAway
API such thatScreenStage
is a value class instead of an enum class, to allow for additional stages to be added as needed going forwards. ( I48c93 ) - We have added
EdgeButton
, a distinctive Wear-specific button with a shape that follows the curvature of the bottom of the screen ( I16369 ) - We have added a new slot to the
ScreenScaffold
for a bottom button (such asEdgeButton
), that will be shown and resized depending on the scrolling content ( I032eb ) - We have added
Modifier.scrollTransform
andModifier.targetMorphingHeight
to add Material3 motion effects to items inLazyColumn
. ( Ie229a ) - We have added
SegmentedCircularProgressIndicator
as a variation onCircularProgressIndicator
. The segmented variation either shows a single progress value across all segments or shows each segment as being on/off. ( I6e059 ) - We have added
LinearProgressIndicator
as an alternative to the existingCircularProgressIndicator
. ( I89182 ) - We have added
AlertDialog
, providing layouts for presenting important prompts to the user. Variations are included for either a pair of confirm/dismiss buttons or a single bottom button (typically an EdgeButton) below a stack of options. Both variations have slots for icon, title and additional text to provide further details. ( Ieb873 ) - We have added
OpenOnPhoneDialog
, which should be used to indicate an action that will continue on the user's phone.OpenOnPhoneDialog
is dismissed after a specified timeout. ( I978fd ) - We have added
Confirmation
, a dialog component that has slots for an icon and either curved or linear text. Specific variations are provided for success/failure messages. Confirmations are automatically dismissed after a timeout. ( Ib43e8 ) - We have added a background to
TimeText
to mitigate issues where the underlying content and theTimeText
overlapped, and obscured the time. ( Ia11fd ) - We have added
LevelIndicator
, which shows the value of a setting such as volume, and can be used with the existingStepper
component to construct a volume screen.LevelIndicator
is similar toScrollIndicator
, but is displayed on the opposite side of the screen and has a wider stroke width and different indicator color by default. ( I8a4ac ) - We have added
TimePicker
, with layouts for 24 hour time (with or without seconds), or 12 hour time with am/pm selection. ( Ia5124 ) - We have added
DatePicker
, with configuration for column ordering (ie day-month-year, month-day-year or year-month-day) and optional min/max dates. ( Ibf13b ) - We have added a weight parameter to the
TimeText
'stext
function. In cases where TimeText is made up of more than one text element, this allows control over how the space is distributed. ( I36700 ) - We have added
RadioButton
andSplitRadioButton
- these components simplify the previous API by combining both the (Split)SelectableButton
and the child radio control ( If7ae8 ) - We have added
CheckboxButton
andSplitCheckboxButton
- these components simplify the previous API by combining both the (Split)ToggleButton
and the child Checkbox control ( Ia8f70 ) - We have added
SwitchButton
andSplitSwitchButton
- these components simplify the previous API by combining both the(Split)ToggleButton
and the child Switch control ( I0d349 ) - We have updated
AnimatedText
documentation to explain overshooting behavior. ( Iff30a ) - We have added
ButtonGroup
to combine 2 or 3 buttons such that button presses produce a coordinated animation. ( Ie27db ) - We have added optional shape animation for
IconButton
andTextButton
when pressed. ( Iffca5 ) - We have added an additional color variation,
FilledVariant
, toButton
,IconButton
,TextButton
,CompactButton
andEdgeButton
( I65fc3 ) - We have added the
forcedSize
parameter toImageWithScrimPainter
, such that Button image backgrounds now maintain their component size by default. Setting theforcedSize = null
adopts thePainter.instrinsicSize
instead. ( Ic57af ) - We have added long-click to Buttons ( Ib613d )
- Long click support has also been added to
IconButton
andTextButton
. ( I38891 ) - Long click support has been added to Cards. ( I305d5 )
- We have added
LocalTextMaxLines
,LocalTextAlign
,LocalTextOverflow
asCompositionLocals
and used them as parameter defaults onText
. The composition locals can now be used by components such asCheckboxButton
,SwitchButton
,RadioButton
to implement UX guidance, but the parameters can be overridden by developers if necessary. ( Iab841 ) - We have added
Placeholder
to help in masking the content of components like buttons & cards until the data is loaded. ( I1a532 ) - We have added
IconToggleButtonColors
andTextToggleButtonColors
to replace the now removedToggleButtonColors
. ( Ie0bf1 )
Исправления ошибок
- We have updated
Button
,FilledTonalButton
,OutlinedButton
,ChildButton
,CompactButton
to use the newCompositionLocals
LocalTextMaxLines
,LocalTextAlign
,LocalTextOverflow
to implement UX guidance - these parameters can be overridden by developers on Text directly if necessary ( Ie51f7 ) - We have changed the default stroke width of the
LevelIndicator
to6dp
to differentiate it from theScrollIndicator
which has a stroke width of4dp
. ( If6f63 ) - We have fixed an issue in
TimeText
so that larger sweep angles are supported. ( Ie489f ) - Fixed an issue during
EdgeButton
recomposition. ( I4cdca ) - Corrected layouts of split toggle buttons when customized content padding is provided. ( Ia33d3 )
- Rounded up small progress values to at least the line width of the progress indicator. ( I3bd84 )
Version 1.0.0-alpha23
14 мая 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha23
is released. Version 1.0.0-alpha23 contains these commits .
Изменения API
- We have updated
ToggleButton
andRadioButton
APIs such that disabled colors can be configured. ( If13a7 ) - We have added a new
CircularProgressIndicator
for Material3. ( Ib3bd7 )
Исправления ошибок
- We have fixed a bug where selectable buttons announced double tap to toggle when already selected. ( I7ed88 )
Version 1.0.0-alpha22
1 мая 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha22
is released. Version 1.0.0-alpha22 contains these commits .
Изменения API
- We have updated the Material3
ColorScheme
. ( I7b2b8 ) - We have updated the Material3 Switch - as well as some color changes, the tick now matches that used for the Checkbox. ( Icac7b )
Исправления ошибок
- Update all integration demos to use new
rotaryScrollable
modifier. ( I25090 )
Version 1.0.0-alpha21
17 апреля 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha21
is released. Version 1.0.0-alpha21 contains these commits .
- This release was triggered due to a technical issue in the previous release that resulted in missing source jars. There are no new commits in this release.
Версия 1.0.0-альфа20
3 апреля 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha20
is released. Version 1.0.0-alpha20 contains these commits .
Исправления ошибок
- We have adjusted the Ripple pressed and focused state alphas for contrast. ( I59f0a )
- We have added spacing between primary and secondary labels in
Button
,ToggleButton
andRadioButton
, following the latest changes to typography styles and line heights. ( I2c0ba )
Версия 1.0.0-альфа19
6 марта 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha19
is released. Version 1.0.0-alpha19 contains these commits .
Изменения API
- We have added
TimeText
to the Wear Compose Material3 library. This component shows the current time (and additional status) at the top of the screen. The new, concise Material3 API avoids duplication between linear and curved content. ( I4d7c3 ) - We have updated parameter names from
onSelected
toonSelect
forRadioButton
. ( I1a971 ) - Tokenize
RadioButton
andSplitRadioButton
and also refactor the existing methods to reduce the amount ofCompositionLocal
lookup by adding cached instances of colors, and making methods ofRadioButtonColors
andSplitRadioButtonColors
internal. ( I02b33 )
Версия 1.0.0-альфа18
21 февраля 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha18
is released. Version 1.0.0-alpha18 contains these commits.
Изменения API
- We have refactored the defaults pattern for
CardColors
,ToggleButtonColors
andSplitToggleButtonColors
by creating cached instances internally and reducing the usage ofCompositionLocal
. ( If3fec )
Версия 1.0.0-альфа17
7 февраля 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha17
is released. Version 1.0.0-alpha17 contains these commits.
Изменения API
- We have updated the Button API to use
buttonColors
by default and removed the duplicatefilledButtonColors
. ( I4fe3b ) - We have refactored default patterns for
ButtonColors
,IconButtonColors
andTextButtonColors
by creating a cached instance internally and reducing the usage ofCompositionLocal
. ( I5f51c ) - We have removed the overhead of
rememberUpdatedState
in Component specific color classes and marked accessor methods inside color classes as internal. ( If6571 )
Исправления ошибок
- We have updated
Modifier.minimumInteractiveComponentSize
to useModifier.node
. ( Iba6b7 )
Version 1.0.0-alpha16
24 января 2024 г.
androidx.wear.compose:compose-material3:1.0.0-alpha16
is released. Версия 1.0.0-alpha16 содержит эти коммиты.
Новые функции
- We have added
CompactButton
, which can use the same filled, filled tonal and outlined colors as Button.( I05df0 )
Изменения API
- We have added
RadioButton
/SplitRadioButton
as containers for selection controls, such as the Radio control. This differs from the existingToggleButton
in thatRadioButton
is selectable (and operates within a selection group) whereasToggleButton
is toggleable (and is independent). ( I61275 ) - We are removing
LocalContentAlpha
from the Wear Compose Material3 library for consistency with the Compose Material3 library. ( I49a0a ) - Wear material and wear material3 components exposing a
MutableInteractionSource
in their API have been updated to now expose a nullableMutableInteractionSource
that defaults to null. There are no semantic changes here: passing null means that you do not wish to hoist theMutableInteractionSource
, and it will be created inside the component if needed. Changing to null allows for some components to never allocate aMutableInteractionSource
, and allows for other components to only lazily create an instance when they need to, which improves performance across these components. If you are not using theMutableInteractionSource
you pass to these components, it is recommended that you pass null instead. It is also recommended that you make similar changes in your own components. ( Ib90fc , b/298048146 ) - Adds new ripple API in
wear:compose-material
andwear:compose-material3
libraries which replaces the deprecatedrememberRipple
. Also adds a temporaryCompositionLocal
,LocalUseFallbackRippleImplementation
, to revert Material components to using the deprecatedrememberRipple/RippleTheme
APIs. This will be removed in the next stable release, and is only intended to be a temporary migration aid for cases where you are providing a customRippleTheme
. See developer.android.com for migration information and more background information behind this change. ( af92b21 ) - We have made minor improvements to the
HorizontalPageIndicator
api and its documentation. ( I60efc ) - We have updated
ColorScheme
to be immutable, making individual color updates less efficient, but making more common usage of colors more efficient. The reasoning behind this change is that the majority of apps wouldn't have updating individual colors as a main use case. This is still possible but it will recompose more than before, in turn we significantly decrease the amount of state subscriptions through all of material code and will impact initialization and runtime cost of more standard use cases. ( Ibc2d6 ) - Updated
ToggleButton
andSplitToggleButton
APIs to allow disabled colors to be customized. In addition, Material Design tokens are now used for color and typography values. ( If087c ) - Updated Button image background colors to use Material Design tokens. ( Iba215 )
- We have changed the
Checkbox
,Switch
andRadioButton
components to be display-only, by removing the click handling. These components are expected to be used in(Split)ToggleButton
which handles the click, so the components are now more clearly indicated as display-only (and are not intended for standalone use on Wear). ( I2322e )
Исправления ошибок
- We have added tokens for motion values of durations and easings in Wear Compose Material 3. ( I437cd )
- We have fixed a bug in the
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
andRadioButton
so that accessibility announcements are not repeated (previously, semantic roles were duplicated). ( Ica281 ) - We have removed the materialcore layer for
CompactButton
to improve performance. ( 7902858 )
Version 1.0.0-alpha15
15 ноября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha15
is released. Версия 1.0.0-alpha15 содержит эти коммиты.
Изменения API
- We have renamed the Foundation level
SwipeToDismissBox
toBasicSwipeToDismissBox
. This makes the distinction clearer between the Foundation level component and the Material3 levelSwipeToDismissBox
. The latter pulls colors from theMaterialTheme
to be used in scrims and delegates the remaining implementation to theBasicSwipeToDismissBox
. ( Ibecfc )
Исправления ошибок
- We have removed the material-core layer for Material3 Button to improve performance. ( I55555 )
Версия 1.0.0-альфа14
October 18, 2023
androidx.wear.compose:compose-material3:1.0.0-alpha14
is released. Версия 1.0.0-alpha14 содержит эти коммиты.
Изменения API
- We have removed the
indicatorStyle
parameter from the Material3HorizontalPageIndicator
- instead, it will follow the device screen shape (linear or round). ( I83728 ) - We have separated the colors for
SplitToggleButton
from those forToggleButton
, by adding a newSplitToggleButtonColors
class. ( I78bee )
Version 1.0.0-alpha13
4 октября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha13
is released. Версия 1.0.0-alpha13 содержит эти коммиты.
Изменения API
- We have added an optional Subtitle field to
TitleCard
. ( Ifc45a ) - We have added Material Design color tokens for
TextButton
. ( I769dc )
Версия 1.0.0-альфа12
20 сентября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha12
is released. Версия 1.0.0-alpha12 содержит эти коммиты.
Изменения API
- We have updated
IconButton
to use Material Design tokens. ( I3f137 ) - We have updated
IconToggleButton
to use Material Design tokens. ( I7d263 ) - We have made public the constructors of
CheckboxColors
,RadioButtonColors
,SwitchColors
. ( I82b73 )
Версия 1.0.0-альфа11
6 сентября 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha11
is released. Версия 1.0.0-alpha11 содержит эти коммиты.
Исправления ошибок
- We update updated the typography for Material3 Cards to
TitleMedium
. ( I597bd ) - We have updated the typography and alignment for our Material3
ListHeader
andListSubheader
. ( Ib5ceb )
Версия 1.0.0-альфа10
23 августа 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha10
is released. Версия 1.0.0-alpha10 содержит эти коммиты.
Новые функции
- Add
HorizontalPageIndicator
in Wear Material3 library. ( Ifee99 )
Изменения API
- Update Buttons code to use Material3 design tokens. ( I92fe4 )
- Declaring Wear Material 3 Stepper and Slider APIs as experimental as the details of the user interface are still being finalized. ( I84d54 )
- We have removed the
ExtraSmall
sizes from the roundTextButton
andTextToggleButton
as that size only applies to theIconButton
. ( Ibc7d5 )
Исправления ошибок
- We have updated the guidance on typography for TextToggleButton to use LabelLarge for LargeButtonSize ( Ib10fa )
- We have updated the guidance on typography for TextButton to use LabelLarge for LargeButtonSize ( I8f3a7 )
- We have set the Card's minimum touch target to be 48dp for accessibility. ( Ieb9b1 )
- Add AppCard with image demo, removing AppCard with Background demo ( Id735f )
- Fix a bug in round buttons where modifiers were not chained correctly. ( I5e162 )
Version 1.0.0-alpha09
9 августа 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha09
is released. Версия 1.0.0-alpha09 содержит эти коммиты.
Новые функции
- We have added
ToggleButton
for material3 ( I6bed6 )
Изменения API
- We have turned on the
FloatRange
annotation as API constraints , which were previously stated in comments. ( Icb401 ) - We have updated the typography for Wear Material3 to adhere to the latest Material3 guidelines. ( I1bad6 )
Исправления ошибок
- We have updated the colors for
Button
,IconButton
andTextButton
in line with Material3 design. ( Ib2495 ) - We have fixed checkbox tick visibility in disabled states. ( Ib25bf )
Version 1.0.0-alpha08
26 июля 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha08
is released. Версия 1.0.0-alpha08 содержит эти коммиты.
Новые функции
- We have added the following selection controls for Material3 -
Switch
,Checkbox
,RadioButton
. ( Ib918c ) - We have added
IconToggleButton
andTextToggleButton
to Material3, a circular toggle button with a single slot for icon and text respectively. For different sizes ofToggleButton
, we recommend usingModifier.touchTargetAwareSize
with the sizes provided in respective toggle buttons. ( I9f015 ) - We have added
ListHeader
andListSubheader
to our Material3 components. ( Ibaefe ) - We have added Material3
SwipeToDismissBox
, which calls the new FoundationSwipeToDismissBox
and supplies default color values from its theme. ( I275fb ) - We have added the Material3
InlineSlider
to Wear Compose. It allows users to make a selection from a range of values. The range of selections is shown as a bar between the minimum and maximum values of the range, from which users may select a single value.InlineSlider
is ideal for adjusting settings such as volume or brightness. ( I7085f )
Изменения API
- We have updated the Shapes in Wear Material 3 theme to use
RoundedCornerShape
based instead of Shape. ( Idb133 ) - We have made the height constants for Button public ( Idbfde )
- Updated API files to annotate compatibility suppression ( I8e87a , b/287516207 )
- We have updated
InlineSliderColors
in Wear Compose Material 3 to have public constructor and public properties. ( I6b632 ) - We have updated all color classes in Wear Compose Material 3 to have public constructors and public properties. ( I17702 )
- We have made Button horizontal and vertical padding constants public. ( Ieeaf7 )
Исправления ошибок
- Button will now adjust its height to accommodate content that has grown due to large fonts for accessibility, when required ( Iaf302 )
- We have updated a number of Button demos to address accessibility issues. ( I61ce9 )
-
Stepper
andInlineSlider
now support repeated clicks on long press so that you can quickly increase/decrease value ofStepper
andInlineSlider
by holding the + or - buttons ( I27359 )
Version 1.0.0-alpha07
21 июня 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha07
is released. Версия 1.0.0-alpha07 содержит эти коммиты.
Новые функции
- We have added the
Stepper
component to our Compose for Wear OS Material 3 library. This is similar to the previous Material version, but omits range semantics by default, following developer feedback. We provideModifier.rangeSemantics
the cases where range semantics are required. ( Ic39fd ) - We have added
curvedText
to our Compose for Wear OS Material 3 library. ( Ia8ae3 )
Исправления ошибок
- We have update
wear.compose.foundation
to be an API dependency ofwear.compose.material3
( I72004 , b/285404743 )
Версия 1.0.0-альфа06
7 июня 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha06
is released. Версия 1.0.0-alpha06 содержит эти коммиты.
Исправления ошибок
- We have updated
TextButton
to use thetoDisabledColor
extension function for correct disabled alpha values. ( I814c8 )
Версия 1.0.0-альфа05
24 мая 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha05
is released. Версия 1.0.0-alpha05 содержит эти коммиты.
Новые функции
- We have added
TextButton
to Material3, a circular button with a single slot for text. For different sizes ofTextButton
, we recommend usingModifier.touchTargetAwareSize
andExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
andLargeButtonSizeIcon
provided inTextButtonDefaults
. The defaultTextButton
has no border and a transparent background for low emphasis actions. For actions that require high emphasis, usefilledTextButtonColors
; for a medium-emphasis, outlinedTextButton
, set the border toButtonDefaults.outlinedButtonBorder
; for a middle ground between outlined and filled, usefilledTonalTextButtonColors
. ( I667e4 ) - We have added
Card
,OutlinedCard
,AppCard
andTitleCard
into the Wear Compose Material3 library.AppCard
andTitleCard
can also be given the outlined appearance usingCardDefaults.outlinedCardColors
andCardDefaults.outlinedCardBorder
( I80e72 )
Изменения API
- We have moved the Button label parameter to the end to support trailing lambda syntax and removed the role parameter (as this can be overridden using
Modifier.semantics
).ButtonColors
constructors are now public. ( Ie1b6d )
Версия 1.0.0-альфа04
10 мая 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha04
is released. Version 1.0.0-alpha04 contains these commits.
Новые функции
- We have added
IconButton
to Material3, a circular button with a single slot for icon/image. There are four variations:IconButton
,FilledIconButton
,FilledTonalIconButton
andOutlinedIconButton
. For different sizes ofIconButton
, we recommend usingModifier.touchTargetAwareSize
andExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
andLargeButtonSizeIcon
provided inIconButtonDefaults
. We also provideIconButtonDefaults.iconSizeFor
to determine the recommended icon size for a given button size. ( I721d4 )
Версия 1.0.0-альфа03
19 апреля 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha03
is released. Version 1.0.0-alpha03 contains these commits.
Изменения API
- We have added the Material 3 Button component - this is our stadium-shaped button and was formerly named Chip in the Wear Compose Material library (it has been renamed to Button for consistency with the Compose Material 3 library). The default Button has a filled background and there are button variations for
FilledTonal
(muted background), Outlined (transparent with a thin border) and Child (transparent background and no border, used for supplementary actions with the lowest amount of prominence). Round buttons for simple icon and text content will follow in a future release.( Ia6942 )
Версия 1.0.0-альфа02
5 апреля 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha02
is released. Версия 1.0.0-alpha02 содержит эти коммиты.
Исправления ошибок
- We have added a
DefaultTextStyle
to Wear Compose Material 3 which defaults thePlatformTextStyle.includeFontPadding
to true (the current setting). This will allow us to synchronize turning off font padding by default with the Compose libraries in the future (see Fix font padding in Compose for background ). ( I7e461 )
Версия 1.0.0-альфа01
22 марта 2023 г.
androidx.wear.compose:compose-material3:1.0.0-alpha01
is released. Версия 1.0.0-alpha01 содержит эти коммиты.
Новые функции
Material 3 is the next evolution of Material Design and includes updated theming and redesigned components. Material 3 on Wear Compose is designed to be cohesive with the Material 3 Compose library on Android. This first alpha release contains early, functional implementations of the following:
We will continue to develop Wear Material (
androidx.wear.compose:compose-material
) and Wear Material 3 (androidx.wear.compose:compose-material3
) in parallel. Future material3 releases will extend the widget set to include other familiar components from Compose for Wear OS, such as buttons, pickers, and sliders.The Wear Material and Wear Material 3 libraries are mutually exclusive and should not be mixed in the same app, primarily because they reference different themes which would lead to unexpected inconsistencies.