Износостойкий композиционный материал 3

Создавайте приложения Jetpack Compose для устройств Wear OS, предоставляя функциональность для поддержки различных размеров устройств и жестов навигации с использованием системы проектирования Material 3 Expressive.
Последнее обновление Стабильный релиз Кандидат на релиз Бета-релиз Альфа-релиз
4 июня 2025 г. - - 1.5.0-бета03 -

Объявление зависимостей

Чтобы добавить зависимость от Wear, необходимо добавить репозиторий Google Maven в свой проект. Прочтите репозиторий Google Maven для получения дополнительной информации.

Добавьте зависимости для необходимых артефактов в файл build.gradle для вашего приложения или модуля:

классный

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

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

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

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

Котлин

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

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

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

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

Дополнительную информацию о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новый выпуск

Более подробную информацию смотрите в документации Issue Tracker .

Wear Compose Material3 Версия 1.5

Версия 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 composables. ( Id2ae2 )

Исправление ошибок

  • Изменен порядок применения эффекта параметров SurfaceTransformation . Раньше преобразования, применяемые к компонентам Wear Material3, выполнялись следующим образом: фоновый художник, преобразование контейнера, преобразование содержимого. Теперь первые 2 инвертируются, и мы применяем любой переданный модификатор между ними, поэтому на него влияют преобразования контейнера. Это исправляет такие случаи, как использование эффекта мерцания заполнителя с элементами в 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 является доступной кнопкой выбора (также предоставляются вариации «Split» кнопок-переключателей и выбора).
  • ButtonGroup — реализует выразительную группу кнопок в ряд, которые меняют форму при прикосновении.
  • Варианты AlertDialog поддерживают кнопки «ОК»/«Отмена» или EdgeButton .
  • ConfirmationDialog позволяет отображать сообщение с заданным временем ожидания, поддерживая специальные анимации для успешного завершения, неудачи и вариантов открытия на телефоне.
  • Поддерживаются варианты выбора TimePicker и DatePicker , а также компоненты Picker и PickerGroup для создания собственных экранов выбора.
  • 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 в пользу API SwipeToReveal в Wear Compose Material и Wear Compose Material3. Замените импорт Wear Foundation SwipeToReveal на импорт Wear Compose Material/ Wear Compose Material3, чтобы продолжить использовать API. ( 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 ).
  • Измененная документация для 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 . Переименованы кнопки imageBackgroundGradientStartColor и 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 был уменьшен с 20sp до 18sp, а интервалы между буквами в ArcLarge и ArcSmall были обновлены. ConfirmationDialog/OpenOnPhoneDialog теперь используют ArcLarge по умолчанию вместо того, чтобы переопределять его на 18sp. ( 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 Foundation Pager для достижения предыдущего поведения M3 PagerScaffold . (См. обновленные примеры). ( Ia4724 )
  • Обновлен PagerState , удален Compose Foundation PagerState как базовый класс и добавлены свойства 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 . Поведение по умолчанию Foundation SwipeToReveal теперь запрещает смахивание, когда жест начинается от края. Поведение по умолчанию Material3 SwipeToReveal' теперь запрещает смахивание, когда жест начинается от края, когда 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 )
  • Мы заменили PickerGroupScope DSL на компонуемый. Таким образом, мы удалили метод pickerGroupItem из PickerGroupScope и вместо этого добавили @Composable PickerGroupItem , который следует использовать для добавления Picker в PickerGroup . Мы также обновили тип параметра PickerGroup 'content' на @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 вместо использования Compose PagerScope . ( 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.0 androidx.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 . Наконец, переименовали параметр Dialog show в visible для согласованности с другими недавними обновлениями диалогов. ( I10074 )
  • IconButton переименован из disabledImageOpacity в DisabledImageOpacity . ( I5f94a )

Исправление ошибок

  • Мы исправили ошибку в анимации EdgeButton , чтобы в каждом кадре использовался правильный размер ( Id3b58 ).
  • Исправлена ​​проблема с animateContentSize , не работающей с Button . ( Ib18a0 )
  • Мы изменили масштаб шрифта Title Large на размер 18dp ( Ic9d52 ).
  • Мы обновили интервал и размер значка AlertDialog ( Iac28c ).
  • Мы исправили несоответствия в контрольных точках больших экранов (экраны с разрешением 225dp и выше считаются большими экранами) ( 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 . В новом API size 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 доступными для ситуаций, когда разработчикам необходимо настроить анимацию диалога intro/outro. ( Iaeb33 )
  • Мы обновили CircularProgressIndicatorContent до CircularProgressIndicatorStatic (неанимированная версия CircularProgressIndicator ), чтобы теперь его можно было использовать для создания CircularProgressIndicator с пользовательской анимацией. ( I1346f )
  • Мы исправили порядок параметров в ArcProgressIndicator , поместив параметр-модификатор на первое место ( I4656a ).
  • Улучшен API SwipeToReveal для получения параметра текстового слота для меток действий (кроме второстепенных действий) и для удаления параметров меток из действия отмены ( I5b3db ).

Исправление ошибок

  • Мы исправили ошибку, из-за которой тактильные эффекты LongPress срабатывали более одного раза в Button , Card , IconButton , TextButton ( Ia8b0f ).
  • Изменения в UX AlertDialog - на больших экранах кнопки подтверждения и отклонения теперь меньше. Также увеличено расстояние под кнопками подтверждения и отклонения. ( I4f066 )
  • Мы изменили характеристики анимации метки кнопки действия компонента SwipeToReveal . ( Ib87fb )
  • Изменено SwipeToReveal , чтобы одновременно расширить контейнер, когда текст отображается. ( I44cf8 )
  • Улучшение SwipeToReveal для выполнения тактичной обратной связи, когда пролистые пропускает порог, где совершается основное действие. ( I23efe )
  • Мы обновили SwipeToReveal , чтобы отображать ellipsis на переполнении текста по умолчанию, для первичных и отмененных действий. ( I71f5a )
  • Мы исправили проблему, вызывающую джиттер на анимации ButtonGroup . ( I63f8f )
  • Мы добавили текстовую семантику в AnimatedText ( i6063c )
  • Диалог теперь сбрасывает фоновое масштабирование, когда диалог удаляется из композиции (без этого исправления, экран запуска мог быть оставлен в масштабированном состоянии) ( ID24AC )
  • Мы добавили анимацию Morph Shape в кнопки в компоненте Stepper ( id6ed3 )

Версия 1.0.0-Alpha30

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 . ( IF4541 )
  • Мы обновили API Stepper для обеспечения слотов increaseIcon и decreaseIcon . ( ID35DA )
  • Мы обновили dynamicColorScheme , удалив необязательный параметр defaultColorScheme и теперь возвращая нулевые ColorScheme . Это означает, что вызывающий абонент должен явно обрабатывать запасной случай, когда динамическая цветовая схема не предоставлена. ( I6d62e )
  • Мы обновили размеры значков в ButtonDefaults для использования с CompactButton . CompactButton , содержащий только значок, должен использовать ButtonDefaults.SmallIconSize = 24.dp , тогда как CompactButton , содержащая как значок и текст, должен использовать ButtonDefaults.ExtraSmallIconSize = 20.dp Рекомендуется, чтобы CompactButton завершила свое содержание (а не заполнение максимальной ширины) и образцы были обновлены, чтобы показать это. ( I0582c )
  • Мы добавили EdgeButtonDefaults с рекомендуемыми размерами значков для 4 различных EdgeButtonSizes . Кроме того, обновил макет EdgeButton , чтобы он имел немного большую нижнюю прокладку, чем верхняя прокладка, что улучшает внешний вид как для значка, так и для текстового содержимого. ( ID772A )
  • Мы добавили движение в LinearProgressIndicator и открытый LinearProgressIndicatorContent , который обеспечивает визуальный контент без анимации. ( IDEE99 )
  • Мы добавили новый CircularProgressIndicatorContent Composable, чтобы отобразить визуальное содержание CircularProgressIndicator без анимации. ( IE33D4 )
  • TransformingLazyColumn вновь предоставляет композицию LocalTransformingLazyColumnItemScope , которые теперь используются Card S, Button S и ListHeader S. для автоматического превращения в TransformingLazyColumn . Абоненты могут отключить автоматическое морфинг, используя новую обертку TransformExclusion . ( I1652f )
  • Мы обновили тип ButtonDefaults.shape to 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 )
  • Мы исправили ошибку, увиденную в анимации Progress OpenOnPhoneDialog , используя новый CircularProgressIndicatorContent . ( I3e443 )
  • Мы обновили HorizontalPagerScaffold и VerticalPagerScaffold , чтобы отключить анимацию при включении движения ( IAAF68 )
  • Мы внедрили отдельную анимацию для индикаторов круговых прогрессов, когда прогресс достигает более 100%. ( I47135 )
  • Мы исправили ошибку, где EdgeButton можно было нарисовать с неправильной формой в компонентах пейджера ( i91db9 )

Версия 1.0.0-Alpha29

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 вибратора указывает, что гаптики поддерживаются. Следующее было добавлено в HapticFeedbackType - Confirm , ContextClick , GestureEnd , жесты, GestureThresholdActivate , Reject , SegmentFrequentTick , SegmentTick , ToggleOn , ToggleOff , VirtualKey . Носите составление длиннокачественных компонентов, таких как Button , IconButton , TextButton и Card теперь выполняют Haptic LONG_PRESS когда был поставлен обработчик длинного щелчка. ( I5083d )

Исправление ошибок

  • Мы обновили движение для подтверждений. ( I04BFF )
  • Мы обновили минимальную зависимость API до 1,7.4 для сочинения библиотек. ( I88b46 )
  • Новое движение было добавлено для диалога OpenOnPhone . ( I1e10a )
  • Мы исправили ошибку в LevelIndicator так что теперь она правильно отображается с уровнем, равна нулю. ( IE95A4 )
  • Мы обновили анимацию HorizontalPageIndicator и VerticalPageIndicator . ( I5c8f3 )
  • Мы добавили анимацию с усадкой в ​​неопределенном ArcProgressIndicator . ( I9fd51 )

Версия 1.0.0-Alpha28

30 октября 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha28 выпускается. Версия 1.0.0-Alpha28 содержит эти коммиты .

Изменения API

  • Мы добавили изменение дуги на индикатор неопределенного кругового прогресса ( I2EFC1 )
  • Мы обнародовали композиты AlertDialogContent и Dialog , которые составляют API AlertDialog , так что можно добавить настройку, если это необходимо (например, настройка анимации AlertDialog , сохраняя при этом рекомендуемую макет контента). Кроме того, мы добавили параметры Modifier и Color в EdgeButton , ConfirmButton и DismissButton членов AlertDialogDefaults . ( I4eb71 )
  • Мы обновили API Placeholder следующим образом: переименованные в PlaceholderState.startPlaceholderAnimation to PlaceholderState.animatePlaceholder , PlaceholderState.isShowContent to PlaceholderState.isHidden и PlaceholderDefaults.shape . переименован PlaceholderDefaults.Shape параметр painter в painterWithPlaceholderOverlayBackgroundBrush в originalPainter ; Измененная видимость PlaceholderState.placeholderProgression от общественности к внутреннему и переименованной в нее в placeholderShimmerProgression ; Добавлены константы продолжительности анимации заполнителей к PlaceholderDefaults . ( IE5A59 )
  • Мы обновили API EdgeButton следующим образом: переименован в параметр на ScreenScaffold от bottomButton до edgeButton ; Сделан EdgeButtonSize класс значения. ( IEEF15 )
  • Мы изменили видимость copy() на публику в классах цветов износа 3 Colors ( i0287f )

Исправление ошибок

  • Добавлена ​​минимальная продолжительность анимации для IconToggleButton и TextToggleButton на клике ( IEB333 )
  • Добавлена ​​минимальная продолжительность анимации IconButton и TextButton Shape ( IEBCEE )
  • Исправлена ​​повторное состояние состояния DatePicker . ( I3587c )
  • Добавлено движение для диалогов оповещения и подтверждения. ( I173B1 )

Версия 1.0.0-Alpha27

16 октября 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha27 выпускается. Версия 1.0.0-Alpha27 содержит эти коммиты .

Изменения API

  • Мы обновили ScreenScaffold и ScrollIndicator после переименования износа Compose Foundation LazyColumn в TransformingLazyColumn . ( I0608b )
  • Параметр EdgeButton preferredHeight был переименован в buttonSize , и его значение может быть выбрано только из 4 констант в недавно введенном классе значения EdgeButtonSize . ( ICDD70 )
  • Мы изменили именование ListSubheader на ListSubHeader и добавили общедоступные значения по умолчанию для ListHeader и ListSubHeader . ( I96730 )
  • Мы добавили новые компоненты HorizontalPagerScaffold и VerticalPagerScaffold для износа, которые обеспечивают новые анимации и координацию между текстом времени и компонентами индикатора страницы. ( Iff7d0 )
  • Мы добавили ротационную поддержку в HorizontalPagerScaffold и VerticalPagerScaffold , позволяя пользователям ориентироваться в пейджерах с помощью вращающихся устройств ввода. ( I970d )
  • Мы внесли изменения в API MotionScheme , чтобы упростить использование и улучшить последовательность. Удаленные вставленные функции запоминают и перенесли встроенные схемы движения в специальный объект Companion Motionscheme. Переименован в standardMotionScheme и expressiveMotionScheme до стандартного и выразительного. ( I5fd45 )
  • Мы добавили поддержку динамической цветовой схемы на основе цветов системы. ( I073E9 )
  • Мы обновили Stepper до последних спецификаций UX. ( I622bb )

Исправление ошибок

  • Мы обновили типографику и падения для компонентов карт. ( I3ae48 )
  • Мы изменили прокладку в AlertDialog между кнопками подтверждения/увольнения и остальной частью содержимого с 8DP на 12DP в соответствии с UX -спецификациями ( IE55F0 )
  • Мы обновили непрозрачность цвета для компонента ползунка. ( IDB383 )

Версия 1.0.0-Alpha26

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 для износа 3 ( IC38B2 )
  • Мы добавили поддержку для двухнаправленного смахивания в SwipeToReveal , для редких случаев, когда текущий экран не поддерживает смахивание для увольнения. По умолчанию по-прежнему можно провести откровение только при ударах правого на лето, и настоятельно рекомендуется уважать поведение по умолчанию, чтобы избежать конфликта с увольнением. ( Ifac04 )
  • Мы переименовали параметр buttonHeight от EdgeButton в preferredHeight . ( I4fab3 )
  • Версия Kotlin была обновлена ​​до 1.9 ( I1A14C )
  • Мы переименовали OpenOnPhoneDialogDefaults.Icon to OpenOnPhoneDialogDefaults.OpenOnPhoneIcon , чтобы избежать столкновения с Icon ( I0F391 )
  • Мы добавили поддержку ScrollIndicator в LazyColumn . ( IA546A )
  • Мы обновили значения по умолчанию для TextToggleButton и IconToggleButton . ( I7aaa9 )
  • Мы упростили API Picker и PickerGroup . ( ID0653 )
  • Мы добавили CardDefaults.Shape и CardDefaults.Height , которые (токены) были частными для разработчиков, использующих библиотеку. ( I1594A , B/347649765 )
  • Мы переименовали параметр прогресса для индикатора бинарного сегментированного кругового прогресса в segmentValue . ( IB72D9 )
  • Мы обновили цвета и макет для слайдера. ( IC3EEC )

Исправление ошибок

  • Мы обновили анимацию значков openOnPhone ( i66F85 )
  • Сейчас мы используем значки символов Google в Slider , TimePicker и DatePicker . ( I46c7c )
  • Мы обновили положения в Confirmation и OpenOnPhoneDialog . ( IAA82E )

Версия 1.0.0-Alpha25

18 сентября 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha25 выпускается. Версия 1.0.0-Alpha25 содержит эти коммиты .

Изменения API

  • Мы добавили индикатор неопределенного кругового прогресса. ( I427a7 )
  • Мы добавили поддержку для переполнения прогресса (> 100% прогресс) как для CircularProgressIndicator , так и для SegmentedCircularProgressIndicator процесса. Когда прогресс превышает 1,0, это будет указано новым цветом overflowTrack . ( IAAA3D )
  • Круглая IconToggleButton и TextToggleButton теперь поддерживают новую вариацию анимации формы, в которой разные формы представляют проверенные, неконтролируемые и прессованные состояния. Ранее анимированное изменение формы для только что прессованного состояния продолжает поддерживаться. ( I29f03 )
  • Мы удалили поддержку для использования EdgeButton с Column из -за необходимости указать высоту EdgeButton явно в ScreenScaffold . ( IE353D )
  • Мы добавили поддержку для износа Compose LazyColumn с нашим ScreenScaffold (и добавили реализацию ScrollInfoProvider для LazyColumnState ). ( IB8D29 )
  • Мы объединили LocalTextMaxLines , LocalTextAlign , LocalTextOverflow в единый локальный композиция LocalTextConfiguration Local, чтобы обеспечить более масштабируемое решение в будущем. ( I5edbc )
  • Мы добавили в дуговой картинг дополнительный тип, зарезервированный для текстовых струн с коротким заголовком в самом верхней или нижней части экрана, например, в наложениях подтверждения. ( I60e3e )
  • Мы добавили по умолчанию кнопку для рекомендуемых больших и очень больших размеров значков и накладки контента. ( I84675 )

Исправление ошибок

  • Мы обновили цвета для IconButton и TextButton . ( I48324 )
  • Мы изменили перегрузки базовой кнопки, чтобы быть вертикально выровненными в центре для согласованности с другими перегрузками. Чтобы восстановить предыдущее поведение, используйте Modifier.align из RowScope . ( I66e57 )

Версия 1.0.0-Alpha24

4 сентября 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha24 выпускается. Версия 1.0.0-Alpha24 содержит эти коммиты .

Изменения API

  • Мы добавили схему движения в тему материала3. Это будет использоваться компонентами по всей библиотеке для применения спецификаций анимации, таких как пружины для выразительного движения. ( I54ff3 )
  • Мы добавили компоненты AppScaffold и ScreenScaffold в библиотеку Material3, которая включает в себя функциональность для координации слоя и переходов TimeText и ScrollIndicator . AppScaffold предоставляет верхний уровень компонентов каркасов, которые расположены на всех экранах. Таким образом, добавление TimeText в AppScaffold позволяет ему оставаться на месте во время прохождения между экранами. Экраны могут сами переопределить или скрыть текст времени. ScreenScaffold предоставляет слот для ScrollIndicator и автоматически анимирует индикатор прокрутки при прокрутке, включая тайм -аут, чтобы скрыть индикатор прокрутки после неактивности. ( I047D6 )
  • Мы добавили ScrollIndicator с новым дизайном Material3. Он имеет фиксированный размер большого пальца на основе начального содержимого списка, чтобы избежать вариаций размера, когда ленивый контент загружается в список. ( IC228D )
  • Мы изменили ScrollAway API так, чтобы ScreenStage представлял собой класс значения вместо класса Enum, чтобы позволить дополнительные этапы добавлять по мере необходимости в будущем. ( I48c93 )
  • Мы добавили EdgeButton , отличительную кнопку специфичной для износа с формой, которая следует за кривизны нижней части экрана ( I16369 )
  • Мы добавили новый слот в ScreenScaffold для нижней кнопки (например, EdgeButton ), который будет показан и изменен в зависимости от содержания прокрутки ( I032EB )
  • Мы добавили Modifier.scrollTransform и Modifier.targetMorphingHeight , чтобы добавить материал3 Движение эффектов в элементы в LazyColumn . ( IE229A )
  • Мы добавили SegmentedCircularProgressIndicator в качестве различия в CircularProgressIndicator . Сегментированное изменение либо показывает единое значение прогресса во всех сегментах, либо показывает каждый сегмент как включен/выключен. ( I6e059 )
  • Мы добавили LinearProgressIndicator в качестве альтернативы существующему CircularProgressIndicator . ( 189182 )
  • Мы добавили AlertDialog , предоставляя макеты для представления важных подсказок пользователю. Варианты включены либо для пары кнопок подтверждения/увольнения, либо для одной нижней кнопки (как правило, края) ниже стопки параметров. Оба вариации имеют слоты для значка, заголовка и дополнительного текста, чтобы предоставить более подробную информацию. ( IEB873 )
  • Мы добавили OpenOnPhoneDialog , который следует использовать для указания действия, которое будет продолжаться на телефоне пользователя. OpenOnPhoneDialog уволен после указанного тайм -аута. ( I978fd )
  • Мы добавили Confirmation , диалоговый компонент, который имеет слоты для значка и изогнутый или линейный текст. Конкретные вариации предоставляются для сообщений успеха/неудачи. Подтверждения автоматически отклоняются после тайм -аута. ( IB43E8 )
  • Мы добавили фон в TimeText , чтобы смягчить проблемы, в которых основной контент и TimeText перекрылись, и скрывали время. ( IA11FD )
  • Мы добавили LevelIndicator , который показывает значение настройки, такого как объем, и может использоваться с существующим компонентом Stepper для построения экрана громкости. LevelIndicator аналогичен ScrollIndicator , но отображается на противоположной стороне экрана и по умолчанию имеет более широкую ширину хода и разной индикатор. ( I8a4ac )
  • Мы добавили TimePicker , с макетами в течение 24 часов (с секундами или без него) или 12 -часовым временем с выбором AM/PM. ( IA5124 )
  • Мы добавили DatePicker , с конфигурацией для заказа столбцов (т.е. дневной год, месяц-год или год в месяц) и дополнительные даты MIN/MAX. ( IBF13B )
  • Мы добавили параметр веса в text функцию TimeText . В тех случаях, когда Timetext состоит из более чем одного текстового элемента, это позволяет контролировать, как распределено пространство. ( I36700 )
  • Мы добавили RadioButton и SplitRadioButton - эти компоненты упрощают предыдущий API, объединив как (разделенный) SelectableButton , так и дочерний радиоконтроль ( if7ae8 )
  • Мы добавили CheckboxButton и SplitCheckboxButton - эти компоненты упрощают предыдущий API, объединив как (разделенную) ToggleButton , так и контроль над детьми ( IA8F70 )
  • Мы добавили SwitchButton и SplitSwitchButton - эти компоненты упрощают предыдущий API, объединив (Split)ToggleButton и управление переключателем ребенка ( I0D349 )
  • Мы обновили документацию AnimatedText , чтобы объяснить поведение переизбытки. ( IFF30A )
  • Мы добавили ButtonGroup , чтобы объединить 2 или 3 кнопки, такие как нажатия кнопок, создавая скоординированную анимацию. ( IE27DB )
  • Мы добавили дополнительную анимацию формы для IconButton и TextButton при нажатии. ( Iffca5 )
  • Мы добавили дополнительную цветовую вариацию, 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 -руководства - эти параметры могут быть переопределены разработчиками напрямую, если это необходимо ( ie51f7) - эти параметры могут быть переопределены разработчиками по тексту (IE51F7 ).
  • Мы изменили ширину хода по умолчанию LevelIndicator на 6dp , чтобы дифференцировать его от ScrollIndicator , который имеет ширину хода 4dp . ( IF6F63 )
  • Мы исправили проблему в TimeText , так что поддерживались большие угла развертки. ( IE489F )
  • Исправлена ​​проблема во время переработки EdgeButton . ( I4cdca )
  • Исправленные макеты кнопок с разделенным переключением при предоставлении настраиваемой настройки контента. ( IA33D3 )
  • Собрал небольшие значения прогресса, по крайней мере, к ширине линии индикатора прогресса. ( I3bd84 )

Версия 1.0.0-Alpha23

14 мая 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha23 выпускается. Версия 1.0.0-Alpha23 содержит эти коммиты .

Изменения API

  • Мы обновили API -интерфейсы ToggleButton и RadioButton , так что отключенные цвета можно настроить. ( IF13A7 )
  • Мы добавили новый CircularProgressIndicator для Material3. ( IB3BD7 )

Исправление ошибок

  • Мы исправили ошибку, в которой выбирали кнопки, анонсировавшись Double Tap to Toggle, когда уже выбрано. ( I7ed88 )

Версия 1.0.0-Alpha22

1 мая 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha22 выпускается. Версия 1.0.0-Alpha22 содержит эти коммиты .

Изменения API

  • Мы обновили Material3 ColorScheme . ( I7b2b8 )
  • Мы обновили переключатель Material3, а также некоторые изменения цвета, теперь Tick Sathes, который используется для флажона. ( ICAC7B )

Исправление ошибок

  • Обновите все демонстрации интеграции, чтобы использовать новый модификатор rotaryScrollable . ( I25090 )

Версия 1.0.0-Alpha21

17 апреля 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha21 выпускается. Версия 1.0.0-Alpha21 содержит эти коммиты .

  • Этот релиз был вызван из -за технической проблемы в предыдущем выпуске, которая привела к отсутствующему исходному банкам. В этом выпуске нет новых коммитов.

Версия 1.0.0-Alpha20

3 апреля 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha20 выпускается. Версия 1.0.0-Alpha20 содержит эти коммиты .

Исправление ошибок

  • Мы скорректировали волновую и сфокусированную Alphas Alphas для контраста. ( I59f0a )
  • Мы добавили расстояние между первичными и вторичными метками в Button , ToggleButton и RadioButton , после последних изменений в стилях типографии и высоты линейки. ( I2c0ba )

Версия 1.0.0-Alpha19

6 марта 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha19 выпускается. Версия 1.0.0-Alpha19 содержит эти коммиты .

Изменения API

  • Мы добавили TimeText в библиотеку Material3 и Wear Compose3. Этот компонент показывает текущее время (и дополнительное состояние) в верхней части экрана. Новый, краткий материал3 API избегает дублирования между линейным и изогнутым контентом. ( I4d7c3 )
  • Мы обновили имена параметров от onSelected до onSelect для RadioButton . ( I1a971 )
  • Токенизируйте RadioButton и SplitRadioButton , а также рефактор существующих методов, чтобы уменьшить количество CompositionLocal поиска путем добавления кэшированных экземпляров цветов и создания методов RadioButtonColors и SplitRadioButtonColors внутренних. ( I02B33 )

Версия 1.0.0-Alpha18

21 февраля 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha18 выпускается. Версия 1.0.0-Alpha18 содержит эти коммиты.

Изменения API

  • Мы рефактировали шаблон дефолтов по умолчанию для CardColors , ToggleButtonColors и SplitToggleButtonColors , создавая кэшированные экземпляры и уменьшая использование CompositionLocal . ( If3fec )

Версия 1.0.0-Alpha17

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 в специфических классах цветовых классов и отмеченных методах аксессуаров внутренних классов как внутренних. ( IF6571 )

Исправление ошибок

  • Мы обновили Modifier.minimumInteractiveComponentSize для использования Modifier.node . ( IBA6B7 )

Версия 1.0.0-Alpha16

24 января 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha16 выпускается. Версия 1.0.0-Alpha16 содержит эти коммиты.

Новые возможности

  • Мы добавили CompactButton , который может использовать те же заполненные, заполненные тональные и обрисованные цвета, что и кнопка. ( I05DF0 )

Изменения API

  • Мы добавили RadioButton / SplitRadioButton в качестве контейнеров для управления выбором, таких как радиоуправление. Это отличается от существующего ToggleButton в том, что RadioButton выбирается (и работает в группе отбора), тогда как ToggleButton является точкой (и является независимым). ( I61275 )
  • Мы удаляем LocalContentAlpha из библиотеки износого Compose Material3 для согласованности с библиотекой Compose Material3. ( I49a0a )
  • Изной материал и носительный материал3 Компоненты, обнаружающие MutableInteractionSource в их API, были обновлены, чтобы теперь выявить нулевые MutableInteractionSource , которые по умолчанию на нуле. Здесь нет семантических изменений: передача NULL означает, что вы не хотите поднимать MutableInteractionSource , и он будет создан внутри компонента, если это необходимо. Изменение на NULL позволяет некоторым компонентам никогда не распределять MutableInteractionSource и позволяет другим компонентам только лениво создавать экземпляр, когда им необходимо, что повышает производительность в этих компонентах. Если вы не используете MutableInteractionSource которые вы передаете этим компонентам, рекомендуется вместо этого пройти NULL. Также рекомендуется внести аналогичные изменения в своих собственных компонентах. ( IB90FC , B/298048146 )
  • Мы внесли незначительные улучшения в API HorizontalPageIndicator и его документацию. ( I60efc )
  • Мы обновили ColorScheme , чтобы быть неизменными, делая индивидуальные обновления цвета менее эффективными, но делая более распространенное использование цветов более эффективным. Причина этого изменения заключается в том, что большинство приложений не будут обновлять отдельные цвета в качестве основного варианта использования. Это все еще возможно, но оно будет перекомплектовать больше, чем раньше, в свою очередь, мы значительно уменьшаем количество подписок состояния по всему коду материала и повлияем на инициализацию и стоимость времени выполнения более стандартных вариантов использования. ( IBC2D6 )
  • Обновленные API -интерфейсы ToggleButton и SplitToggleButton , чтобы позволить настраивать отключенные цвета. Кроме того, токены дизайна материала теперь используются для значений цвета и типографии. ( If087c )
  • Обновленные цвета кнопки изображения, чтобы использовать токены дизайна материала. ( IBA215 )
  • Мы изменили Checkbox , компоненты Switch и RadioButton , чтобы быть отображаемыми только для отображения, удалив обработку щелчка. Ожидается, что эти компоненты будут использоваться в (Split)ToggleButton , который обрабатывает щелчок, поэтому компоненты теперь более четко обозначены как только дисплей (и не предназначены для автономного использования при износе). ( I2322e )

Исправление ошибок

  • Мы добавили токены для значений движения продолжительности и смягчения в износовом материале 3. ( i437cd )
  • Мы исправили ошибку в ToggleButton , SplitToggleButton , Checkbox , Switch и RadioButton , чтобы объявления о доступности не повторялись (ранее, семантические роли были дублированы). ( ICA281 )
  • Мы удалили слой MaterialCore для CompactButton для повышения производительности. ( 7902858 )

Версия 1.0.0-Alpha15

15 ноября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha15 выпускается. Версия 1.0.0-Alpha15 содержит эти коммиты.

Изменения API

  • Мы переименовали фонд SwipeToDismissBox в BasicSwipeToDismissBox . Это делает различие более ясным между компонентом уровня фундамента и SwipeToDismissBox уровня Material3. Последний вытаскивает цвета из MaterialTheme который будет использоваться при срабах, и делегирует оставшуюся реализацию в BasicSwipeToDismissBox . ( Ibecfc )

Исправление ошибок

  • Мы удалили слой материала для кнопки Material3 для повышения производительности. ( I55555 )

Версия 1.0.0-Alpha14

18 октября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha14 выпускается. Версия 1.0.0-Alpha14 содержит эти коммиты.

Изменения API

  • Мы удалили параметр indicatorStyle из Material3 HorizontalPageIndicator - вместо этого он будет следовать форме экрана устройства (линейный или круглый). ( 183728 )
  • Мы отделили цвета для SplitToggleButton от The ToggleButton , добавив новый класс SplitToggleButtonColors . ( I78bee )

Версия 1.0.0-Alpha13

4 октября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha13 выпускается. Версия 1.0.0-Alpha13 содержит эти коммиты.

Изменения API

  • Мы добавили дополнительное поле подзаголовок в TitleCard . ( IFC45A )
  • Мы добавили токены дизайна материала для TextButton . ( I769dc )

Версия 1.0.0-Alpha12

20 сентября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha12 выпускается. Версия 1.0.0-Alpha12 содержит эти коммиты.

Изменения API

  • Мы обновили IconButton для использования токенов дизайна материала. ( I3f137 )
  • Мы обновили IconToggleButton для использования токенов дизайна материала. ( I7d263 )
  • Мы обнародовали конструкторы CheckboxColors , RadioButtonColors , SwitchColors . ( I82b73 )

Версия 1.0.0-Альфа11

6 сентября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha11 выпускается. Версия 1.0.0-Alpha11 содержит эти коммиты.

Исправление ошибок

  • Мы обновляем обновление типографии для карт Material3 для TitleMedium . ( I597bd )
  • Мы обновили типографику и выравнивание для нашего Material3 ListHeader и ListSubheader . ( IB5CEB )

Версия 1.0.0-Alpha10

23 августа 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha10 . Версия 1.0.0-Alpha10 содержит эти коммиты.

Новые возможности

  • Добавить HorizontalPageIndicator в библиотеку износа. ( Ifee99 )

Изменения API

  • Обновить кнопки кода для использования Material3 Design Tokens. ( I92fe4 )
  • Объявление износа Материала 3 Степпер и ползунок как экспериментальные, так как детали пользовательского интерфейса все еще доработаны. ( I84d54 )
  • Мы удалили размеры ExtraSmall в круглом TextButton и TextToggleButton , поскольку этот размер относится только к IconButton . ( IBC7D5 )

Исправление ошибок

  • Мы обновили руководство по типографии для Texttogglebutton для использования Labellarge для BigbutTonsize ( IB10FA )
  • Мы обновили руководство по типографии для TextButton для использования Labellarge для BigbutTonsize ( i8f3a7 )
  • Мы установили минимальную цель Touch Card на 48DP для доступности. ( IEB9B1 )
  • Добавить AppCard с демонстрацией изображения, удаление AppCard с фоновой демонстрацией ( ID735F )
  • Исправьте ошибку в круглых кнопках, где модификаторы не были прикованы правильно. ( I5e162 )

Версия 1.0.0-Alpha09

9 августа 2023 года

androidx.wear.compose:compose-material3:1.0.0-alpha09 выпускается. Версия 1.0.0-Alpha09 содержит эти коммиты.

Новые возможности

  • Мы добавили ToggleButton для Material3 ( i6bed6 )

Изменения API

  • Мы включили аннотацию FloatRange в качестве ограничений API, которые ранее были указаны в комментариях. ( ICB401 )
  • Мы обновили типографику для износа Material3, чтобы придерживаться новейших руководящих принципов Material3. ( I1bad6 )

Исправление ошибок

  • Мы обновили цвета для Button , IconButton и TextButton в соответствии с дизайном Material3. ( IB2495 )
  • У нас есть фиксированная видимость галочки в флажке в состояниях отключений. ( IB25BF )

Версия 1.0.0-Alpha08

26 июля 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha08 выпускается. Версия 1.0.0-Alpha08 содержит эти коммиты.

Новые возможности

  • Мы добавили следующие элементы управления выбором для Material3 - Switch , Checkbox , RadioButton . ( IB918C )
  • Мы добавили IconToggleButton и TextToggleButton в Material3, кнопку круговой переключения с одним слотом для значка и текста соответственно. Для разных размеров ToggleButton мы рекомендуем использовать Modifier.touchTargetAwareSize с размерами, представленными в соответствующих кнопках с обложкой. ( I9f015 )
  • We have added ListHeader and ListSubheader to our Material3 components. ( Ibaefe )
  • We have added Material3 SwipeToDismissBox , which calls the new Foundation SwipeToDismissBox 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 and InlineSlider now support repeated clicks on long press so that you can quickly increase/decrease value of Stepper and InlineSlider by holding the + or - buttons ( I27359 )

Version 1.0.0-alpha07

21 июня 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.

Новые возможности

  • 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 provide Modifier.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 of wear.compose.material3 ( I72004 , b/285404743 )

Version 1.0.0-alpha06

7 июня 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits.

Исправление ошибок

  • We have updated TextButton to use the toDisabledColor extension function for correct disabled alpha values. ( I814c8 )

Version 1.0.0-alpha05

24 мая 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

Новые возможности

  • We have added TextButton to Material3, a circular button with a single slot for text. For different sizes of TextButton , we recommend using Modifier.touchTargetAwareSize and ExtraSmallButtonSize , SmallButtonSize , DefaultButtonSize and LargeButtonSizeIcon provided in TextButtonDefaults . The default TextButton has no border and a transparent background for low emphasis actions. For actions that require high emphasis, use filledTextButtonColors ; for a medium-emphasis, outlined TextButton , set the border to ButtonDefaults.outlinedButtonBorder ; for a middle ground between outlined and filled, use filledTonalTextButtonColors . ( I667e4 )
  • We have added Card , OutlinedCard , AppCard and TitleCard into the Wear Compose Material3 library. AppCard and TitleCard can also be given the outlined appearance using CardDefaults.outlinedCardColors and CardDefaults.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 )

Version 1.0.0-alpha04

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 and OutlinedIconButton . For different sizes of IconButton , we recommend using Modifier.touchTargetAwareSize and ExtraSmallButtonSize , SmallButtonSize , DefaultButtonSize and LargeButtonSizeIcon provided in IconButtonDefaults . We also provide IconButtonDefaults.iconSizeFor to determine the recommended icon size for a given button size. ( I721d4 )

Version 1.0.0-alpha03

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 )

Version 1.0.0-alpha02

5 апреля 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

Исправление ошибок

  • We have added a DefaultTextStyle to Wear Compose Material 3 which defaults the PlatformTextStyle.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. Version 1.0.0-alpha01 contains these commits.

Новые возможности

  • 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:

    • Material theme - configures the color scheme, typography and shapes consistently across components in the library. The Material3 theme has revised colors which support accessible contrast. ( I84005 )
    • Text/Icon - building blocks for Wear Compose apps ( I8e06a )
  • 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

Write Jetpack Compose applications for Wear OS devices by providing functionality to support different device sizes and navigation gestures using the Material 3 Expressive design system.
Последнее обновление Stable Release Кандидат на релиз Бета-релиз Alpha Release
4 июня 2025 г. - - 1.5.0-beta03 -

Declaring dependencies

To add a dependency on Wear, you must add the Google Maven repository to your project. Read Google's Maven repository for more information.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

классный

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

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

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

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

Котлин

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

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

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

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

For more information about dependencies, see Add build dependencies .

Обратная связь

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.

Создать новый выпуск

See the Issue Tracker documentation for more information.

Wear Compose Material3 Version 1.5

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. The OpenOnPhoneDialogDefaults have been updated to remove the iconContentDescription and the contentDescription parameter from icon() . Also, ConfirmationDialogDefaults now has modifier parameters on SuccessIcon and FailureIcon 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 of SwipeToReveal when activity or process is recreated. rememberRevealState function now uses this Saver by default. ( Ie0ecb )
  • SwipeToReveal primary and secondary actions buttons should default to ButtonDefault.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 the Revealing 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 in RevealState.currentValue when hasPartiallyRevealedState is set to false. ( I9c7cf )
  • SwipeToReveal undo buttons are now ButtonDefaults.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 optimizing ScrollProgress 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 and TextToggleButton 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 and ScreenScaffold to lay out the structure of the screen and coordinate ScrollIndicator and TimeText animations.
  • Buttons - numerous stadium-shaped buttons are supported with flexible, single-slot containers and multi-slot variations for buttons with icons and labels. CheckboxButton and SwitchButton are provided when toggle buttons are needed, whilst RadioButton 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 an EdgeButton .
  • ConfirmationDialog is available to display a message with a timeout, supporting special animations for success, failure and open-on-phone variations.
  • Pickers - TimePicker and DatePicker variations are supported as well as the Picker and PickerGroup components for building your own picker screens.
  • ProgressIndicators - circular, and linear progress indicators are supported (the CircularProgressIndicator 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 and AnimatedPage components coordinate HorizontalPageIndicator and VerticalPagerIndicator animations. HorizontalPager and VerticalPager 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 and VerticalPager 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 to Modifier.hierarchicalFocusGroup and removed the callback parameter; removed the overload of Modifier.hierarchicalFocusRequester with a FocusRequester parameter; created a new CompositionLocal , LocalScreenIsActive so that components can inform and check which screen is the active one. ( I5ff7c ).
  • Deprecated SwipeToReveal from Wear Compose Foundation in favor of SwipeToReveal APIs in Wear Compose Material and Wear Compose Material3. Please replace Wear Foundation SwipeToReveal 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, eg RevealValue , RevealDirection , RevealActionType , RevealState , rememberRevealState . Developers should change their imports of these classes and functions from androidx.wear.compose.foundation to androidx.wear.compose.material3 . ( I640e6 ).
  • Updated the Wear Compose Material3 SwipeToReveal API as follows: added primaryAction , onFullSwipe , secondaryAction , undoPrimaryAction , undoSecondaryAction and hasPartiallyRevealedState parameters to the SwipeToReveal composable; removed the ability to customize positionalThreshold and animationSpec from RevealState ; removed lastActionType , revealThreshold and width from RevealState ; changed the RevealState constructor to accept a RevealDirection instead of anchors; removed createRevealAnchors , anchors, and bidirectionalAnchors functions; SwipeToRevealScope functions primaryAction , secondaryAction , undoPrimaryAction and undoSecondaryAction were renamed to PrimaryActionButton , SecondaryActionButton , UndoActionButton and made into Composable functions; marked RevealActionType as internal. ( I885d0 ).
  • Further updated SwipeToReveal API as follows: renamed onFullSwipe to onSwipePrimaryAction ; renamed SwipeToRevealNonAnchoredSample to indicate the use of the hasPartiallyRevealedState parameter; removed actionButtonHeight , since the default is the Button's default height and the larger height can be set using a modifier; removed the SmallActionButtonHeight from SwipeToRevealDefaults ; made the value parameter in RevealValue and RevealDirection constructors private. ( I465ce ).

Исправление ошибок

  • Fixed ScreenScaffold 's EdgeButton handling so that, after a TransformingLazyColumn item is removed, the EdgeButton 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 and disabledContainerPainter override containerColor and disabledContainerColor ( I4a453 ).
  • Reverted a change to TimeText in the previous release which moved the BroadcastReceiver 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 latest contentDescription lambda function. ( Icb5b1 ).
  • Updated text styles in TimePicker and DatePicker so that font changes no longer result in truncation. ( I26194 ).
  • ListHeader and ListSubHeader 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 the EdgeButton 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 of transformedHeight and graphicsLayer modifiers if you need to get the same functionality. ( Ie181d )
  • Replaced ImageButton and ImageCard composables with Button and Card/TitleCard overloads respectively. Renamed imageButtonColors to buttonWithContainerPainterColors and imageCardColors to cardWithContainerPainterColors . Added public ButtonDefaults.scrimBrush and CardDefaults.scrimBrush . Renamed button imageBackgroundGradientStartColor and imageBackgroundGradientEndColor to scrimGradientStartColor and scrimGradientEndColor . Renamed CardDefaults.ImageContentPadding to CardDefaults.CardWithContainerPainterContentPadding ( I7b8b6 )
  • Picker and PickerGroup now take the contentDescription 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 with ImageButton , ButtonDefaults.imageButtonColors , ButtonDefaults.containerPainter and ButtonDefaults.disabledContainerPainter . And similar changes for Card. The painters are removed from ButtonColors and CardColors . ( I8c6a1 )
  • Updated placeholders to simplify the API. We now provide two Modifiers, Modifier.placeholderShimmer to apply a shimmer effect at the component level, and Modifier.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 from 20sp to 18sp , and letter spacings on ArcLarge and ArcSmall have been updated. ConfirmationDialog / OpenOnPhoneDialog now use the default ArcLarge instead of overriding it to 18sp . ( 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 to PagerScaffoldDefaults.FadeOutAnimationSpec . The page parameter on AnimatedPage has been renamed to pageIndex . ( I701f2 )
  • Updated naming for TransformingLazyColumn 's SurfaceTransformation - applyTransformation split into applyContainerTransformation and applyContentTransformation , and renamed createBackgroundPainter to createContainerPainter . Further naming updates to TransformationSpec and ResponsiveTransformationSpec . ( I1c534 )
  • The AppScaffold backgroundColor has been renamed to containerColor . ( 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 on ArcLarge and ArcSmall have been updated. ConfirmationDialog/OpenOnPhoneDialog now use the default ArcLarge instead of overriding it to 18sp. ( Id39a8 )
  • Updated the heading animation for DatePicker and TimePicker based, so that the fade-out and fade-in animation act as one Spring animation. ( I68963 )
  • Optimized PagerScaffold by avoiding the reading of currentPageOffsetFraction in the AnimatedPage 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 and DatePicker continue to apply FontFeatureSetting=tnum for tabular numerals. ( I88929 )
  • Corrected the initial RSB input focus for TimePicker and DatePicker . ( I1c773 )
  • Updated the default text on OpenOnPhoneDialog to "Check your phone". ( I00a3f )
  • Updated weights for ArcLarge and ArcMedium 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 a Pager component - instead this must be provided via the content Composable. AnimatedPage and snapWithSpringFlingBehaviour are now public and can be used along with Wear Foundation Pager to achieve previous M3 PagerScaffold behaviour. (See updated samples). ( Ia4724 )
  • Updated PagerState , removing the Compose Foundation PagerState as the base class and adding currentPage , currentPageOffsetFraction and pageCount properties. Updated the GestureInclusion interface, renaming the method to ignoreGestureStart . ( I4ae07 )
  • LevelIndicator sweep angle parameters are now annotated with FloatRange(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, but timeTextCurvedText and timeTextSeparator 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 to PagerDefaults.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 as TransformingLazyColumn . ( 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 . Foundation SwipeToReveal 's default behavior is now to disallow swiping when the gesture starts from the edge. Material3 SwipeToReveal' s default behavior is now to disallow swiping when the gesture starts from the edge, when the SwipeDirection 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 empty contentPadding by default instead of putting first and last items into center. ( I77ab7 )
  • Removed SwipeToReveal 's rememberRevealState 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 and PageIndicator 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 in ConfirmationDialogDefaults and OpenOnPhoneDialogDefaults has been updated to use ArcLarge typography with size 18sp and letter spacing 1.8sp . ( Ic9ced )
  • Card , ListHeader , RadioButton , CheckboxButton , SwitchButton no longer constrain the height of its contents by default. Where necessary, use Modifier.height(IntrinsicSize.Min) to restore the previous behavior if needed. ( I80bb8 )
  • We have updated the default TimeText and ScrollIndicator colors to include more gray tones, because using OnBackground (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 and ScrollIndicator 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 using edgeSwipeToDismiss modifier. ( I02b07 )
  • We have added a heading to DatePicker and TimePicker 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 's primaryAction and secondaryAction . Custom action semantics should be added to the content of the SwipeToReveal component directly, by the developer. ( Ia67f3 )
  • We have removed the 'Button' prefixes from sizes, text styles and color functions in IconToggleButtonDefaults and TextToggleButtonDefaults ( I5471d )
  • We have removed the experimental LocalMinimumInteractiveComponentEnforcement ( I4ad8a )
  • We have replaced the PickerGroupScope DSL with a composable. As such, we removed the pickerGroupItem method from PickerGroupScope , and instead added @Composable PickerGroupItem that should be used to add a Picker to PickerGroup . We also updated the type of PickerGroup '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 's TransformationSpec 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 and TextToggleButtonShapes to be consistent with the compose/material3 classes ( I5a081 )
  • We have added an overscrollEffect parameter added to ScalingLazyColumn , TransformingLazyColumn and ScreenScaffold . ( I0cee8 )
  • We have renamed the swipeDirection parameter to revealDirection in rememberRevealState . ( I7472f )
  • Wear Pager now has its own PagerScope instead of using Compose PagerScope . ( I9195b )
  • We have removed the LinearProgressIndicatorContent composable, please use LinearProgressIndicator directly so that changes to values are animated by default. ( I2c4ad )
  • We have removed the CircularProgressIndicatorStatic composable and added a public DrawScope function drawCircularProgressIndicator with the same functionality. Please use CircularProgressIndicator directly so that changes are animated by default, but build your own composable from drawCircularProgressIndicator if custom animations are needed. ( Ie762f )
  • We have reordered the parameters in DrawScope.drawCircularProgressIndicator to move up the targetProgress parameter. ( I8ab92 )
  • The OpenOnPhoneDialog api was updated for better clarity and consistency with other Dialogs. The show parameter was renamed to visible and curvedText is now provided by the caller instead of having a default value. ( Idec2d )
  • We have renamed openOnPhoneCurvedText to openOnPhoneDialogCurvedText ( I65bdd )
  • We have added ScrollIndicatorColors for providing custom colors to ScrollIndicator . ( I9eb8c )
  • Allow the configuration of the color used to draw a background behind TimeText . ( I9f5d9 )
  • Updated ArcLarge , ArcMedium and ArcSmall typographies to be CurvedTextStyle ( Iffc41 )
  • We have removed ScreenScaffoldDefaults.contentPaddingWithEdgeButton . ( Ia923e )
  • We have added errorDim to the ColorScheme , 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 of androidx.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

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 and TextToggleButtonShapes 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 the variantAnimatedShape method in IconToggleButton and TextToggleButton ( 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 's ButtonGroupScope , replacing the DSL-based ButtonGroupItem with Modifier.weight , Modifier.minWidth and Modifier.enlargeOnPress . ( I16c3c )
  • In the ButtonGroup API, we have updated the new modifier-based ButtonGroupScope : enlargeOnPress is now called animateWidth , and it takes an InteractionSource , rather than MutableInteractionSource because it is not necessary to mutate it. We have also added public constant ButtonGroupDefaults.DefaultMinWidth , the default minimum width of buttons in a ButtonGroup . ( 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 and SliderDefaults.IncreaseIcon , with suitable default values ( I2e1a7 )
  • We have renamed the spacing parameter in Picker and PickerGroup to verticalSpacing ( Ib75cc )
  • We have removed ConfirmationDialogDefaults.successText and failureText because it is expected that callers of ConfirmationDialog will provide strings with more context. Also renamed confirmationCurvedText to confirmationDialogCurvedText . Finally, renamed the Dialog show parameter to visible for consistency with other recent updates to dialogs. ( I10074 )
  • IconButton renamed disabledImageOpacity to DisabledImageOpacity . ( 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 with Button . ( 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 and EdgeButton APIs, so that it is easier to specify content paddings on screens that include an EdgeButton . In the new API the EdgeButton 's size is only passed to the EdgeButton , and the ScreenScaffold takes an edgeButtonSpacing parameter for the spacing between EdgeButton and list content. ( I424fd )
  • In DatePicker , we have renamed parameters minDate to maxDate , and minValidDate to maxValidDate . In DatePickerColors , we have renamed parameter selectedPickerContentColor to activePickerContentColor , and unselectedPickerContentColor to inactivePickerContentColor ( Iba17b )
  • We have updated the ArcProgressIndicator defaults to strokeWidth=6dp and recommended diameter = 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 the show parameter to visible for compatibility with other Compose animation APIs. In addition, we have made ConfirmationDialogContent , SuccessConfirmationDialogContent , FailureConfirmationDialogContent available for situations where developers need to customize the intro/outro dialog animations. ( Iaeb33 )
  • We have updated CircularProgressIndicatorContent to CircularProgressIndicatorStatic (the non-animated variation of CircularProgressIndicator ) so that it can now be used to build CircularProgressIndicator 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 in Button , 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 for TransformingLazyColumn was refactored which triggered an API change. ( I0c6dc )
  • We have updated IconToggleButtonShapes and TextToggleButtonShapes to have two different shape parameters uncheckedPressed and checkedPressed ( I85dbd )
  • Invalid month/day options are now visible in the DatePicker , with a new invalidPickerContentColor , when using minDate or maxDate . ( If4541 )
  • We have updated the Stepper API to provide increaseIcon and decreaseIcon slots - the content for these can be built as usual from the Icon composable. ( Id35da )
  • We have updated dynamicColorScheme by removing the optional defaultColorScheme parameter and now returning nullable ColorScheme . 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 with CompactButton . A CompactButton containing only an icon should use ButtonDefaults.SmallIconSize = 24.dp , whereas a CompactButton containing both icon and text should use ButtonDefaults.ExtraSmallIconSize = 20.dp . It is recommended that CompactButton 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 different EdgeButtonSizes . Also, updated the EdgeButton 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 exposed LinearProgressIndicatorContent which provides the visual content without animations. ( Idee99 )
  • We have added a new CircularProgressIndicatorContent composable to display the visual content of CircularProgressIndicator without animations. ( Ie33d4 )
  • TransformingLazyColumn newly provides the composition local LocalTransformingLazyColumnItemScope which Card s, Button s and ListHeader s now use to automatically morph when placed inside a TransformingLazyColumn . Callers can disable automatic morphing using the new TransformExclusion wrapper. ( I1652f )
  • We have updated the type of ButtonDefaults.shape to RoundedCornerShape ( Iccdf2 )

Исправление ошибок

  • We have fixed a bug to respect existing alpha on background for TimeText ( I1eb60 )
  • We have set TextMotion to Animated 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 when ScalingLazyColumn was used with AutoCenteringParams . ( I387dd )
  • We have updated the colors and typography for ListHeader and ListSubHeader . Also the colors for the toggle controls on CheckboxButton and SwitchButton . ( I39817 )
  • We have fixed ScrollIndicator positioning in LazyColumn and ScalingLazyColumn with ContentPadding . ( I2bc51 )
  • We have fixed a bug seen in OpenOnPhoneDialog progress animation by using the new CircularProgressIndicatorContent . ( I3e443 )
  • We have updated the HorizontalPagerScaffold and VerticalPagerScaffold 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 for PagerState by removing the orientation parameter, which is no longer needed. The new behavior is for TimeText to remain in place for both horizontal and vertical paging. ( I71767 )
  • LocalHapticFeedback now provides a default HapticFeedback implementation when the Vibrator API indicates that haptics are supported. The following have been added to the HapticFeedbackType - Confirm , ContextClick , GestureEnd , GestureThresholdActivate , Reject , SegmentFrequentTick , SegmentTick , ToggleOn , ToggleOff , VirtualKey . Wear Compose long-clickable components such as Button , IconButton , TextButton , and Card now perform the LONG_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 and VerticalPageIndicator 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 and Dialog composables that make up the AlertDialog API, so that it is possible to add customization if necessary (such as customizing AlertDialog animation whilst keeping the recommended content layout). In addition, we have added Modifier and Color parameters to the EdgeButton , ConfirmButton and DismissButton members of AlertDialogDefaults . ( I4eb71 )
  • We have updated the Placeholder API as follows: renamed PlaceholderState.startPlaceholderAnimation to PlaceholderState.animatePlaceholder , PlaceholderState.isShowContent to PlaceholderState.isHidden , and PlaceholderDefaults.shape to PlaceholderDefaults.Shape ; renamed the painter parameter in painterWithPlaceholderOverlayBackgroundBrush to originalPainter ; changed visibility of PlaceholderState.placeholderProgression from public to internal and renamed it to placeholderShimmerProgression ; added placeholder animation duration constants to PlaceholderDefaults . ( Ie5a59 )
  • We have updated the EdgeButton API as follows: renamed the parameter on ScreenScaffold from bottomButton to edgeButton ; made EdgeButtonSize 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 and TextToggleButton on click ( Ieb333 )
  • Added minimum duration on IconButton and TextButton 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 and ScrollIndicator following the renaming of Wear Compose Foundation LazyColumn to TransformingLazyColumn . ( I0608b )
  • EdgeButton 's preferredHeight parameter has been renamed to buttonSize and its value can only be chosen from 4 constants in the newly introduced EdgeButtonSize value class. ( Icdd70 )
  • We have changed the naming of ListSubheader to ListSubHeader and added publicly accessible default values for ListHeader and ListSubHeader . ( I96730 )
  • We have added new HorizontalPagerScaffold and VerticalPagerScaffold components for Wear which provide new animations and coordination between time text and page indicator components. ( Iff7d0 )
  • We have added rotary support to HorizontalPagerScaffold and VerticalPagerScaffold , 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 the standardMotionScheme and the expressiveMotionScheme 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 added VerticalPageIndicator for use with VerticalPager ( 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 's buttonHeight parameter to preferredHeight . ( I4fab3 )
  • The Kotlin version has been updated to 1.9 ( I1a14c )
  • We have renamed OpenOnPhoneDialogDefaults.Icon to OpenOnPhoneDialogDefaults.OpenOnPhoneIcon to avoid clashing with Icon ( I0f391 )
  • We have added support for ScrollIndicator in LazyColumn . ( Ia546a )
  • We have updated default values for TextToggleButton and IconToggleButton . ( I7aaa9 )
  • We have simplified the Picker and PickerGroup API. ( Id0653 )
  • We have added CardDefaults.Shape and CardDefaults.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 and DatePicker . ( I46c7c )
  • We have updated the paddings in Confirmation and OpenOnPhoneDialog . ( 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 the SegmentedCircularProgressIndicator . When the progress exceeds 1.0, this will be indicated by the new overflowTrack color. ( Iaaa3d )
  • The round IconToggleButton and TextToggleButton 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 with Column , due to the need to specify the EdgeButton height explicitly in ScreenScaffold . ( Ie353d )
  • We have added support for the Wear Compose LazyColumn with our ScreenScaffold (and added an implementation of ScrollInfoProvider for LazyColumnState ). ( Ib8d29 )
  • We have combined LocalTextMaxLines , LocalTextAlign , LocalTextOverflow into a single LocalTextConfiguration 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 and TextButton . ( 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 the RowScope . ( 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 and ScreenScaffold components to the Material3 library, which include functionality to coordinate layering and transitions of TimeText and ScrollIndicator . AppScaffold provides a top level of scaffold components that sit on top of all screens. As such, adding TimeText to the AppScaffold allows it to remain in place while swiping between screens. Screens can themselves override or hide the time text. ScreenScaffold provides a slot for the ScrollIndicator 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 that ScreenStage 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 as EdgeButton ), that will be shown and resized depending on the scrolling content ( I032eb )
  • We have added Modifier.scrollTransform and Modifier.targetMorphingHeight to add Material3 motion effects to items in LazyColumn . ( Ie229a )
  • We have added SegmentedCircularProgressIndicator as a variation on CircularProgressIndicator . 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 existing CircularProgressIndicator . ( 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 the TimeText 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 existing Stepper component to construct a volume screen. LevelIndicator is similar to ScrollIndicator , 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 's text 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 and SplitRadioButton - these components simplify the previous API by combining both the (Split) SelectableButton and the child radio control ( If7ae8 )
  • We have added CheckboxButton and SplitCheckboxButton - these components simplify the previous API by combining both the (Split) ToggleButton and the child Checkbox control ( Ia8f70 )
  • We have added SwitchButton and SplitSwitchButton - 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 and TextButton when pressed. ( Iffca5 )
  • We have added an additional color variation, FilledVariant , to Button , IconButton , TextButton , CompactButton and EdgeButton ( I65fc3 )
  • We have added the forcedSize parameter to ImageWithScrimPainter , such that Button image backgrounds now maintain their component size by default. Setting the forcedSize = null adopts the Painter.instrinsicSize instead. ( Ic57af )
  • We have added long-click to Buttons ( Ib613d )
  • Long click support has also been added to IconButton and TextButton . ( I38891 )
  • Long click support has been added to Cards. ( I305d5 )
  • We have added LocalTextMaxLines , LocalTextAlign , LocalTextOverflow as CompositionLocals and used them as parameter defaults on Text . The composition locals can now be used by components such as CheckboxButton , 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 and TextToggleButtonColors to replace the now removed ToggleButtonColors . ( Ie0bf1 )

Исправление ошибок

  • We have updated Button , FilledTonalButton , OutlinedButton , ChildButton , CompactButton to use the new CompositionLocals 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 to 6dp to differentiate it from the ScrollIndicator which has a stroke width of 4dp . ( 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 and RadioButton 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.

Version 1.0.0-alpha20

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 and RadioButton , following the latest changes to typography styles and line heights. ( I2c0ba )

Version 1.0.0-alpha19

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 to onSelect for RadioButton . ( I1a971 )
  • Tokenize RadioButton and SplitRadioButton and also refactor the existing methods to reduce the amount of CompositionLocal lookup by adding cached instances of colors, and making methods of RadioButtonColors and SplitRadioButtonColors internal. ( I02b33 )

Version 1.0.0-alpha18

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 and SplitToggleButtonColors by creating cached instances internally and reducing the usage of CompositionLocal . ( If3fec )

Version 1.0.0-alpha17

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 duplicate filledButtonColors . ( I4fe3b )
  • We have refactored default patterns for ButtonColors , IconButtonColors and TextButtonColors by creating a cached instance internally and reducing the usage of CompositionLocal . ( 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 use Modifier.node . ( Iba6b7 )

Version 1.0.0-alpha16

24 января 2024 г.

androidx.wear.compose:compose-material3:1.0.0-alpha16 is released. Version 1.0.0-alpha16 contains these commits.

Новые возможности

  • 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 existing ToggleButton in that RadioButton is selectable (and operates within a selection group) whereas ToggleButton 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 nullable MutableInteractionSource that defaults to null. There are no semantic changes here: passing null means that you do not wish to hoist the MutableInteractionSource , and it will be created inside the component if needed. Changing to null allows for some components to never allocate a MutableInteractionSource , 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 the MutableInteractionSource 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 and wear:compose-material3 libraries which replaces the deprecated rememberRipple . Also adds a temporary CompositionLocal , LocalUseFallbackRippleImplementation , to revert Material components to using the deprecated rememberRipple/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 custom RippleTheme . 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 and SplitToggleButton 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 and RadioButton 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 and RadioButton 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. Version 1.0.0-alpha15 contains these commits.

Изменения API

  • We have renamed the Foundation level SwipeToDismissBox to BasicSwipeToDismissBox . This makes the distinction clearer between the Foundation level component and the Material3 level SwipeToDismissBox . The latter pulls colors from the MaterialTheme to be used in scrims and delegates the remaining implementation to the BasicSwipeToDismissBox . ( Ibecfc )

Исправление ошибок

  • We have removed the material-core layer for Material3 Button to improve performance. ( I55555 )

Version 1.0.0-alpha14

18 октября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha14 is released. Version 1.0.0-alpha14 contains these commits.

Изменения API

  • We have removed the indicatorStyle parameter from the Material3 HorizontalPageIndicator - instead, it will follow the device screen shape (linear or round). ( I83728 )
  • We have separated the colors for SplitToggleButton from those for ToggleButton , by adding a new SplitToggleButtonColors class. ( I78bee )

Version 1.0.0-alpha13

4 октября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha13 is released. Version 1.0.0-alpha13 contains these commits.

Изменения API

  • We have added an optional Subtitle field to TitleCard . ( Ifc45a )
  • We have added Material Design color tokens for TextButton . ( I769dc )

Version 1.0.0-alpha12

20 сентября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha12 is released. Version 1.0.0-alpha12 contains these commits.

Изменения 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 )

Version 1.0.0-alpha11

6 сентября 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha11 is released. Version 1.0.0-alpha11 contains these commits.

Исправление ошибок

  • We update updated the typography for Material3 Cards to TitleMedium . ( I597bd )
  • We have updated the typography and alignment for our Material3 ListHeader and ListSubheader . ( Ib5ceb )

Version 1.0.0-alpha10

23 августа 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits.

Новые возможности

  • 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 round TextButton and TextToggleButton as that size only applies to the IconButton . ( 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

August 9, 2023

androidx.wear.compose:compose-material3:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.

Новые возможности

  • 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 and TextButton 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. Version 1.0.0-alpha08 contains these commits.

Новые возможности

  • We have added the following selection controls for Material3 - Switch , Checkbox , RadioButton . ( Ib918c )
  • We have added IconToggleButton and TextToggleButton to Material3, a circular toggle button with a single slot for icon and text respectively. For different sizes of ToggleButton , we recommend using Modifier.touchTargetAwareSize with the sizes provided in respective toggle buttons. ( I9f015 )
  • We have added ListHeader and ListSubheader to our Material3 components. ( Ibaefe )
  • We have added Material3 SwipeToDismissBox , which calls the new Foundation SwipeToDismissBox 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 and InlineSlider now support repeated clicks on long press so that you can quickly increase/decrease value of Stepper and InlineSlider by holding the + or - buttons ( I27359 )

Version 1.0.0-alpha07

21 июня 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.

Новые возможности

  • 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 provide Modifier.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 of wear.compose.material3 ( I72004 , b/285404743 )

Version 1.0.0-alpha06

7 июня 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits.

Исправление ошибок

  • We have updated TextButton to use the toDisabledColor extension function for correct disabled alpha values. ( I814c8 )

Version 1.0.0-alpha05

24 мая 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

Новые возможности

  • We have added TextButton to Material3, a circular button with a single slot for text. For different sizes of TextButton , we recommend using Modifier.touchTargetAwareSize and ExtraSmallButtonSize , SmallButtonSize , DefaultButtonSize and LargeButtonSizeIcon provided in TextButtonDefaults . The default TextButton has no border and a transparent background for low emphasis actions. For actions that require high emphasis, use filledTextButtonColors ; for a medium-emphasis, outlined TextButton , set the border to ButtonDefaults.outlinedButtonBorder ; for a middle ground between outlined and filled, use filledTonalTextButtonColors . ( I667e4 )
  • We have added Card , OutlinedCard , AppCard and TitleCard into the Wear Compose Material3 library. AppCard and TitleCard can also be given the outlined appearance using CardDefaults.outlinedCardColors and CardDefaults.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 )

Version 1.0.0-alpha04

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 and OutlinedIconButton . For different sizes of IconButton , we recommend using Modifier.touchTargetAwareSize and ExtraSmallButtonSize , SmallButtonSize , DefaultButtonSize and LargeButtonSizeIcon provided in IconButtonDefaults . We also provide IconButtonDefaults.iconSizeFor to determine the recommended icon size for a given button size. ( I721d4 )

Version 1.0.0-alpha03

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 )

Version 1.0.0-alpha02

5 апреля 2023 г.

androidx.wear.compose:compose-material3:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

Исправление ошибок

  • We have added a DefaultTextStyle to Wear Compose Material 3 which defaults the PlatformTextStyle.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. Version 1.0.0-alpha01 contains these commits.

Новые возможности

  • 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:

    • Material theme - configures the color scheme, typography and shapes consistently across components in the library. The Material3 theme has revised colors which support accessible contrast. ( I84005 )
    • Text/Icon - building blocks for Wear Compose apps ( I8e06a )
  • 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.