Составление материала 3

Создавайте пользовательские интерфейсы Jetpack Compose с помощью компонентов Material Design 3 — следующего этапа развития Material Design. Material 3 включает в себя обновленные темы и компоненты, а также функции персонализации Material You, такие как динамический цвет, и разработан с учетом нового визуального стиля Android 12 и системного пользовательского интерфейса.
Последнее обновление Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
12 февраля 2025 г. 1.3.1 - - 1.4.0-альфа08

Структура

Compose — это комбинация семи идентификаторов групп Maven в androidx . Каждая группа содержит целевой подмножество функций, каждая из которых имеет собственный набор примечаний к выпуску.

В этой таблице описаны группы и ссылки на каждый набор примечаний к выпуску.

Группа Описание
сочинить.анимацию Создавайте анимацию в своих приложениях Jetpack Compose, чтобы улучшить взаимодействие с пользователем.
compose.compiler Преобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
compose.foundation Создавайте приложения Jetpack Compose с готовыми к использованию стандартными блоками и расширяйте основу для создания собственных элементов системы проектирования.
составить.материал Создавайте пользовательские интерфейсы Jetpack Compose с готовыми к использованию компонентами Material Design. Это точка входа более высокого уровня в Compose, предназначенная для предоставления компонентов, соответствующих описанным на сайте www.material.io.
Compose.material3 Создавайте пользовательские интерфейсы Jetpack Compose с помощью компонентов Material Design 3 — следующего этапа развития Material Design. Material 3 включает в себя обновленные темы и компоненты, а также функции персонализации Material You, такие как динамический цвет, и разработан с учетом нового визуального стиля Android 12 и системного пользовательского интерфейса.
Compose.runtime Фундаментальные строительные блоки модели программирования Compose и управления состоянием, а также основная среда выполнения для целевого подключаемого модуля Compose Compiler.
Compose.ui Фундаментальные компоненты пользовательского интерфейса, необходимые для взаимодействия с устройством, включая макет, рисование и ввод.

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

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

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

классный

dependencies {
    implementation "androidx.compose.material3:material3:1.3.1"
    implementation "androidx.compose.material3:material3-window-size-class:1.3.1"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Котлин

dependencies {
    implementation("androidx.compose.material3:material3:1.3.1")
    implementation("androidx.compose.material3:material3-window-size-class:1.3.1")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

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

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

Создать новую задачу

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

Compose Material3 Общая версия 1.0

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

17 апреля 2024 г.

androidx.compose.material3:material3-common:1.0.0-alpha01 , androidx.compose.material3:material3-common-android:1.0.0-alpha01 и androidx.compose.material3:material3-common-desktop:1.0.0-alpha01 выпущены. Версия 1.0.0-alpha01 содержит эти коммиты .

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

Бестемные компоненты, которые можно использовать для создания компонентов Material Design:

Пакет адаптивной навигации Compose Material3, версия 1.0

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

1 мая 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07 выпущен. Версия 1.0.0-alpha07 содержит эти коммиты .

Изменения API

  • Сделать API-интерфейсы навигационного пакета неэкспериментальными ( If62af ).

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

  • Использовать вставки для контента по умолчанию ( 50266df )

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

17 апреля 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06 выпущен. Версия 1.0.0-alpha06 содержит эти коммиты .

Изменения API

  • containerColor и contentColor в NavigationSuiteScaffoldDefaults . ( I64e3a , б/331993720 )
  • Добавление функции itemColors в NavigationSuiteDefaults . ( Idf719 , б/328480012 )
  • Сделайте NavigationSuiteScope запечатанным. ( Иефа57 )

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

6 марта 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05 выпущен. Версия 1.0.0-alpha05 содержит эти коммиты .

Изменения API

  • Сделайте конструктор NavigationSuiteItemColors общедоступным. ( Ica83a , б/324886877 )

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

21 февраля 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04 выпущен. Версия 1.0.0-alpha04 содержит эти коммиты.

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

  • Обновите адаптивные зависимости Material3 для новых путей к модулям. ( Ibc421 )
  • Перейдите на использование версии классов размеров окон Window Manager. ( I3794d )

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

7 февраля 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03 выпущен. Версия 1.0.0-alpha03 содержит эти коммиты.

Изменения API

  • Обновить имя пакета до NavigationSuite из навигационного пакета ( I7eff7 )
  • Компоненты Material3, предоставляющие MutableInteractionSource в своем API, были обновлены и теперь предоставляют MutableInteractionSource с нулевым значением, значение которого по умолчанию равно нулю. Здесь нет никаких семантических изменений: передача null означает, что вы не хотите поднимать MutableInteractionSource , и при необходимости он будет создан внутри компонента. Изменение значения на null позволяет некоторым компонентам никогда не выделять MutableInteractionSource , а другим компонентам — только лениво создавать экземпляр, когда им это необходимо, что повышает производительность этих компонентов. Если вы не используете MutableInteractionSource который передаете этим компонентам, рекомендуется вместо этого передать значение null. Также рекомендуется внести аналогичные изменения в ваши собственные компоненты. ( I41abb , б / 298048146 )

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

13 декабря 2023 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02 выпущен. Версия 1.0.0-alpha02 содержит эти коммиты.

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

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

  • Исправлен компонент навигации, заполняющий весь экран, когда корневая поверхность имеет modifier.fillMaxSize . ( c9cf250 , б/312664933 )

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

15 ноября 2023 г.

Выпущен androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

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

Compose Material3 Адаптивная версия 1.0

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

7 февраля 2024 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha06 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06 выпущены. Версия 1.0.0-alpha06 содержит эти коммиты.

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

  • Добавлены дополнительные параметры поведения для обратной навигации ThreePaneScaffoldNavigator . ( I858aa )
  • В историю навигации добавлен дополнительный контент пункта назначения. ( Ibd7e6 )

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

24 января 2024 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha05 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05 выпущены. Версия 1.0.0-alpha05 содержит эти коммиты.

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

  • Поддержка учета истории в навигации по лесам и расчете значений ( I71d46 ).

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

10 января 2024 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha04 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04 выпущены. Версия 1.0.0-alpha04 содержит эти коммиты.

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

  • Добавлена ​​поддержка от края до края в каркасах панелей ( I1b462 ).

Изменения API

  • Свойства границ шарниров в Posture перенесены в список информации о шарнирах ( I24f90 ).

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

  • Исправление AnimatedPane не перекомпоновывается ( c3f573d )

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

13 декабря 2023 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha03 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03 выпущены. Версия 1.0.0-alpha03 содержит эти коммиты.

Изменения API

  • Измените роли скаффолда на псевдонимы ThreePaneScaffoldRole . ( I65bd1 )
  • Создайте базовый класс для ролей scaffold ( I4784d ).
  • Удалите ненужный параметр из содержимого AnimatedPane ( Ibc73b ).
  • Переименовывает collectWindowSizeAsState и вместо этого возвращает необработанные значения ( I480f4 )

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

29 ноября 2023 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha02 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02 выпущены. Версия 1.0.0-alpha02 содержит эти коммиты.

Изменения API

  • Отделите API навигации от API адаптивных шаблонов. ( Ic4045 )
  • Удалите класс GutterSize . ( I785b3 )

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

  • Панели исправлений не переключаются, когда AnimatedPane не используется ( d88f181 ).

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

15 ноября 2023 г.

Выпущен androidx.compose.material3:material3-adaptive:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

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

API адаптивных условий Material3:

API-интерфейсы директивы адаптивной панели Material3:

API-интерфейсы адаптивной панели Material3:

Создать материал3 версия 1.4

Версия 1.4.0-альфа08

12 февраля 2025 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha08 . Версия 1.4.0-alpha08 содержит эти коммиты .

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

  • Добавлен API TimePickerDialog , который можно использовать для TimePicker , TimeInput или иметь переключаемую версию. ( Id2d83 )

  • Новые API панели поиска:

    • Свернутые панели поиска и расширенные «представления» поиска теперь являются отдельными компонентами.
    • SearchBar представляет панель поиска в свернутом состоянии.
    • ExpandedFullScreenSearchBar и ExpandedDockedSearchBar представляют панель поиска в развернутом состоянии. Они открываются в новом окне.
    • SearchBarState для управления состоянием панели поиска.
    • TopSearchBar для добавления обработки вставок и поведения прокрутки.
    • Новая перегрузка InputField , которая использует SearchBarState ( Ie0723 , b/261496232 , b/283311462 , b/350916229 , b/352872248 ).

Изменения API

  • Поддержка изменения формы углов кнопок со значками при нажатии. ( I21843 )
  • API-интерфейсы декоратора текстового поля/окна оформления больше не являются экспериментальными. ( I31d95 )
  • Добавлены образцы и значения по умолчанию для подключенного варианта для ButtonGroup . ( I5c8ce )
  • Сделайте параметр состояния последним в NavigationSuiteScaffold и NavigationSuiteScaffoldLayout . ( I9cc7b )

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

  • В FloatingToolbars добавлены настраиваемые действия по обеспечению специальных возможностей, поэтому службы специальных возможностей теперь могут разворачивать или сворачивать все варианты FloatingToolbar . Версия с FAB применяет это к FAB, а версия без FAB применяет это к основному контенту. ( I26420 )
  • FloatingToolbars теперь наблюдают за службой сенсорного исследования (например, TalkBack) и сохраняют панель инструментов развернутой и видимой всякий раз, когда служба включена. ( I02172 )
  • Исправлен сбой в индикаторах прогресса и загрузки, если в качестве прогресса передается Float.NaN . ( I4fa96 , б/352364576 )

Версия 1.4.0-альфа07

29 января 2025 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha07 . Версия 1.4.0-alpha07 содержит эти коммиты .

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

  • Добавлена ​​большая гибкость в настройке внешнего вида флажков с помощью нового API. Этот API предоставляет параметры Stroke, которые позволяют лучше контролировать отображение галочки и контура флажка. ( I65a88 )
  • Добавлен API TwoRowsTopAppBar , более настраиваемая альтернатива средним и большим панелям приложений для создания двухрядных верхних панелей приложений. Теперь разработчики могут контролировать содержимое заголовков и субтитров как в свернутом, так и в развернутом состоянии, с настраиваемой высотой для каждого состояния. ( I0be3c , б/306697446 , б/229134133 , б/268068946 )

Изменения API

  • Экспериментальный вариант BottomAppBar переименован в FlexibleBottomAppBar , что обеспечивает больший контроль над расположением и высотой содержимого. ( Iaa448 )
  • Обновите имя свойств в объекте по умолчанию «Группа кнопок» на CapitalCase . Обновите имя animateFraction , чтобы оно более точно соответствовало поведению, которое оно представляет. ( I545cd )
  • Добавление перегрузок для обычных кнопок, позволяющих создавать анимированные фигуры при нажатии. Добавлены кэшированные формы кнопок. ( I5ec20 )
  • Теперь вы можете контролировать, как FloatingToolbar с FAB реагирует на прокрутку, предоставляя FloatingToolbarScrollBehavior . Для панелей инструментов, расположенных вдоль центрального края (например, вверху или внизу по центру), мы рекомендуем использовать поведение прокрутки, чтобы скрыть весь компонент при прокрутке и сделать вид более чистым. Это также предотвращает смещение FAB от центра, что может произойти при использовании expanded флага для свертывания. ( I33f67 )
  • Обновляет экспериментальные API-интерфейсы TopAppBar для использования Alignment.Horizontal вместо пользовательского TopAppBarTitleAlignment при настройке выравнивания заголовка и подзаголовка. ( I70ca2 )
  • SliderState#onValueChange теперь общедоступен, чтобы предоставить пользователю больше контроля ( I104eb ).
  • Введите NavigationSuiteScaffoldState , чтобы обеспечить анимацию навигационного компонента. Также представьте перегрузки NavigationSuiteScaffold и NavigationSuiteScaffoldLayout у которых есть параметр состояния. ( I6a8c9 , б/328674235 )

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

  • Переместите классы IconButtonColors и IconToggleButtonColors из IconButtonDefaults.kt обратно в IconButton.kt . ( I3c233 )

Внешний вклад

  • SliderState#isDragging теперь общедоступен. ( I8458a )

Версия 1.4.0-альфа06

15 января 2025 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha06 . Версия 1.4.0-alpha06 содержит эти коммиты .

Изменение поведения

  • В группу вставок, которые компоненты «Материал» учитывают по умолчанию, добавлен displayCutout , чтобы избежать перекрытия содержимого с вырезом дисплея. Это изменение поведения, которое повлияет на поведение компонентов, поддерживающих вставки, вокруг выреза дисплея. Сюда входит значение по умолчанию параметра WindowInsets для компонентов Материала 3, поддерживающих вставки, а также значения WindowInsets указанные в объектах Defaults компонента как для Материала 2, так и для Материала 3. Если это изменение вызывает нежелательное поведение, вручную укажите параметр WindowInsets для каждого компонента. ( I43ee9 , б/362508045 )

Изменения API

  • Обновления API TopAppBar . Переименуйте средние и большие верхние панели приложений с подзаголовком в *FlexibleTopAppBar . Унифицированы варианты цвета в одну функцию TopAppBarDefault.topAppBarColors() и добавлен параметр цвета subtitle , который будет применяться к предоставленному составному субтитру ( I41b65 ).
  • Удалите API WideNavigationRailArrangement в пользу Arrangement.Vertical ( Id0341 ).
  • Добавьте новый VerticalSlider @Composable . ( I2bfba )
  • Добавьте новую дорожку @Composable , которая позволяет указывать собственные углы внешних дорожек и значки дорожек. ( I436a4 )
  • Обновите API плавающей панели инструментов, чтобы использовать объект FloatingToolbarColors вместо одного цвета контейнера. ( I9a054 )
  • Добавьте и используйте новую экспериментальную аннотацию ExperimentalMaterial3ComponentOverrideApi ( Ia1eaf ).
  • Modifier.indicatorLine теперь принимает форму текстового поля для обработки обрезки. ( I8c5f3 , б/380704151 )
  • Переименуйте экспериментальные функции FloatingAppBar в FloatingToolbar ( I1dbf8 ).
  • Добавлен новый floatingToolbarVerticalNestedScroll , который можно прикрепить к прокручиваемому контейнеру для обновления состояния расширения плавающей панели инструментов на основе движения прокрутки, пересекающего пороговое значение. ( I6d65f )
  • Представляем новый API для создания плавающей панели инструментов с прикрепленной плавающей кнопкой действия (FAB). API предоставляет гибкие возможности настройки, позволяющие расположить панель инструментов горизонтально или вертикально и разместить FAB в начале или конце панели инструментов. ( I9e350 )

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

  • Исправлена ​​проблема с доступностью Snackbar, из-за которой он объявлял о закрытии, когда TalkBack включен. ( /I9db53 )

Внешний вклад

  • Унифицированная подсказка BasicTooltip в Foundation и BasicTooltip/Tooltip в материале3. ( Ifc2e6 )

Версия 1.4.0-альфа05

12 декабря 2024 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha05 . Версия 1.4.0-alpha05 содержит эти коммиты .

Изменения API

  • Замените тип в значении WideNavigationRailState.current/target для перечисления для лучшей читаемости ( I2d6ab ).
  • SplitButton меняет Shape API с класса данных на класс для двоичной совместимости. ( I53812 )
  • Добавлен API всплывающей подсказки с параметром onDismissRequest , чтобы создатели могли решать, что произойдет, когда пользователь щелкнет за пределами всплывающей подсказки. Устаревший старый API, не содержащий этого нового параметра. ( I99aef )
  • Измените название opticalCentering на horizontalCenterOptically . Делаем модификатор внутренним. Замените параметр заполнения максимальным смещением начала и конца. ( I0b904 )
  • Измените WideNavigationRailState , чтобы оно имело текущее/целевое значение, удалите перечисления в пользу логических значений. ( Идфа29 , б/356039090 )
  • Добавьте NavigationBarItemComponentOverride . ( I3a06a )

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

  • Исправьте поведение верхней и нижней панели приложений, чтобы надежно менять цвет при полной прокрутке контента. ( Idc4e8 , б/293665988 )
  • Функции поведения прокрутки для верхней и нижней панели приложений теперь возвращают запомненное поведение, чтобы лучше работать при рекомпозиции. ( I0fdbe , б/207957336 )
  • Параметр модификатора теперь применяется после внутренних модификаторов, таких как поведение перетаскивания и семантика, а не перед. Это влияет на порядок применения модификаторов. ( I8d83f )
  • Расширенный нижний лист остается расширенным при изменении размера. ( I2870b , б/324934884 )
  • Правильная маршрутизация флагов состояния и панели навигации для свойств Windows. ( Ie674d , б/362539765 )
  • Переместите параметр модификатора в корень шаблонов, как описано в документации. Это согласовывает реализацию с M2. ( I0235e , б/372311595 )

Внешний вклад

  • Обобщенная функция DatePickerDialog . ( I7dced )

Версия 1.4.0-альфа04

13 ноября 2024 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha04 . Версия 1.4.0-alpha04 содержит эти коммиты .

Изменения поведения

  • Вернуть изменения цвета, внесенные в aosp/3212478, в iconButtonColors , iconToggleButtonColors , outlinedIconButtonColors , outlinedIconToggleButtonColors и outlinedIconToggleButtonBorder . Теперь восстановленное поведение перемещено в новый набор функций под названием iconButtonVibrantColors и т. д., чтобы подчеркнуть возвращаемые высококонтрастные цвета. ( Iffd8d )

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

  • Представляем компонент VerticalDragHandle ( I6c770 )

Изменения API

  • Переименуйте DismissibleModalWideNavigationRailDefaults в ModalWideNavigationRailDefaults . ( I8e877 )
  • Добавьте NavigationBarComponentOverrides . ( I8a3f3 )
  • Добавьте NavigationRailComponentOverride . ( I83e13 )
  • Введите WideNavigationRailState для обработки свертывания/расширения рельса, разрешите скрытие ModalWideNavigationRail и удалите DismissibleModalWideNavigationRail . ( I88568 )
  • Добавьте значения по умолчанию для размера xSmall, medium, big и xLarge в значения по умолчанию для переключателя. ( Ie95d1 )
  • Добавьте значения размера xSmall, medium, big и xLarge по умолчанию в настройки кнопок по умолчанию. ( Если8b6d )

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

  • Цвет значка завершающего чипа фильтра был обновлен с Primary на OnSurfaceContainer в соответствии со спецификацией. Все цвета контуров чипов были обновлены с Outline до Outline Variant в зависимости от спецификации. ( I68bd4 )

Версия 1.4.0-альфа03

30 октября 2024 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha03 . Версия 1.4.0-alpha03 содержит эти коммиты .

Изменения API

  • Конструктор SheetState с плотностью устарел в пользу порогов положения и скорости. ( Ifd16e )
  • Добавлен rememberTooltipPositionProvider , содержащий обновленную логику позиционирования. Устарели rememberPlainTooltipPositionProvider и rememberRichTooltipPositionProvider . ( Ie66e2 )
  • Дополнительные ModalBottomSheetProperties позволяют настраивать цвета состояния и панели навигации. По умолчанию эти обновления основаны на цвете контента, а не на статусе темной темы системы. ( Ib874e , б/362539765 )
  • Улучшен ввод данных для выбора даты: в режиме ввода текстовое поле даты будет сфокусировано для немедленного ввода текста. Это изменение добавляет параметр requestFocus к DatePicker и DateRangePicker . Вы можете предотвратить фокусировку, передав false . ( I12d09 , б / 286399710 , б / 340102743 )
  • Кэширование формы по умолчанию в объекте Shape. Установка формы по умолчанию @Composable для кнопки переключения. Свертывание фигур в одну фигуру по умолчанию, поскольку варианты указывают на один и тот же файл токенов. ( Iaa014 )

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

  • Оптимизируйте поведение Scaffold contentPadding , чтобы избежать повторной компоновки содержимого тела при изменении contentPadding . ( I8c8e2 , б/373904168 )
  • progress TextFieldLabelScope переименован в labelMinimizedProgress
  • TextFieldLabelPosition Default переименован в Attached . Члены интерфейса были удалены. ( Если75c6 )
  • Исправлена ​​проблема с DatePicker в режиме ввода, из-за которой ошибки проверки могли привести к изменению высоты компонента. ( I2e229 , б / 280462363 )
  • Заставьте ползунок материала менять свое значение при нажатии клавиш управления. ( I1c442 )

Версия 1.4.0-альфа02

16 октября 2024 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha02 . Версия 1.4.0-alpha02 содержит эти коммиты .

Изменения API

  • Обновлены средства выбора даты для обеспечения единообразного использования Locale в DatePicker и DateRangePicker при настройке Locale непосредственно через DatePickerState или DateRangePickerState . Обратите внимание, что при настройке локалей непосредственно для состояния вы должны убедиться, что тексты заголовков и заголовков локализованы соответствующим образом, поскольку их текст по умолчанию по-прежнему будет применяться в соответствии с локалью платформы по умолчанию. ( I37073 , б / 326490763 , б / 321657276 )
  • SheetState.isAnimationRunning теперь доступен. ( I9a3d7 )
  • DatePickerColors теперь правильно имеет приоритет над любыми конфликтующими цветами, определенными в текстовых стилях Typography темы. Также обратите внимание, что это обновление корректирует положение параметра color в функциях выбора даты и вводит параметр contentColor для настройки цветов текста заголовка и заголовка. ( I30d03 , б/347031394 )
  • Переименуйте SplitButton в SplitButtonLayout и удалите API вариантов цвета SplitButton . Варианты будут получены путем повторного использования вариантов кнопок, предоставленных SplitButtonDefaults . ( I44c36 )
  • ModalBottomSheet теперь имеет sheetGestureEnabled ( I856cb , b/288211587 ).
  • standardMotionScheme и expressiveMotionScheme переименованы в стандартные и выразительные. Обе функции теперь доступны через сопутствующий объект MotionScheme путем вызова MotionScheme.standard() и MotionScheme.expressive() . ( Iceccf )
  • Добавление параметра maxWidth в простые и расширенные всплывающие подсказки. По умолчанию задано разрешение 200 dp для простых подсказок и 320 dp для расширенных подсказок. ( I30ce9 )

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

  • DatePicker и DateRangePicker теперь правильно обновляют отображаемый месяц, если он установлен через displayedMonthMillis их состояния. ( If9e47 , b/333414302 )
  • Содержимое ModalBottomSheet теперь перемещает содержимое из строки состояния. ( I5114c , б/321877275 , б/336962418 , б/342093067 )
  • [Нижний лист] Измените приоритет обратного обратного вызова на PRIORITY_DEFAULT , чтобы клавиатура IME могла закрываться первой. ( I447fb )
  • Исправлены сбои в DatePicker и DateRangePicker , когда минимальный выбираемый год установлен на будущий год. ( I78656 , б / 319395747 )
  • Исправлена ​​проблема с выбором даты для обновления пользовательского интерфейса при применении обновленного экземпляра SelectableDates . ( Иад59а , б/290135807 , б/339898760 )

Версия 1.4.0-альфа01

2 октября 2024 г.

Выпущен androidx.compose.material3:material3-*:1.4.0-alpha01 . Версия 1.4.0-alpha01 содержит эти коммиты .

Изменения поведения

  • Библиотека больше не добавляет зависимость к material-icons-core , поэтому, если ваш проект опирается на нее, вам придется явно добавить эту зависимость в файлы build.gradle[.kts] . ( I735ff , б/349894318 )
  • Цвет активной метки NavigationBarItem и NavigationRailItem меняется с onSurface на secondary , чтобы улучшить удобство использования, цветовой контраст и улучшить согласованность внутри системы ( Ibc297 ), чтобы вернуться к предыдущему поведению, скопируйте цвета по умолчанию и измените selectedTextColor на MaterialTheme.colorScheme.onSurface .
  • Компоненты Материала 3 теперь используют новую MotionScheme для определения своего движения. ( Ie0f93 )
  • Неопределенные круговые изменения движения индикатора прогресса ( I3c07e )
  • Обновите OutlinedIconButtonColors и OutlinedIconToggleButtonColors для улучшения цветового контраста. ( I2743d )
  • Обновлен цвет контейнера и содержимого для FilledIconToggleButtonColors и FilledTonalIconToggleButtonColors . ( Ic5d0f )
  • Цвет границы OutlinedButton обновлен с outline на outlineVariant . ( 057f00 )

Изменения API

  • В функцию enterAlwaysScrollBehavior TopAppBar добавлен необязательный reverseLayout для лучшей поддержки содержимого, установленного с reverseLayout . ( I4e0e5 )
  • SegmentedButton теперь поддерживает аргумент contentPadding . ( I5ad91 , б/358414376 )
  • PullToRefreshState больше не имеет реализации по умолчанию для isAnimating ( I6a593 ).
  • Добавлены новые перегрузки Material TextField и OutlinedTextField , использующие TextFieldState . Добавлены API-интерфейсы оформления, совместимые с TextFieldDecorator . ( Если13а1 )
  • Добавлен параметр для управления labelPosition текстового поля. Использование alwaysMinimize позволяет шаблону пользовательского интерфейса одновременно отображать метку и заполнитель в текстовом поле, даже если поле не находится в фокусе. ( I1ef2c )
  • Добавлены материалы SecureTextField и OutlinedSecureTextField для полей ввода пароля. ( I7e22d )
  • К меткам текстовых полей добавлена ​​область видимости для запроса хода анимации. ( Если5ec8 )
  • Добавляет поддержку MotionEvent.CLASSIFICATION_DEEP_PRESS во всплывающие подсказки. ( I62e6a )
  • isAfternoon TimePickerState теперь является расширением val вместо var в интерфейсе, переименованным в isPm ( I89a97 ).
  • Обновление класса типографики для поддержки выделенных масштабов шрифта. ( Ифа13с )
  • Добавлен API ModalWideNavigationRail и API ModalExpandedNavigationRail переименованы в DismissibleModalWideNavigationRail . ( Ic9118 )
  • Обновлен FloatingAppBarScrollBehavior для автоматического расчета screenOffset и не требуется @Composable . ( Idf349 )
  • Обновления API LoadingIndicator для исправления именования объекта по умолчанию. Добавлена ​​константа LoadingIndicatorElevation в PullToRefresh . ( I1d72b )
  • Обновления API LoadingIndicator для исправления именования объекта по умолчанию. Добавлена ​​константа LoadingIndicatorElevation в PullToRefresh . ( I1d72b )
  • Добавлены параметры amplitude и waveSpeed ​​к неопределенным вариантам LinearWavyProgressIndicator и CircularWavyProgressIndicator . ( I2a0c5 )
  • Поддержка изменения формы кнопки переключения значков в зависимости от ее нажатого или отмеченного состояния. ( Ibc781 )
  • Обновление класса типографики для поддержки выделенных масштабов шрифта. ( Ифа13с )
  • Форма SplitButton трансформируется в зависимости от состояния по умолчанию/нажатия. Удален API AnimatedTrailingButton , поскольку API TrailingButton может предлагать те же настройки ( I95066 ).
  • Добавьте модификатор для анимации отображения и скрытия FAB, например, при прокрутке контента. ( I8338d )
  • Добавление форм и интервалов связанных групп кнопок в ButtonGroupDefaults для использования в образце. ( I68e30 )
  • Кнопка разделения добавляет горизонтальное отступы для конечной кнопки и включает оптическое центрирование, рассчитанное на основе разницы в начальном и конечном углах ( I122e2 ).
  • Представляем новую MotionScheme материала, позволяющую задать схему движения компонента. Схема задается через MaterialTheme . ( ID50c2 )

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

  • Примените правильный индекс прохождения фокуса к дочерним компонентам Scaffold Composables. Порядок: topBar , bottomBar , Fab, Content, Snackbar. ( I5936b )
  • Исправлена ​​проблема в DatePicker и DateRangePicker , из-за которой в некоторых локалях и скелетонах формата некоторые элементы даты (например, названия месяцев) не начинались с заглавной буквы. ( I1430f )
  • Интеграция токенов компонентов FAB и FAB Menu (незначительные визуальные обновления отступов и текста) ( Ib57f3 ).
  • ModalBottomSheet теперь находится первым в порядке семантического обхода, за ним следует холст. ( I436f9 , б/358594665 )
  • Исправлена ​​ошибка, из-за которой нижняя панель приложения не исчезала полностью при прокрутке под навигационной панелью в режиме от края до края ( I3ee21 ).

Compose Material3 Версия 1.3

Версия 1.3.1

30 октября 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.1 . Версия 1.3.1 содержит эти коммиты .

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

  • DatePicker и DateRangePicker теперь правильно обновляют отображаемый месяц, если он установлен через displayedMonthMillis их состояния. ( If9e47 , b/333414302 )
  • Исправлены сбои в DatePicker и DateRangePicker , когда минимальный выбираемый год установлен на будущий год. ( I78656 , б / 319395747 )
  • Исправлена ​​проблема выбора даты для обновления пользовательского интерфейса при применении обновленного экземпляра SelectableDates . ( Иад59а , б/290135807 , б/339898760 )
  • Измените приоритет обратного обратного вызова, используемый нижними листами, на PRIORITY_DEFAULT , чтобы клавиатура IME могла закрываться первой. ( I447fb )

Версия 1.3.0

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

Выпущен androidx.compose.material3:material3-*:1.3.0 . Версия 1.3.0 содержит эти коммиты .

Важные изменения с версии 1.2.0

Основные особенности версии 1.3.0

Новый Material Design 3 компонента

  • Карусель
  • [ ModalBottomSheet ] теперь поддерживает функцию Predictive Back on U+ ( Iccf32 , b/281967264 , b/304850357 )
  • [ SearchBar ] теперь поддерживает функцию Predictive Back on U+ ( I657f8 ).
  • Nav Drawer ( ModalDrawerSheet и DismissibleDrawerSheet ) теперь поддерживает функцию Predictive Back on U+ в качестве опции ( Ie5b0b ).
  • DropdownMenu теперь поддерживает настраиваемый цвет, форму, высоту и границу. ( I8e981 , б/289554448 , б/301887035 , б/283654243 )
  • Обновлен слайдер для улучшения доступности за счет добавления индикатора пробела и остановки. ( I3058e )
  • Обновлен ProgressIndicator для улучшения доступности за счет добавления индикатора разрыва и остановки. ( I21451 )
  • Добавлена ​​каретка по умолчанию для расширенной всплывающей подсказки, поддерживается рисование пользовательской каретки с учетом привязки LayoutCoordinates . ( Ifd42c ) Критические изменения
  • Новые API обновления по запросу:
    • Упрощен PullToRefreshState для использования дробных значений вместо единиц Dp.
    • Состояние isRefreshing контролируется пользователем вместо PullToRefreshState .
    • Отделено вложенное соединение прокрутки от PullToRefreshState . Он обрабатывается новым PullToRefreshBox или Modifier.pullToRefresh .
    • Это обновление представляет собой радикальное изменение предыдущих экспериментальных API. ( I0adeb , b/314496282 , b/317177684 , b/323787138 , b/324573502 , b/317177683 ) Визуальные важные изменения
  • Обновите наложение состояния фокуса до значения 0,1f, чтобы обеспечить достаточный цветовой контраст. ( I7ea77 )
  • Небольшие изменения в цветах поверхности и фона по умолчанию в lightColorScheme и darkColorScheme . ( I9db52 )
  • Обновлены цвета слайдера и ProgressIndicator в соответствии с новыми спецификациями нетекстовой контрастности. ( I26807 )
  • Варианты SurfaceContainer теперь используются компонентами. Компоненты, которые формально рассчитывали цвет с помощью Surface и TonalElevation теперь по умолчанию используют роли SurfaceContainer , на которые не влияет повышение тона. ( б/304584161 )
  • Роли базовой линии поверхности и контейнера поверхности были немного скорректированы, что обеспечивает больше оттенков в светлых и темных темах. ( I677a5 )
  • Экспериментальные API переведены в стабильную версию!
  • Улучшения производительности

Версия 1.3.0-rc01

21 августа 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-rc01 . Версия 1.3.0-rc01 содержит эти коммиты .

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

  • ModalBottomSheet теперь находится первым в порядке семантического обхода, за ним следует холст. ( I436f9 , б/358594665 )

Версия 1.3.0-бета05

24 июля 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta05 . Версия 1.3.0-beta05 содержит эти коммиты .

  • Исправлена ​​проблема, из-за которой содержимое BottomSheet отсутствует или обрезается на Android N и O ( a10a2d ).
  • Увеличены семантические границы слайдера, чтобы TalkBack правильно отображал индикаторы фокуса вокруг больших пальцев. ( 0b5a1d )

Версия 1.3.0-beta04

26 июня 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta04 . Версия 1.3.0-beta04 содержит эти коммиты .

Версия 1.3.0-beta03

12 июня 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta03 . Версия 1.3.0-beta03 содержит эти коммиты .

Внешний вклад

  • Сделайте androidx.compose.material3.DropdownMenu доступным из общего набора исходных кодов. ( Если62c0 )

Версия 1.3.0-beta02

29 мая 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta02 . Версия 1.3.0-beta02 содержит эти коммиты .

Изменения API

  • Modifier.pullToRefreshIndicator поддерживает повышение прав, обновление API-интерфейсов Pull To Refresh, чтобы оно было логическим, а не лямбда-выражением. Поддержка выравнивания содержимого в PullToRefreshBox ( I75679 )
  • Создание TooltipScope запечатанного интерфейса и создание внутренней реализации для использования в TooltipBox и Label. ( I3833e )
  • В CarouselItemScope добавлены два новых модификатора — maskClip и maskBorder — для легкого добавления формы и границы к любому элементу карусели ( Id67a1 ).
  • TimePickerState теперь является интерфейсом и позволяет устанавливать время ( I88546 ).
  • Обновлен API для стилизации ссылок: TextLinkStyles перемещены в TextStyle и удалены TextDefaults из материала. ( I5477b )

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

  • Значки статуса ModalBottomSheet и панели навигации теперь реагируют на статус темной темы. ( Ie1fe7 , б/338342149 )
  • Добавлена ​​семантика закрытия листа в скрим ModalBottomSheet . ( 0e61cb , б/328801864 )

Внешний вклад

  • Сделайте androidx.compose.material3.AlertDialog доступным из общего исходного набора ( Ia33f5 ).
  • Сделать ModalBottomSheet доступным из общего набора исходных кодов ( Id7cc7 ).

Версия 1.3.0-бета01

14 мая 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta01 . Версия 1.3.0-beta01 содержит эти коммиты .

Изменения API

  • Использование DpSize вместо CaretProperties . Удаление CaretProperties . Переименуйте CaretScope в TooltipScope . ( Id9a76 )
  • Обновлен API для получения тематических ссылок Material в тексте. В частности, из TextDefaults удалены методы для создания тематических LinkAnnotations и анализа HTML с тематическими ссылками. Вместо этого добавлен класс TextLinkStyles , который позволяет стилизовать ссылки в качестве параметра составного текста. ( I31b93 )

Версия 1.3.0-альфа06

1 мая 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha06 . Версия 1.3.0-alpha06 содержит эти коммиты .

Критические изменения

  • Новые API обновления по запросу:

    • Упрощен PullToRefreshState для использования дробных значений вместо единиц Dp.
    • Состояние isRefreshing контролируется пользователем, а не PullToRefreshState .
    • Отделил вложенное соединение прокрутки от PullToRefreshState . Он обрабатывается новым PullToRefreshBox или Modifier.pullToRefresh .
    • Это обновление является нарушающим изменением предыдущих экспериментальных API. ( I0adeb , b/314496282 , b/317177684 , b/323787138 , b/324573502 , b/317177683 )

Изменения API

  • RippleConfiguration#isEnabled был удален, а LocalRippleConfiguration была сделана по общенациональному. Чтобы отключить пульсацию, вместо того, чтобы обеспечить RippleConfiguration с isEnabled = false , предоставьте null для LocalRippleConfiguration . ( I22725 )
  • ModalBottomSheet более точно рисует Scrim по строке состояния при включении Edge to Edge. Модальное содержание нижнего листа теперь может потреблять вставки в окне, что позволяет иметь видимый контент над навигационной панелью. ModalBottomSheet windowInsets переименованные в contentWindowInsets , чтобы указать, где будут применяться вставки, они больше не привязаны к логике окна. Тип contentWindowInsets был изменен на функцию, которая возвращает WindowInsets , чтобы разрешить его разрешено в своем новом окне. ( I39630 , b/274872542 , b/300280229 , b/290893168 )
  • PrimaryScrollableTabRow и SecondaryScrollableTabRow теперь используют пользовательский макет вместо субкомпозиции, что должно повысить производительность. ( I991e0 )
  • Текстовые ссылки получили опцию стилизации нажатого состояния в дополнение к обычному стилю, наведению курсора и фокусу. Каждый из методов TextDefaults получил аргумент pressedStyle , чтобы поддержать это. ( IC473F , B/139312671 )

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

  • Ящики навигационного ящика теперь соответствуют ширине drawerContent . ( IBC72F , B/245355396 )
  • OutlinedTextField Top Telectfield Top Padding для метки теперь учетные записи для размера шрифта системного шрифта. ( IDC781 )
  • Фиксированное местоположение упаковки CalendarLocale . ( IFA235 )
  • [Прогнозирующая обратная связь] Обновление прогнозной анимации обратной анимации для использования кривой интерполяции (0,1, 0,1, 0, 1) ( I2591A )

Версия 1.3.0-Alpha05

17 апреля 2024 г.

androidx.compose.material3:material3-*:1.3.0-alpha05 выпускается. Версия 1.3.0-Alpha05 содержит эти коммиты .

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

  • SearchBar и DockedSearchBar имеют новые перегрузки, которые принимают параметр текстового поля. Это позволяет стиливать текстовое поле отдельно от остальной части строки поиска, а также передавать пользовательские текстовые поля. Текстовое поле текущей реализации было доступно в качестве SearchBarDefaults.InputField . ( I50c73 , b/275074248 , b/278773336 , b/3266277700 )
  • Lambda drawTick был добавлен в публичный API, чтобы при необходимости настроить клещи ( I0C048 )

Изменения API

  • Текстовые ссылки получили вариант стиля состояния в дополнение к обычному стилю, завис и сфокусирован ( I5F864 , B/139312671 )
  • Обновлен CarouselItemInfo чтобы выставить прямой маски, который обрезается ( i785d8 )
  • Удален BasicTooltipState из материала 3 Public API. Его функциональность сочетается с TooltipState , пока BasicTooltip Foundation не стабилизирован. ( ICDA29 )
  • Добавлен объект TextDefaults , который содержит методы для построения строки LinkAnnotation и разбора HTML-меченной, которая применяет MaterialTheme к ссылкам ( I98532 , B/139312671 )
  • ExposedDropdownMenuBoxScope больше не разрешает подклассы. Раскрытые выпадающие меню теперь имеют MenuAnchorType , которые следует передавать в menuAnchor для поддержки лучшего A11Y. Это следует использовать вместо того, чтобы переносить focusable в ExposedDropdownMenu , который сейчас устарел. menuAnchor имеет новый параметр для контроля enabled состоянием. ( I55ee6 , b/257209915 , b/308840226 )
  • Исправлено цвет границы с OutlinedButton при отключении. Добавлена ButtonDefaults.outlinedButtonBorder("enabled") которая принимает включенное состояние. ( IE650B , B/318461363 )
  • Добавлен новый класс CarouselItemInfo , чтобы помочь клиентам получить информацию о размерах предметов. ( I9070c )
  • ColorScheme Constructor без поверхностных контейнеров теперь устарел. Пожалуйста, перейдите в конструктор, который включает в себя контейнеры поверхности. ( I35c11 )
  • [Outded] TextFieldDefaults ContainerBox переименован в Container . ( IE8D3B )

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

  • BottomSheetScaffold больше не будет прокручивать от вложенного прокрутки, если sheetSwipeEnabled является ложным. ( I5e1c1 , b/306464779 )
  • Удал некоторую аннотацию Optin ExperimentalMaterial3Api в IconButtonSamples.kt . ( I111d1 )

Версия 1.3.0-Alpha04

3 апреля 2024 г.

androidx.compose.material3:material3-*:1.3.0-alpha04 выпускается. Версия 1.3.0-Alpha04 содержит эти коммиты .

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

  • Добавлено две экспериментальные версии материала3 Карусель - HorizontalMultiBrowseCarousel и HorizontalUncontainedCarousel ( I88D64 )
  • Обновленная компона M3 NAV ящик ( ModalDrawerSheet and DismissibleDrawerSheet ), чтобы поддержать прогнозирование на U+ как Opt-In ( IE5B0B )
  • Добавлен новый API в значке, чтобы позволить проходить цветовой оттенок в качестве лямбды, чтобы избежать переоборудования. ( I5b5a2 )
  • Top API API -интерфейсы API теперь поддерживают пользовательские высоты как для фиксированных, так и для складных разделов. ( IB8B0C , B/323403446 )

Изменения API

  • Top API API -интерфейсы API теперь поддерживают пользовательские высоты как для фиксированных, так и для складных разделов. Исправлена ​​проблема, из-за которой однострочные лучшие приложения переоценили слишком много раз при прокрутке контента. Решено проблему, в которой усеченные заголовки MediumTopAppBar на устройствах с большими настройками шрифта/дисплея. ( IB8B0C , B/323403446 , B/300953236 , B/286296147 , B/330410290 , B/308540676 )
  • SegmentedButton и Associated API теперь стабильны ( I8A158 )
  • SwipeToDismissBox , SwipeToDismissBoxDefaults , SwipeToDismissBoxState и SwipeToDismissBoxValue теперь стабильны. ( I5f000 )
  • Удаленное устаревшее DismissDirection и DismissValue перечисления и API. ( I89ccd )
  • Добавлен экспериментальную метку в компаньон CarouselState Companion. ( I94154 )
  • Установите LocalMinimumInteractiveComponentEnforcement , введенный в локацию и ввел LocalMinimumInteractiveComponentSize для его замены. ( I7a7ac )
  • SearchBarColors Constructor в настоящее время публично. ( I769ca )
  • Добавлены параметр в SwipeToDismissBox gesturesEnabled . ( IDC59F , B/324170119 )
  • Удаленные API -интерфейсы текстового поля, которые были отмечены как устаревшие и экспериментальные. ( I1305f )

Версия 1.3.0-Alpha03

20 марта 2024 г.

androidx.compose.material3:material3-*:1.3.0-alpha03 выпускается. Версия 1.3.0-Alpha03 содержит эти коммиты .

Визуальные разбитые изменения

  • Обновите наложение состояния фокуса, чтобы быть 0,1F, чтобы обеспечить достаточный цветовой контраст. ( I7ea77 )
  • Небольшие настройки на поверхность и фоновый цвет по умолчанию в lightColorScheme и darkColorScheme . ( I9db52 )

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

  • Добавлены параметры для настройки ExposedDropdownMenu . В частности, в меню теперь есть focusable параметр ( true по умолчанию), который должен быть установлен на false при работе с редактируемыми текстовыми полями. ( I4184c , b/323694447 , b/278609042 )

Изменения API

  • Флаг ScaffoldSubcomposeInMeasureFix был удален. ( IE2A4B )
  • NavigationRailItemColors теперь помечен как @Immutable . ( If6112 , b/327660613 )
  • NavigationBarItemColors теперь помечен как @Immutable . ( I42a30 , b/298064514 )
  • Пересмотреть параметры в Slider Drack Composable. ( I9f315 )
  • ExposedDropdownMenu теперь реализован с использованием Popup . Поведение должно быть тем же, за исключением того, что фокусируемые меню с редактируемыми текстовыми полями могут быть отклонены при вводе на клавиатуре.

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

  • Подводные и поверхностные контейнер. ( I677a5 )
  • Обновленные цветы слайдера и ProgressIndicator , чтобы следовать новым не текстовым контрастным характеристикам. ( I26807 )
  • Обновите наложение состояния фокуса, чтобы быть 0,1F, чтобы обеспечить достаточный цветовой контраст. ( I7ea77 )
  • Небольшие настройки на поверхность и фоновый цвет по умолчанию в lightColorScheme и darkColorScheme . ( I9db52 )

Версия 1.3.0-Alpha02

6 марта 2024 г.

androidx.compose.material3:material3-*:1.3.0-alpha02 выпускается. Версия 1.3.0-Alpha02 содержит эти коммиты .

Изменения API

  • Снова сделай слайдер стабильно. Создание State.onValueChangeFinished . OnvalueChangefinafining Val. Обертывание onValueChangeFinished в rememberUpdatedState . ( I82ab2 , b/322269951 )
  • Навигационные компоненты теперь используют новые роли SurfaceContainer . В настоящее время DrawerDefaults предоставляют различные атрибуты standardContainerColor и modalContainerColor . DrawerDefaults.ModalDrawerElevation теперь 0.dp ( I7fbac )
  • Удаление @Stable из состояний Slider , так как мы меняем state.onValueChangeFinished . Onvaluechangefinefined в var . ( IED34A , B/322269951 )
  • Спецификация анимации ModalBottomSheet и StandardBottomSheet теперь является TweenSpec , обновленной из пружинной анимации. Это решает проблему с видимым перехватом. Установленные конструкторы SheetState без плотности теперь удалены. ( I7babc , b/285847707 )

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

  • Варианты SurfaceContainer теперь используются компонентами. Компоненты, которые формально рассчитывали цвет с поверхностью и TonalElevation в настоящее время используют роли SurfaceContainer по умолчанию, которые не влияют на тональную высоту. ( B/304584161 )
  • Исправлена ​​ошибка, которая вызвала невыбранное, отключенный цвет контейнера ElevatedFilterChip , чтобы быть черным. ( I400e6 , b/322407043 )
  • Исправить неопределенный индикатор прогресса, когда прогресс составляет 0 ( ID6582 )
  • Исправлена ​​проблема с Slider и RangeSlider на компоновке RTL ( IAB0E1 )
  • Добавление SliderRangeTolerance для расчета диапазона ползунка, так как поплавковое округление может быть неточным. ( IC918A , B/324934900 )
  • Убедитесь, что DatePickerDialog отображает свои кнопки при гнезде DateRangePicker или при отображении любого типа выбора даты на небольших экранах с большими шрифтами. ( IE4758 , B/325107799 , B/277768544 )
  • Menu теперь использует роль SurfaceContainer для цвета контейнеров. MenuDefaults.TonalElevation теперь 0.dp ( I135B7 )
  • TextField теперь использует самую высокую роль SurfaceContainerHighest для цвета контейнеров. ( I4dced )
  • Повышенные чипы теперь используют роль SurfaceContainerLow ( i7cd2f )
  • Цвет контейнера DatePicker теперь SurfaceContainerHigh . DatePickerDefaults.TonalElevation теперь 0.dp ( IDA753 )
  • Обновления нижних листов цвет контейнера и цвет ручки перетаскивания. ( I72a0a )
  • Цвет контейнера RichTooltip теперь SurfaceContainer . ( IA8B45 )
  • Цвет контейнера SearchBar теперь SurfaceContainerHighest . SearchBarDefaults.TonalElevation теперь 0.dp ( I88604 )
  • Обновления отключили и не выбранные треки/значки для использования верховой цветовой роли SurfaceContainerHighest . ( I7687a )
  • Цвет контейнера AlertDialog теперь SurfaceContainerHigh . ( IE0433 )
  • Цвет контейнера BottomAppBar теперь SurfaceContainer . TopAppBar onScroll Color теперь SurfaceContainer . ( I41630 )
  • Цвет контейнеров ElevatedCard теперь SurfaceContainerLow . Цвет контейнера FilledCard карты SurfaceContainerHighest . ( I35141 )
  • ElevatedButton комната контейнера теперь является SurfaceContainerLow . FilledIconButton , когда он не выбран теперь имеет цвет контейнера SurfaceContainerHighest . ( I792c9 )
  • Обновления TimePicker Container Color и Clock Dial Роль для SurfaceContainerHighest . ( I43b93 )

Версия 1.3.0-Alpha01

21 февраля 2024 г.

androidx.compose.material3:material3-*:1.3.0-alpha01 выпускается. Версия 1.3.0-Alpha01 содержит эти коммиты.

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

  • Обновление Compose M3 ModalBottomSheet для поддержки прогнозирования на U+ ( ICCF32 , B/281967264 , B/304850357 )
  • Обновленная Compose M3 SearchBar для поддержки Predictive обратно на u+ ( i657f8 )
  • Обновлен слайдер для улучшения доступности, добавив индикатор разрыва и остановки. ( I3058e )
  • Обновлено ProgressIndicator для улучшения доступности, добавив индикатор разрыва и остановки. ( I21451 )
  • Добавляя карету по умолчанию для богатого всплывающего подсказки, New Rich API для подсказки инструментов теперь позволяет нарисовать пользовательскую карету с учетом якоря LayoutCoordinates . ( Ifd42c )

Изменения поведения

  • Материальные компоненты были мигрированы, чтобы использовать новые Ripple API и больше не запросить RippleTheme .

Изменения API

  • Веселый drawStopIndicator в настоящее время является общедоступным. ( I3f59f )
  • Отметьте функцию formatWithSkeleton DatePicker в качестве внутренней ( IC65DC )
  • DropdownMenu теперь поддерживает пользовательский цвет, форму, высоту и границу. ( I8e981 , b/2895544448 , b/301887035 , b/283654243 )
  • Материал3 Компоненты, разоблачающие MutableInteractionSource в их API, были обновлены, чтобы теперь выявить нулевые MutableInteractionSource , которые по умолчанию по умолчанию в null . Здесь нет семантических изменений: передача NULL означает, что вы не хотите поднимать MutableInteractionSource , и он будет создан внутри компонента, если это необходимо. Изменение на NULL позволяет некоторым компонентам никогда не распределять MutableInteractionSource и позволяет другим компонентам только лениво создавать экземпляр, когда им необходимо, что повышает производительность в этих компонентах. Если вы не используете MutableInteractionSource которые вы передаете этим компонентам, рекомендуется вместо этого пройти NULL. Также рекомендуется внести аналогичные изменения в своих собственных компонентах. ( I41abb , b/298048146 )
  • Добавляет RippleConfiguration и LocalRippleConfiguration , чтобы обеспечить настройку рябовей с использованием фиксированных значений. Например, чтобы изменить цвет компонента, который вы не управляете, или отключить пульсацию для компонента. В большинстве случаев должны использоваться значения по умолчанию: эти API являются вытапленным люком для настройки отдельных компонентов / ограниченных под деревьев. Для более широких изменений и индивидуальных систем проектирования, вы должны вместо этого создать свою собственную Ripple, используя createRippleModifierNode . ( I7b5d6 , b/298048146 )
  • Добавляет новый API Ripple в Material3, который заменяет устаревшее rememberRipple . Also adds a temporary CompositionLocal , LocalUseFallbackRippleImplementation , to revert material3 components to using the deprecated rememberRipple / RippleTheme APIs. Это будет удалено в следующем стабильном выпуске и предназначено только для того, чтобы быть временной миграционной помощью для тех случаев, когда вы предоставляете пользовательскую RippleTheme . ( I34CBC , B/298048146 )

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

  • Удалена подкомпозиция внутри ModalBottomSheet для повышения производительности. Исправлена ​​проблема, в которой ModalBottomSheet мог потерпеть крах в определенных сценариях в сочетании с LookaheadScope . ( I2a198 )
  • Удалена подкомпозиция внутри BottomSheetScaffold для повышения производительности. Исправлена ​​проблема, в которой BottomSheetScaffold будет терпеть неудачу в определенных сценариях в сочетании с LookaheadScope . ( IE6401 )
  • Выравнивание значков корректируется, чтобы быть ближе к центру анкерного содержания по отношению к праву в верхнем правом углу. ( I18A28 )
  • Исправьте проблему A11Y с помощью DateRangePicker , где заголовок текста месяц-летнего текста был представлен как действующий на считыватель экрана, доступительно переключать и голосовой доступ. ( I2ac55 )
  • Исправлено mediumTopAppBarColors Param Order ошибка. ( Ibe64a )

Версия 1.2

Версия 1.2.1

6 марта 2024 г.

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

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

  • Сделайте повторные состояния слайдера снова. Создание State.onValueChangeFinished . OnvalueChangefinafining Val. Обертывание onValueChangeFinished в rememberUpdatedState . ( IE8FD0 , B/322269951 )
  • Удаление @Stable из состояний Slider , так как мы меняем state.onValueChangeFinished . Onvaluechangefinefined в var . ( I82ba1 , b/322269951 )
  • Исправьте NavigationBar пользовательские цвета, чтобы копировать по умолчанию. ( 80A779 , b/326894020 )
  • Исправьте регрессию в ExposedDropdownMenu чтобы снова сделать ее фокусировкой ( 3FCEC1 , B/323694447 )
  • Проблема с кнопкой кнопки кнопки кнопки ( 3E5BBC B/327371655 )

Версия 1.2.0

7 февраля 2024 г.

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

Известный вопрос

  • В PrimaryTabRow была представлена ​​ошибка рендеринга взаимодействия с представлением, как часть изменения повышения производительности. Обходной путь состоит в том, чтобы использовать TabRow с TabRowDefaults.PrimaryIndicator

Важные изменения с 1.1.0

Новый дизайн материала 3 компоненты

Улучшения для существующих компонентов дизайна материала 3.

Продвижение экспериментальных API до стабильной!

Улучшение производительности

Версия 1.2.0-RC01

24 января 2024 г.

androidx.compose.material3:material3-*:1.2.0-rc01 выпускается. Версия 1.2.0-RC01 содержит эти коммиты.

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

  • Исправлено mediumTopAppBarColors Param Order ошибка. ( Ibe64a )
  • Исправлена ​​ошибка, представленная в 1.2.0-beta02 в CardDefaults.cardColors , которая не обновляла contentColor на основе значения параметра containerColor . ( IEE041 , B/319671246 )
  • Исправлена ​​ошибка в disabledContentColor представленную в 1.2.0-beta02 и добавлена ​​небольшая оптимизация. ( I6dda1 , b/318428829 )

Версия 1.2.0-бета02

10 января 2024 г.

androidx.compose.material3:material3-*:1.2.0-beta02 выпускается. Версия 1.2.0-бета02 содержит эти коммиты.

Известная ошибка

  • Ошибка в IconButtonColors по умолчанию назначит disabledContentColor в альфа (0,38F) LocalContentColor вместо указанного пользователя contentColor . Обходной путь состоит в том, чтобы явно установить disabledContentColor . Это будет исправлено в следующем выпуске.

Изменения API

  • Добавление возможностей для включения подсказки для подсказок для простых API Tooltip . ( IBF767 )
  • SwipeToDismissState , rememberSwipeToDismiss и SwipeToDismissValue все переименованы в то, чтобы иметь _SwipeToDismissBox_ . ( I68d6d )

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

  • Фиксированное значение окончательного значения ListItem для соответствия спецификации. ( IBD68B , B/305342674 )
  • Цвет сброса для изложенной карты теперь правильно отображается с OutlineVariant . ( I75480 , b/310979715 )
  • Динамический цвет теперь вытягивает из системы, определенных цветовыми ролями. Это улучшает контраст для доступного контента и более тесно выравнивает динамический цвет с спецификацией материала. ( I1de96 )
  • Исправлена ModalBottomSheet Back обработка на Android T/13+, когда android:enableOnBackInvokedCallback="true" . ( I728dc , b/306196110 )

Версия 1.2.0-бета01

13 декабря 2023 г.

androidx.compose.material3:material3-*:1.2.0-beta01 выпускается. Версия 1.2.0-бета01 содержит эти коммиты.

Изменения API

  • Mark TabIndicatorScope как экспериментальный. ( I45c88 )
  • Удаление устаревших экспериментальных API для подъема инструментов. ( I438cb )
  • Измените новые перегрузки TabRow чтобы не использовать подкомпозиции. Это приводит к другому способу создания индикаторов TabRow с предоставленными пользовательскими модификаторами. ( IFE741 )
  • Установите DismissDirection и DismissValue API. Они были объединены с SwipeToDismissValue , чьи значения указывают как положение, так и направление SwipeToDismissBox . DismissState.progress теперь отмечается как FloatRange от 0.0 до 1.0 . DismissState устарела и конструктор теперь удалены. Компонент SwipeToDismiss , государство и дефолт объект были отмечены как экспериментальные. ( IB54F2 )

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

  • Индикатор по умолчанию для PullToRefresh теперь является открытой стрелкой вместо твердого треугольника. ( I67be3 )

Версия 1.2.0-Альфа12

29 ноября 2023 г.

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

Изменения API

  • RangeSlider теперь принимает диапазон Kotlin (например, 0f..1f ) вместо пользовательского класса значений FloatRange . SnapFlingBehavior.kt теперь также использует диапазон Kotlin. ( I025CB )
  • Марк модификатор Factory функционирует как @Stable . ( IB109F )

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

15 ноября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha11 выпускается. Версия 1.2.0-альфа11 содержит эти коммиты.

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

  • Реализует PullToRefreshContainer и PullToRefreshState , которые вместе обеспечивают притяжение, чтобы обновить реализацию в Material3. ( I16456 , B/261760718 )

Изменения API

  • Отметьте SwipeToDismissBox DismissDirection и DismissValue как экспериментальное. ( I517b0 )
  • Переименовать SwipeToDismiss в SwipeToDismissBox . Переименовать background до backgroundContent и dismissContent в следующий content Lambda. ( I7f4d3 )
  • Сделайте конструктор для ChipElevation и SelectableChipElevation Public. ( IE0C48 , B/308432421 )
  • Добавление ModalBottomSheetProperties . Перемещение securePolicy в ModalBottomSheetProperties . Добавление isFocusable и shouldDismissOnBackPress в ModalBottomSheetProperties . Эти новые логины помогают определить, как модальный нижний лист должен обрабатывать события IME. ( IEA56F , B/278216859 )
  • Обновленные состояния RangeSlider и Slider для удаления initialOnValueChange , начальных префиксов и соответствующих KDOC. ( I57d30 )
  • Умолете класс ChipBorder и связанные с ним функциональные вызовы, вместо этого рекомендуйте использовать BorderStroke . ( I89cc2 )
  • Фонд подсказки инструментов теперь @ExperimentalFoundationApi . ( I30b0b )
  • TabRow и ScrollableTabRow больше не устаревают. Новые первичные и вторичные варианты отмечены как экспериментальные. ( I0def6 )
  • Фильтр и входные чипы теперь используют BorderStroke напрямую. ( I07a8d )
  • SegmentedButton теперь использует BorderStroke напрямую. ( I89b9b )
  • Переименован в общей функции AlertDialog в BasicAlertDialog и выпустите предыдущую функцию. ( Idbe52 )
  • Переименовать APIS SwipeToDismiss в SwipeDismiss и содействовать новым APIS SwipeDismiss до стабильного. ( I14cbe )
  • Добавление tonalElevation и shadowElevation к API -интерфейсам для выявления инструментов. Кроме того, перемещение API -интерфейсов TooltipBox , PlainTooltip и RichTooltip обратно в экспериментальные, так как они были случайно выпущены как стабильные. ( If0f66 , b/293939035 )
  • Содействовать экспериментальным API -интерфейсам к стабильному. ( IEA2C3 )
  • Удалил аннотацию @ExperimentalMaterial3Api из Material3 Clickable Cards. ( I88dbf )

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

  • Исправлена ​​проблема, в которой SwipeToDismiss потерпел крушение в определенных сценариях с вложенными лайкейками и ленивыми макетами. ( ICA8D1 , B/297226562 )

Версия 1.2.0-Альфа10

18 октября 2023 г.

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

Изменения API

  • Продвигание Badge и BadgedBox до стабильной. ( I67F16 , B/261565132 )
  • Добавление securePolicy в качестве параметра в ModalBottomSheet , поэтому пользователи могут определить поведение для WindowManager.LayoutParams.FLAG_SECURE . ( ICDAC8 , B/296250262 )
  • Добавлены новые перегрузки LinearProgressIndicator и CircularProgressIndicator которые занимаются progress как лямбда. Они должны быть более эффективными, чем предыдущие версии. ( I824E6 , B/295616656 )
  • Переименование StandardSizeClasses в AllSizeClasses . ( I8cb07 )
  • Объедините функции расчета классов размера окна. ( IAD935 )

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

  • Исправьте сбой DatePicker , когда быстро нажимает на кнопки стрелка навигации, когда отображаемый месяц находится на краю допустимого диапазона лет. ( I46f36 , b/290954897 , b/297002119 )
  • [NAV RAIL/BAR] Поддержка прозрачного цвета для индикатора. ( IE0A9B , B/267289987 )

Версия 1.2.0-Alpha09

4 октября 2023 г.

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

Изменения API

  • Мигрировал ModalNavigationDrawer и DismissibleNavigationDrawer для использования новых AnchoredDraggable API. Animateto's animateTo DrawerState была заменена на открытые и близкие методы, а смещение теперь выставлено как плавание вместо объекта состояния. Вы можете получить доступ к смещению непосредственно через currentOffset . ( I0a72c )
  • Неособочные функции были добавлены для создания DatePickerState и DateRangePickerState напрямую. Эти функции могут использоваться в качестве альтернативы композиционным функциям rememberDatePickerState и rememberDateRangePickerState , когда это необходимо. ( I70326 , b/291524052 )
  • Исправленные и прокручиваемые TabRows теперь имеют первичные и вторичные варианты. Они правильно сопоставляются с поведением цвета и индикатора, как определено в материале3.
  • PrimaryScrollableTabRow и SecondaryScrollableTabRow теперь обнажают состояние прокрутки. ( IEC8F5 , B/260572337 )
  • Добавление нового параметра sheetMaxWidth , который разработчики могут установить, чтобы указать максимальную ширину, которую будет охватывать лист. DP.UNPACIFIFITED может быть передан для параметра, если желателен лист, который охватывает всю ширину экрана. ( IFB7C9 , B/266697696 )
  • Добавление API -интерфейсов PlainTooltipBox и RichTooltipBox в качестве устаревших методов. ( I246fa )

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

  • Исправьте сбой, когда инициализируется DatePicker с помощью DatePickerFormatter , у которого есть определенные скелеты даты, которые остаются прежними при преобразовании на сегодняшний день (например, YY). ( I01F29 )

Версия 1.2.0-Alpha08

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

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

Поведение нарушение изменения

  • ColorScheme в настоящее время неизменен, что делает индивидуальные обновления цвета менее эффективными, но делает более распространенное использование цветов более эффективными. Причина этого изменения заключается в том, что большинство приложений не будут обновлять отдельные цвета в качестве основного варианта использования. Это все еще возможно, но оно будет перекомплектовать больше, чем раньше, в свою очередь, мы значительно уменьшаем количество подписок состояния по всему коду материала и повлияем на инициализацию и стоимость времени выполнения более стандартных вариантов использования. ( IC447D , B/297212873 )
  • Тональная высота больше не анимирует в разных состояниях взаимодействия в соответствии с спецификацией. ( ICDD12 )

Изменения API

  • Добавлен новый BottomAppBar , который принимает в качестве параметра BottomAppBarScrollBehavior , чтобы автоматически скрыть его при прокрутке контента. Также добавлен FabPosition.EndOverlay позволяя FAB накладываться на нижнюю панель приложений в каркасе вместо того, чтобы быть закрепленным над ним. ( IECB47 )
  • Добавлен простой компонент метки, который строится на вершине BasicTooltipBox , который не будет отклоняться при постукивании за пределы границ метки. ( I821f9 )

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

  • Удалили использование rememberSaveable для всплесков инструментов. ( Icc131 , б/299500338 )
  • Ввел временный флаг, чтобы контролировать, следует ли измерять каркасы во время измерения или во время размещения. По умолчанию это будет измерять в измерении. Если вы сталкиваетесь с проблемами с новым поведением, пожалуйста, подайте проблему. ( I0b354 )
  • Фиксированный горизонтальный край до края в BottomSheet используя правильное измерение для ширины экрана устройства. ( I1df0c , b/299058752 )
  • Исправлена ​​ошибка, в которой ModalBottomSheet не призывал onDismissedRequest при увольнении, сбиваясь на лист. ( IDFDD8 )

Версия 1.2.0-Alpha07

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

androidx.compose.material3:material3-*:1.2.0-alpha07 выпускается. Версия 1.2.0-Alpha07 содержит эти коммиты.

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

  • Поддержка иконки Auto-Mirror была добавлена ​​в compose material 1.6.0-alpha05 , пожалуйста, см. Примечания по выпуску для получения подробной информации о значках автоматического зеркала.

Изменения API

  • SliderState реализует DraggableState ( i9b116 )
  • Изменить форму, чтобы быть обязательным парамом. Переименовать position , чтобы index функцию вспомогательной. ( I34941 )
  • Обновляет формат DatePicker formatWithSkeleton , чтобы включить карту, которая используется в качестве кэша для улучшения производительности. ( I3195f )
  • Добавлен BasicTooltipBox в compose.foundation и обновлены PlainTooltipBox и RichTooltipBox для использования TooltipBox с новыми составными компонентами PlainTooltip и RichTooltip . ( I79e1d )

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

  • dynamicLightColorScheme и dynamicDarkColorScheme теперь возвращают более высокие цвета хромы для ролей поверхности и surfaceContainer . ( I5e901 )
  • Исправлена ​​проблема, в которой некоторые компоненты с использованием подкомпозиции (например, BottomSheetScaffold ) внутри каркаса внутри LookaheadScope пытались прочитать их размер слишком рано. ( I297b4 , i871f1 , b/295536718 )

Версия 1.2.0-Alpha06

23 августа 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha06 выпускается. Версия 1.2.0-Alpha06 содержит эти коммиты.

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

  • Фиксированное offset расчет DropdownMenu поэтому x смещения зависят исключительно от локального направления макета, и y -смещения больше не будут изменены, когда меню находится рядом с нижней частью экрана. ( ICCC74 , B/294103942 )
  • Фиксированное offset расчет DropdownMenu поэтому x смещения зависят исключительно от локального направления макета, и y -смещения больше не будут изменены, когда меню находится рядом с нижней частью экрана. ( IB87A2 , B/294103942 )

Версия 1.2.0-Alpha05

9 августа 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha05 выпускается. Версия 1.2.0-Alpha05 содержит эти коммиты.

Изменения API

  • Обновления в флажок и цветах TriStateCheckbox . CheckboxDefaults.colors() disabledUncheckedColor теперь только влияет на границу флажона. Специальные случаи, которые требуют от вас установить цвет внутреннего коробки при отключении и неконтролировании, требуется созданный настраиваемый экземпляр CheckboxColors с желаемыми значениями цвета. ( I77d17 , b/291943198 )

Версия 1.2.0-Alpha04

26 июля 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha04 выпускается. Версия 1.2.0-Alpha04 содержит эти коммиты.

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

  • Экспериментальная сегментированная кнопка API ( IFC8FB )
  • Разделители теперь имеют параметр для управления ориентацией для поддержки вертикальных разделителей. ( I4c899 , b/288438593 )

Изменения API

  • Мы перемещаем зависимость плотности на уровень компонентов. Это относится к следующим компонентам: SwipeToDismiss и листовые компоненты. Пожалуйста, используйте новую перегрузку, предоставленную там, где плотность является параметром. ( I1846E )
  • Дополнительные аннотации для указания разрешенных входов в композиции ( IEF234 )
  • Добавьте параметр значка в сегментированную кнопку, разделенную семантику, чтобы сегментированные кнопки можно было выбрать для реализации однопользования и под необходимыми для реализации многопользователя, с SelectableSegmentedButtonRow и ToggelableSegmentedButtonRow соответственно. ( I38740 )
  • Разделитель был переименован в HorizontalDivider . Добавлена ​​функциональность VerticalDivider . ( I5975c )
  • Измените использование ClosedFloatingPointRange для более легкого FloatRange веса в экспериментальном материале3 API, чтобы минимизировать автобоксинг. ( I4aab5 )
  • Добавлен новый стартовый выравнивание для FabPosition ( IB7AEA , B/170592777 )

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

  • ModalBottomSheet уважает направление локальной планировки. ( IB4F44 , B/285628622 )

Версия 1.2.0-Alpha03

21 июня 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha03 выпускается. Версия 1.2.0-Alpha03 содержит эти коммиты.

Изменения поведения

  • includeFontPadding теперь является false по умолчанию в типографии Материала 3. Стиль Typography lineHeight по умолчанию также был изменен на Trim.None и Alignment.Center TextStyle Проконсультируйтесь с документами API, если вы хотите настроить эти значения, и посмотрите пост в блоге для углубленного объяснения этих изменений. ( I6266f , icabc3 )

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

  • Добавлена ​​перегрузка для RangeSlider , которая является современной версией компонента. Созданный RangeSliderState , который содержит всю информацию для текущей активной дорожки, измерения компонентов RangeSlider и логики перетаскивания и жеста. ( I8c270 )
  • Поисковой панель теперь поддерживает тени через недавно добавленный параметр shadowElevation . ( IA5369 , B/271040353 )
  • ColorScheme теперь поддерживает новые роли SurfaceContainer .
  • Поверхностное тональное наложение теперь может быть отключено с помощью локальной композиции LocalTonalElevationEnabled . ( IC203C , B/277774590 )

Изменения API

  • Откройте конструкторы цветов компонентов. ( I8c4a6 )
  • Добавление фокусируемого параметра в обоих API -интерфейсов инструментов, чтобы разработчики могли иметь подсказку, потребляя сенсорные события или нет. Будьте осторожны, что это может сломать автоматическое обход. ( IE32D8 )
  • Оптимизированная доступность для производительности и распределения памяти. ( Iede48 )
  • Разоблачить DefaultSizeClasses и создавать StandardSizeClasses для WindowSizeClasses ( i91838 )
  • Изменить WindowWidth/HeightSizeClass на классы значений с плаванием ( IE686E )

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

  • Параметр contentWindowInsets от ContentWindowinsets теперь уважает потребляемые оконные вставки. Обратите внимание, что поведение контента на основе topBar и bottomBar остается неизменным, когда эти параметры предоставляются. ( I08B73 , B/264601542 )
  • Установите выравнивание центральной верхней панели приложений, чтобы убедиться, что длинный заголовок не отображает значки действия или значок навигации. ( I4369f , b/236994621 )
  • Положения вкладок теперь обеспечивают минимальную ширину содержания 24.dp. Это обеспечивает доступную сенсорную цель для индикаторов вкладок. ( ID8861 )
  • Динамические цветовые палитры из dynamicLightColorScheme и dynamicDarkColorScheme теперь поддерживают новые роли поверхности. ( I1252E )
  • Обновление выравнивания уведомлений о значке, чтобы не обрезать при столкновении с прабабушкой. ( IDF75A )

Версия 1.2.0-Alpha02

24 мая 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha02 выпускается. Версия 1.2.0-Alpha02 содержит эти коммиты.

Изменения API

  • Добавьте параметр Window Insets в ModalBottomSheet .
    • Scrim для ModalBottomSheet теперь может быть нарисован за панелью состояния с windowInsets установленным на ноль
    • Обновленная функциональность ModalBottomSheet по умолчанию, чтобы оставаться за пределами системных баров, включая навигацию
    • Обработка стержней состояния обеспечивается ручкой перетаскивания в режиме края к краю.
    • BottomSheetDefaults включает в себя оконные вставки для BottomSheetWindow . ( I31200 , b/274872542 , b/272973615 , b/2723344475, b/268432129 , b/275849044 , b/275486106 , b/268433162 )
  • Установите Indicator и добавьте Primary / SecondaryIndicator чтобы соответствовать спецификациям M3. PrimaryIndicator соответствует ширине контента вкладки, тогда как SecondaryIndicator охватывает полную доступную ширину. SecondaryIndicator эквивалентен ныне устаревшему Indicator и может быть прямой заменой. ( I27604 )
  • Добавлена ​​опция для прохождения в ScrollState при конструировании DropdownMenu или ExposedDropdownMenu для управления вертикальным состоянием прокрутки отображаемых пунктов меню. ( IA0734 , B/1853044441 )
  • Добавлена ​​перегрузка для Slider , которая является современной версией компонента. Создан SliderState , который содержит всю информацию для текущей активной дорожки, измерения компонентов Slider и логику перетаскивания и жеста. ( I124A5 )
  • Переименование Семантики isContainer в isTraversalGroup ( I121F6 )
  • Добавлены оптимизированный TextStyle.merge(...) с полным списком параметров. ( IAD234 , B/246961787 )
  • Сделанные интерфейсы TooltipState , RichTooltipState и PlainTooltipState . Добавлены RichTooltipStateImpl и PlainTooltipStateImpl для состояний по умолчанию. Добавлено remember*State функции для получения этих реализованных состояний. Removed TooltipSync in favor of an TooltipDefault.GlobalMutatorMutex . ( I7813d )
  • Updated the DatePickerColors to include additional customization options for the date picker divider, navigation, and text input fields colors. ( I1a685 , b/274626815 )
  • DatePickerState and the DateRangePickerState are now public interfaces with default implementations that can be retrieved by the rememberDatePickerState and rememberDateRangePickerState . ( I71c52 )
  • Removed the dateValidator from DatePicker and DateRangePicker and introduced a SelectableDates interface that can be set on the state to control which dates or years are selectable in the UI. ( Ic2fc6 )
  • TimePicker removed from stable API, further changes are expected in the state API ( I3f39a )
  • ModalBottomSheet moved to android only. ModalBottomSheet is not recommended for desktop use, and the functionality is not actively maintained. ( Ib3778 )

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

  • Fixed the AlertDialog dismiss action to appear below the confirm action when the actions stacked over each other to fit into the dialog's width. This fix aligns the implementation with the Material Design spec. ( I029de , b/235454277 )
  • Fixed bug in ListItem using incorrect padding for three-line items. ( I6e235 )
  • ModalBottomSheet now can display IME keyboard ( Idc508 , b/262140644 , b/268380384 , b/272483584 )

Version 1.2.0-alpha01

10 мая 2023 г.

androidx.compose.material3:material3:1.2.0-alpha01 and androidx.compose.material3:material3-window-size-class:1.2.0-alpha01 are released. Version 1.2.0-alpha01 contains these commits.

Версия 1.1

Version 1.1.2

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

androidx.compose.material3:material3:1.1.2 and androidx.compose.material3:material3-window-size-class:1.1.2 are released. Version 1.1.2 contains these commits.

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

  • Fixed modifier incorrectly being passed to two composables. ( b/282761472 )
  • Fixed TimePickerState returns incorrect hours when initialized with 23 hours. ( b/278242122 )
  • Fixed initial toggle state for noon and minute validation. ( b/269768197 , b/282790635 )
  • Fixed state.hour returning incorrect value for 11pm. ( b/282761472 , b/278242122 )

Version 1.1.1

21 июня 2023 г.

androidx.compose.material3:material3:1.1.1 and androidx.compose.material3:material3-window-size-class:1.1.1 are released. Version 1.1.1 contains these commits.

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

  • Adds call for ModalBottomSheet without windowInset param for binary compatibility. ( Ib7959 )
  • Add window insets parameter to ModalBottomSheet .
    • Scrim for ModalBottomSheet may now be drawn behind status bar with windowInsets set to zero
    • Updated default ModalBottomSheet functionality to stay outside of system bars including navigation
    • Status bar inset handling is provided by drag handle in edge-to-edge mode.
    • BottomSheetDefaults includes window insets for BottomSheetWindow . ( I31200 , b/274872542 , b/272973615 , b/272334475 , b/268432129 , b/275849044 , b/275486106 , b/268433162 )

Version 1.1.0

10 мая 2023 г.

androidx.compose.material3:material3:1.1.0 and androidx.compose.material3:material3-window-size-class:1.1.0 are released. Version 1.1.0 contains these commits.

Major features of 1.1.0

New Material Design 3 components

Enhancements to existing Material Design 3 components.

Promoted experimental APIs to stable!

Please see this blog post for more details!

Version 1.1.0-rc01

19 апреля 2023 г.

androidx.compose.material3:material3:1.1.0-rc01 and androidx.compose.material3:material3-window-size-class:1.1.0-rc01 are released. Version 1.1.0-rc01 contains these commits.

Изменения API

  • TimePicker removed from stable API, further changes are expected in the state API ( I3f39a )
  • ModalBottomSheet moved to android only. ModalBottomSheet is not recommended for desktop use, and the functionality is not actively maintained. ( Ib3778 )

Version 1.1.0-beta02

5 апреля 2023 г.

androidx.compose.material3:material3:1.1.0-beta02 and androidx.compose.material3:material3-window-size-class:1.1.0-beta02 are released. Version 1.1.0-beta02 contains these commits.

Изменения API

  • SheetState now has optional skipHiddenState parameter
  • rememberStandardBottomSheetState now has optional skipHiddenState parameter
  • BottomSheetScaffold now has a defined Hidden anchor, though it is disabled by default
  • SheetState.requireOffset documentation has been updated
  • BottomSheetDefaults.MinimizedShape has been renamed as BottomSheetDefaults.HiddenShape ( I839f4 , b/273870234 )

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

  • Do not switch the dial face from hour to minute when touch exploration is enabled. ( I717d0 )
  • ModalBottomSheet and BottomSheetScaffold drag handle semantics are now merged. ( I05afb )
  • BottomSheetScaffold modifier, containerColor and contentColor parameters now only affect content. ( I992cb )
  • BottomSheetScaffold nestedScroll for sheet content now implements flings. ( I992cb )

Version 1.1.0-beta01

22 марта 2023 года

androidx.compose.material3:material3:1.1.0-beta01 and androidx.compose.material3:material3-window-size-class:1.1.0-beta01 are released. Version 1.1.0-beta01 contains these commits.

Изменения API

  • Add layout type param to TimePicker composable. It allows to use different layouts, depending on the screen configuration ( Ia0e16 )
  • SearchBarDefaults has been marked as experimental. ( I65561 )
  • Added shadow elevation to BottomSheetScaffold ( I94e0f )
  • Added support for displaying the date pickers without the header part. API changes to allow passing a null headline when creating a date picker. You can now pass null headline, title, and showToggleMode = false in order to display a headless picker. ( Id3f3a , b/266132421 , b/267194809 )

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

  • Search bars now automatically clear focus when made inactive. ( I22a7c , b/261444487 )
  • Updated the DateRangePicker to allow selecting a range with the same date for its start and end. ( I16529 , b/272882497 )
  • Text fields now properly position their text elements when font size is smaller than expected. This may result in a few pixels change in your apps based on font settings and script. ( I8b8d0 )
  • Bottom sheet semantic actions now have labels. ( I277b0 )

Version 1.1.0-alpha08

8 марта 2023 г.

androidx.compose.material3:material3:1.1.0-alpha08 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha08 are released. Version 1.1.0-alpha08 contains these commits.

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

  • Added support for BottomSheetScaffold and BottomSheetScaffoldState . ( I063d4 )

Изменения API

  • Added functionality to the DatePickerState and the DateRangePickerState to allow setting dates after the initial creation of the state, as well as resetting selections by setting null timestamps. Setting dates manually should be made with caution, and the new setSelection function will throw an exception in case a provided date fails a precondition (see documentation). ( Ifa645 , b/268609314 , b/270427389 )
  • Rename Collapsed SheetValue to PartiallyExpanded to more accurately and flexibly depict behavior in this state. ( Ia1491 )
  • Updated ListItem parameter names to _content instead of _text. Default getters are now ReadOnlyComposables where relevant. ( I69a25 )
  • Graduate interactive Surface APIs from experimental. ( I90d59 , b/261561812 )

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

  • Fixed an issue where ModalBottomSheet 's HalfExpanded state was calculated incorrectly and the sheet would appear to be floating. ( I45e84 , b/268411386 )
  • Add confirmValueChange check to scrim tap for ModalBottomSheet . ( I2311a , b/270425759 )
  • Move semantic BottomSheet actions to drag handle. ( I158ba )
  • ModalBottomSheet now commands focus on launch, handles back button. ( I4d2ab )
  • ModalBottomSheet onDismissRequest is now also handled during nested scroll flings. ( I655c5 , b/268433166 )

Version 1.1.0-alpha07

22 февраля 2023 г.

androidx.compose.material3:material3:1.1.0-alpha07 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha07 are released. Version 1.1.0-alpha07 contains these commits.

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

  • Add a Time Input composable that works with rememberTimePickerState() , it follows the M3 spec for time input ( Ia4fab )
  • Added a Material 3 DateRangePicker API for selecting a range of dates. ( I7a6c3 , b/267194809 )
  • Added a Material 3 input mode support for selecting date ranges via the DateRangePicker API. ( Ifdbc4 )
  • Text field colors now allow customizing:
    • The input field and placeholder text colors based on focus and error state. The textColor parameter has been renamed to unfocusedTextColor , and placeholderColor has been renamed to unfocusedPlaceholderColor .
    • The container color for filled text fields based on error state with the new errorContainerColor param.
  • Exposed dropdown menu text field colors have been updated with parameters to support the new prefix and suffix API. ( I9c8b4 , b/254284181 , b/264766350 )

Изменения API

  • Reverting some Slider API versions and removing redundant Slider overloads that are covered by the new experimental Slider with custom thumb and track. Promoting RangeSlider to be stable. ( Ie8fbd )
  • Renamed defaultElevation to elevation in chip's elevation functions. ( I0f872 )
  • The following Material 3 text field APIs are no longer experimental: TextField , OutlinedTextField , textFieldWithLabelPadding , textFieldWithoutLabelPadding , outlinedTextFieldPadding . ( Ieb5c0 , b/261561819 )
  • TimePickers is24Hour uses system setting ( I18856 )
  • Removed experimental annotation from scaffold apis. ( Ibb51e , b/261565765 , b/261436953 )

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

  • ModalBottomSheet default shape is now always SheetDefaults.ExpandedShape . ( I0dfca )
  • Accessibility improvements for Material 3 DatePicker and DateRangePicker . ( I5087e )
  • Fix bug where max height constraint is propagated and may crash. ( I30d8c )
  • Removed semantic roles from clickable and selectable surfaces, updated components that used them to set roles using modifier.semantics ( I793d9 )

Version 1.1.0-alpha06

8 февраля 2023 г.

androidx.compose.material3:material3:1.1.0-alpha06 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha06 are released. Version 1.1.0-alpha06 contains these commits.

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

  • Text fields now support prefix and suffix text ( Ia8578 , b/179884561 )
  • Added a TimePicker function to show a time picker following the Material 3 spec, used in conjunction with TimePickerState and convenience method rememberTimePickerState ( I71910 )
  • A date input is now a display mode at the DatePicker . Added support for switching between date picker and date input modes. ( Ieeff7 )
  • Added API for RichTextTooltips . ( I58ef3 )
  • Modal bottom sheet implementation for Material 3, including ModalBottomSheet and ModalBottomSheetDefaults . Also introduces SheetState and rememberSheetState which can be used for future sheet components. ( I0853a , b/244189383 )

Изменения API

  • Stablize the API showSnackbar ( I195c2 , b/261424370 )
  • Stablize the APIs for assist chip and suggestion chip ( Ibb67b , b/261424370 )
  • Promotes ListItem , ListItemDefaults and ListItemColors API to non-experimental ( I7e7fa , b/261438882 )
  • Promoting SliderPositions , SliderDefaults.Thumb , and SliderDefaults.Track to stable and adding non-experimental Slider and RangeSlider APIs that contain custom thumbs and track. Also deprecating the previous Slider and RangeSlider APIs. ( Ie5ea6 , b/261566890 )
  • Made Modifier.tooltipAnchor() public, so devs can pass it to the anchor to indicate a tooltip should be displayed on long press. Updated PlainTooltipBox API to no longer make TooltipState nullable and now has a default. ( Ie2fb7 )
  • ProgressIndicatorDefaults.circularTrackColor has been marked @Composable for consistency. ( Id29cc )
  • Restored property getter LocalMinimuTouchTargetEnforcement and mark it as deprecated and redirect to LocalMinimumInteractiveComponentEnforcement . ( I60dd5 )

Version 1.1.0-alpha05

January 26, 2023

androidx.compose.material3:material3:1.1.0-alpha05 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha05 are released. Version 1.1.0-alpha05 contains these commits.

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

  • DatePickerDialog and accessibility support
  • Added Custom thumb and track to RangeSlider .

Dependency Updates

Version 1.1.0-alpha04

11 января 2023 г.

androidx.compose.material3:material3:1.1.0-alpha04 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha04 are released. Version 1.1.0-alpha04 contains these commits.

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

  • Initial DatePicker API for picking a single date via a calendar UI. This API is still undergoing changes. ( I722b9 )
  • Added support for plain tooltips via PlainTooltipBox . ( I0cdfb )
  • Search bar ( Iad128 )
  • SwipeToDismiss ( I458a8 , b/242889540 )

Изменения API

  • Added in IsContainer semantics property on Surfaces. This property will be used in a later change that determines traversal order based on the semantic meaning of elements such as surfaces. ( I63379 )
  • Mark navigation drawer related APIs as stable. ( Iab01e , b/261439597 )
  • Added a track color parameter for circular progress indicators, and a stroke cap parameter for both circular and linear progress indicators. ( Ie668c , b/216325962 , b/222964817 )
  • Больше возвращаемого типа, нуляемость устаревших функций ( IBF7B0 )
  • Add Modifier.minimumInteractiveComponentSize . It can be used to reserve at least 48.dp in size to disambiguate touch interactions if the element would measure smaller. ( I33f58 , b/258495559 )
  • Added experimental API for AlertDialog composable that has a content slot. ( Iec4a2 )

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

  • Progress for progress indicators is now properly bounded to its expected range. ( I8a7eb , b/262262727 )

Известный вопрос

  • При обновлении с androidx.compose.foundation:1.4.0-alpha03 до androidx.compose.foundation:1.4.0-alpha04 , вы можете испытать ошибку java.lang.NoSuchFieldError . Вот где о проблеме было сообщено Оргино. Исправление было отправлено и будет доступно в следующем обновлении Compose. В качестве обхода обновите свои библиотеки androidx.compose.material и androidx.compose.material3 до последней версии (1.1.0-ALPHA04) или понизите свой androidx.compose.foundation до 1.4.0-ALPHA03.

Version 1.1.0-alpha03

7 декабря 2022 г.

androidx.compose.material3:material3:1.1.0-alpha03 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha03 are released. Version 1.1.0-alpha03 contains these commits.

Изменения API

  • Переименованные consumedWindowInsets() для consumeWindowInsets() и withConsumedWindowInsets() в onConsumedWindowInsetsChanged() и сделали модификаторы публичными. ( IE44E1 )
  • Add new default content padding for text button with icon to use. ( I8f662 )
  • Added disabled colors for navigation bar and rail. ( Ia7892 , b/258867034 )
  • Добавлен модификатор API для запроса предков прокрутки информации. ( I2ba9d , b/203141462 )
  • Используется в Clickable , чтобы правильно отложить взаимодействие, когда жесты могут стать событиями прокрутки.
  • Исправленные Clickables неправильно задерживают рябь, когда используются внутри Scrollable ViewGroup .
  • Обновленные ящики и листы для правильной задержки прессы в случае, если жесты могут стать событиями прокрутки.

Dependency Updates

  • Compose UI and Compose Material now depend on Lifecycle 2.5.1. ( I05ab0 , b/258038814 )

Version 1.1.0-alpha02

9 ноября 2022 г.

androidx.compose.material3:material3:1.1.0-alpha02 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha02 are released. Version 1.1.0-alpha02 contains these commits.

Изменения API

  • awaitFirstDown and waitForUpOrCancellation now accept a PointerEventPass for greater flexibility (also fixes ExposedDropdownMenuBox showing a menu while scrolling).( I7579a , b/212091796 )
  • Added minLines parameter into material and material3 Text, TextField and OutlinedTextField which allows setting the minimum height of the component in terms of number of lines ( I4af1d )
  • Deprecate the TopAppBarDefaults smallTopAppBarColors function in favor of a new topAppBarColors function that should be used when creating a TopAppBar . ( Ie6cb9 )
  • Добавлены параметр minLines в BasicText и BasicTextField . Это позволяет устанавливать минимальную высоту этих композиционных товаров с точки зрения количества строк ( i24294 , b/122476634 )

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

  • Clip the content of a Material3 IconButton and IconToggleBotton to the component's state-layer shape (eg circular shape). ( I9da8f )
  • Updates Material3 Medium and Large top app bars to apply the same background color across their entire surface, and to allow setting overriding the default colors with transparent color values. ( I67659 , b/249688556 , b/250838918 )

Version 1.1.0-alpha01

24 октября 2022 г.

androidx.compose.material3:material3:1.1.0-alpha01 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha01 are released. Version 1.1.0-alpha01 contains these commits.

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

  • Fixes to the top app bar when title is applied with a TextStyle and a Brush. ( If667e )

Версия 1.0

Version 1.0.1

9 ноября 2022 г.

androidx.compose.material3:material3:1.0.1 and androidx.compose.material3:material3-window-size-class:1.0.1 are released. Version 1.0.1 contains these commits.

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

  • Updates Material3 Medium and Large top app bars to apply the same background color across their entire surface, and to allow setting overriding the default colors with transparent color values. ( I67659 , b/249688556 , b/250838918 )

Version 1.0.0

24 октября 2022 г.

androidx.compose.material3:material3:1.0.0 and androidx.compose.material3:material3-window-size-class:1.0.0 are released. Version 1.0.0 contains these commits.

Major features of 1.0.0

This is the first stable release of Compose Material 3!

Material Design 3 theming and Material You dynamic color

Material Design 3 components

Window Size Class

  • material3-window-size-class is a new library that provides support for window size classes: a set of opinionated viewport breakpoints for you to design, develop, and test resizable application layouts against. You can use calculateWindowSizeClass to retrieve a window size class instance, which you can use to determine how your UI should appear, such as showing a navigation rail instead of bottom navigation for larger window sizes. For more information and sample usage see the API reference documentation for WindowSizeClass .

  • Please see this blog post for more details!

Version 1.0.0-rc01

5 октября 2022 г.

androidx.compose.material3:material3:1.0.0-rc01 and androidx.compose.material3:material3-window-size-class:1.0.0-rc01 are released. Version 1.0.0-rc01 contains these commits.

Изменения API

Version 1.0.0-beta03

21 сентября 2022 г.

androidx.compose.material3:material3:1.0.0-beta03 and androidx.compose.material3:material3-window-size-class:1.0.0-beta03 are released. Version 1.0.0-beta03 contains these commits.

Изменения API

  • ExposedDropdownMenuDefaults now exposes a padding value for menu items. ( I34ee1 )
  • ExposedDropdownMenuBoxScope now has a Modifier.menuAnchor() modifier that should be passed to the text field for proper a11y behavior. ( I27fa3 )
  • Adding two overloaded methods for the current Slider API to allow users to pass in a thumb or track to populate the slider. ( I21c00 )

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

  • Updated dark theme color mapping for On Error Container to tone 90 ( Ic5612 )
  • Fix to allow setting a transparent background for small Material 3 top app bars. ( I645e2 , b/245575782 )

Version 1.0.0-beta02

7 сентября 2022 г.

androidx.compose.material3:material3:1.0.0-beta02 and androidx.compose.material3:material3-window-size-class:1.0.0-beta02 are released. Version 1.0.0-beta02 contains these commits.

Изменения API

  • Default components insets introduced in m3 components in beta01 version no longer account for IME insets.
  • Material3 Scaffold component now has a contentWindowInsets parameter, allowing to specify the amount of insets to handle for the content slot. ( Icf11a , b/243713323 )
  • Deprecates the experimental Material 3 SmallTopAppBar function and introduces an equivalent TopAppBar function. Please migrate your usage to the new one. ( I74404 , b/226918634 )
  • Adds control over the top app bar fling and snap behaviors. ( I15c81 )
  • Removes startIndent from Divider, moves color to last parameter. ( If7be2 )

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

  • Have Dialogs identify themselves to talkback users by announcing the word Dialog when they are displayed. ( I857ef )

Version 1.0.0-beta01

24 августа 2022 г.

androidx.compose.material3:material3:1.0.0-beta01 and androidx.compose.material3:material3-window-size-class:1.0.0-beta01 are released. Version 1.0.0-beta01 contains these commits.

Справочник по API

To see latest theming, component and other composables available check out the Compose Material 3 API reference overview .

Изменения API

  • Updated the Material 3 top app bar to snap into a fully collapsed to a fully extended state. Also, updated the TopAppBarDefaults behavior function to be Composables and provide default values for their top app bar state and animation spec. ( I642b3 )
  • Updated FAB component signatures to match surface API ( I3afaa )
  • Added insets Build-in support for Top app bars, drawers, navigation bar and rail. These components, when used separately or with Scaffold will automatically handle insets for developers. Note: This change doesn't add automatic handling of status bar icons and transparency of the status and navigation bars. Please, continue to do it manually to ensure the best edge-to-edge experience. ( I7e4e6 , b/183161866 )
  • Updated component defaults to reduce API surface for future flexibility and performance improvements. ( I31820 )
  • Reordered chip and navigation drawer sheet parameters to maintain consistency within the API ( I45d0b )
  • Removed startIndent from Divider and moved color to be the last parameter.( If7be2 )

Version 1.0.0-alpha16

10 августа 2022 г.

androidx.compose.material3:material3:1.0.0-alpha16 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha16 are released. Version 1.0.0-alpha16 contains these commits.

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

  • Support specifying a custom width on a navigation drawer. ( Ia7f10 )

Изменения API

  • Reorder Tab and Leading icon tab parameters to maintain consistency within the API ( Ie2637 )
  • Marked BadgeDefaults as experimental. ( I98ef3 )
  • Remove deprecated navigation drawer function. ( I4f2db )
  • Reorder Slider parameters in Material 3 to maintain consistency within the API ( I0aee7 )
  • Reorder NavigationBar and NavigationRail parameters to maintain consistency within the API ( I51cda )
  • Reorder parameters in Material 3 to maintain consistency across the API. ( If4ae1 )
  • Reorder Slider parameters in Material 3 to maintain consistency within the API ( I62673 )
  • Renamed icons parameter to actions to be consistent with top app bar ( Id75be )
  • Mark Badge and BadgedBox as experimental because the anchor alignment is still influx. ( I1712e , b/236524516 )
  • Change @ExperimentalMaterial3Api annotations on icon button variants to @OptIn ( I070b5 )
  • Separated a navigation drawer's content to its own composable to support specifying a custom width on it. ( Ia7f10 )
  • Removes Divider from MenuDefaults and TabDefaults ( I4e33c )

Version 1.0.0-alpha15

27 июля 2022 г.

androidx.compose.material3:material3:1.0.0-alpha15 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha15 are released. Version 1.0.0-alpha15 contains these commits.

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

Изменения API

  • Updates to the FilterChip and ElevatedFilterChip APIs to remove the selectedIcon slot and promote reusing the leadingIcon for displaying a selected state. ( Ie5dc2 )
  • Add scrim and outline variant color roles. ( Id6d54 )
  • Fix naming conventions for composable defaults. ( I62b27 )
  • Mark ListItemDefaults and ListItemColors as experimental. ( I1f3ec )
  • Changes to the top app bar API to better reflect the meaning of its state properties. Also, mark the top app bar API as experimental. ( Ic0ad8 )
  • Text selection colors have now been added to TextFieldColors for better discoverability. ( Iba1b8 )
  • Adding ButtonDefault.ButtonWithIconContentPadding to be used with buttons that contain an icon. ( I2bf9c )
  • Text fields have been marked as experimental to allow for more flexibility in future API changes. ( I127b5 )
  • Removed the @ExperimentalMaterial3Api annotation from the Checkbox function. ( I5eefc )
  • Removed the @ExperimentalMaterial3Api annotation from the RadioButton function. ( I17e2a )
  • Removed the @ExperimentalMaterial3Api annotation from the non-interactive Cards. ( I9bd49 )
  • Updates various component defaults objects to include colors, shapes etc. ( I96e11 )

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

  • Removed non-functioning trailing icons from input chip samples to avoid user confusion in the catalog app. ( I9846a )

Version 1.0.0-alpha14

29 июня 2022 г.

androidx.compose.material3:material3:1.0.0-alpha14 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha14 are released. Version 1.0.0-alpha14 contains these commits.

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

  • Added M3 list implementation, see the documentation for sample usage ( Id7a20 )

Изменения API

  • Change parameter name from values to value in RangeSlider ( I3b79a )
  • API changes to the InputChip implementation to support a selectable state per the Material Design spec. Additional support at the FilterChip colors for selected disabled state. ( I55244 , b/235792432 )
  • Add BottomAppBar default FAB ( Ida4c8 )
  • ColorScheme.surfaceColorAtElevation was added ( Id41af )
  • Интерфейсы в библиотеках Compose теперь созданы с использованием методов интерфейса JDK8 по умолчанию ( I5BCF1 )
  • WindowWidthSizeClass and WindowHeightSizeClass now implement Comparable, so they can be compared using operators (<, <=, >=, >) and other APIs. ( I747d0 )

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

  • Update badge sample to provide more meaningful content description. ( I10b9d )
  • Adds option to use the system font size to the Material 3 catalog's theme picker. ( I10605 )
  • Adds sample code for Badge and indeterminate progress indicators. ( I8fbe0 )

Version 1.0.0-alpha13

1 июня 2022 г.

androidx.compose.material3:material3:1.0.0-alpha13 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha13 are released. Version 1.0.0-alpha13 contains these commits.

Изменения API

  • Supports maintaining the top app bar position on configuration change. ( I10459 , b/216160958 )

Version 1.0.0-alpha12

18 мая 2022 г.

androidx.compose.material3:material3:1.0.0-alpha12 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha12 are released. Version 1.0.0-alpha12 contains these commits.

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

Version 1.0.0-alpha11

11 мая 2022 г.

androidx.compose.material3:material3:1.0.0-alpha11 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha11 are released. Version 1.0.0-alpha11 contains these commits.

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

  • Added RangeSlider to Material 3 ( I18e38 )
  • Adds Material3 AssistChip and InputChip support ( I0d25a )
  • Adds Material3 FilterChip and SuggestionChip support ( I9fdf3 )

Изменения API

  • Renamed TextFieldDefaults.BorderStroke composable that draws a border stroke in OutlinedTextField to TextFieldDefaults.BorderBox . ( I5f295 )
  • Switch m3 visual changes ( Iab30e )
  • Allow passing colors to the standard icon buttons. ( Ia2445 )

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

  • Add lint check to material3/Scaffold to ensure that the inner padding is used ( I72293 , b/226951418 )

Version 1.0.0-alpha10

20 апреля 2022 г.

androidx.compose.material3:material3:1.0.0-alpha10 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha10 are released. Version 1.0.0-alpha10 contains these commits.

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

  • material3-window-size-class is a new library that provides support for window size classes: a set of opinionated viewport breakpoints for you to design, develop, and test resizable application layouts against. You can use calculateWindowSizeClass to retrieve a window size class instance, which you can use to determine how your UI should appear, such as showing a navigation rail instead of bottom navigation for larger window sizes. For more information and sample usage see the API reference documentation for WindowSizeClass . For more information on window size class definitions, see the public guidance on supporting different screen sizes.

Изменения API

  • Adds default FAB elevation for BottomAppBar , removes trailing lambda from BottomAppBar with FAB. ( I92c47 )
  • Adds Material3 FilledIconButton , FilledTonalIconButton , and OutlinedIconButton . ( Ib2bda )
  • Updates Material 3 Snackbar API to accept color values for the optional action and dismiss-action. ( Ibe4b4 )
  • Partial consumption (down OR position) has been deprecated in PointerInputChange . You can use consume() to consume the change completely. You can use isConsumed to determine whether or not someone else has previously consumed the change.
  • PointerInputChange::copy() now always makes a shallow copy. It means that copies of PointerInputChange will be consumed once one of the copies is consumed. If you want to create an unbound PointerInputChange , use constructor instead. ( Ie6be4 , b/225669674 )
  • Changes to the Cards API to receive the container and content colors via a CardColors interface, and to support a disabled state for clickable cards. ( I927df )
  • The parameter backgroundColor has been renamed containerColor in Material 3 text fields for improved consistency with other components. ( I6fbd9 )

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

  • Updates to the standard IconButton to align it with the Material3 spec. ( I09eab )
  • Move the top bar height of material3 Scaffold into the padding passed to content, allowing the content to render underneath the top app bar. If the PaddingValues are ignored, then the content might be obscured by the top bar. ( I83cbc , b/217776202 )

Version 1.0.0-alpha09

6 апреля 2022 г.

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

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

  • Added Material 3 Switch API ( I2c3ad )

Изменения API

  • Added support for dropdown menus with text fields (aka 'exposed dropdown menus' or 'combo boxes'.) ( I1b832 )
  • Added shape parameter to MaterialTheme and Shape sub system. ( I37426 )
  • Added an expanded parameter to ExtendedFloatingActionButton to control whether the FAB is expanded or collapsed, with animations between each state. Added Extended FAB overload for extended FABs with trailing text for ExtendedFABs without icon. ( Iba7f1 )

Version 1.0.0-alpha08

23 марта 2022 г.

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

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

Изменения API

  • Add default divider for menu ( I01374 )
  • Added surfaceTint color parameter to ColorScheme class. ( I2f558 )

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

  • Fix at the Material3 Button to read its default text style value from the MaterialTheme. ( Ie62fc )

Version 1.0.0-alpha07

March 9, 2022

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

Изменения API

  • Updates to Material 3 Surface API that brings back the overloaded functions for clickable Surfaces, as well as adding a function to support selectable and toggleable Surfaces. ( I4bf18 )
  • LazyVerticalGrid and LazyHorizontalGrid are now stable. ( I307c0 )
  • LazyVerticalGrid/LazyHorizontalGrid and all related apis were moved into .grid subpackage. Please update your imports from androidx.compose.foundation.lazy to androidx.compose.foundation.lazy.grid. ( I2d446 )
  • Reverted previous change of relying solely on a View for WindowInsetsControllerCompat , and again require a Window which is required for managing some window flags. Deprecated ViewCompat.getWindowInsetsController in favor of WindowCompat.getInsetsController to ensure that the correct Window is used (such as if the View is in a dialog). ( I660ae , b/219572936 )
  • Added a new LazyVerticalGrid API to define cross axis sizes ( I17723 )

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

  • Updates to the Card API to follow changes at the Surface API ( I3c8b9 )

Version 1.0.0-alpha06

February 23, 2022

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

Изменения API

  • NavigationDrawerItem is added that represents a single destination within the drawers ( Ic396f , b/218286829 )
  • PermanentNavigationDrawer and DismissibleNavigationDrawer have been added as experimental APIs. Those are the drawers suitable well for large screen devices. ( I5f8ab , b/218286829 )
  • Adds Material 3 bottom app bar support ( Ic432a )
  • NavigationDrawer has been renamed to ModalNavigationDrawer ( I1807d , b/218286829 )
  • Added Material 3 Slider class and tokens ( I1ccee )
  • Added Tab implementation, see the documentation for sample usage ( Ie0146 )

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

  • Fixed an issue where the TalkBack screen reader linear navigation selected an empty top app bar title. ( Id4690 )
  • Added IconSize to FloatingActionButtonDefaults . ( Ia71cf )
  • Bug fix for hidden AlertDialog buttons when a long text is added with a LazyColumn . ( Ib2cc9 , b/216663029 )

Version 1.0.0-alpha05

9 февраля 2022 г.

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

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

Added Material Design 3 components

Изменения API

  • Deprecated Surface function that takes an onClick callback. Clickable surfaces should be created with an InteractionSource and a Modifier.clickable() . ( I211c6 )
  • Added pressed and focused elevation support for FAB. ( Ibb584 )
  • Changed the Surface API to receive an InteractionSource which allows controlling its appearance in different states. ( Iafbc8 )

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

Version 1.0.0-alpha04

26 января 2022 г.

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

Изменения API

  • Added NonRestartableComposable to methods that are overloads of existing methods without complex logic. This reduces compiler generated memoization checks (equals) for all parameters which are repeated in the inner function that is called. ( I90490 )
  • Added Material 3 divider. ( Ica5fc )
  • Mark the Checkbox and RadioButton with an experimental API annotation. ( Ie44bb )
  • Added support for Material 3 progress indicators. ( Iff232 , b/205023841 )

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

  • Update a disabled TextButton's container color to be transparent ( I6b248 , b/213339737 )

Version 1.0.0-alpha03

January 12, 2022

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

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

Dependency Updates

  • Now depends on Kotlin 1.6.10 .

Version 1.0.0-alpha02

1 декабря 2021 г.

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

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

  • Add support for checkbox and radiobutton.
  • Updated to be compatible with Kotlin 1.6.0

Изменения API

  • Remove drawer from Material 3's scaffold. ( I04f51 )
  • Adds Material 3 Checkbox support. ( Id5542 )
  • Adds Material 3 RadioButton support. ( I20334 )

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

  • Reduce IconButton ripple radius from 40dp to 20dp. ( I68bbe , b/206674345 )
  • Port string fast path for Text changes from compose.material ( I30b03 )
  • Fixed but that hardcoded button to always be enabled. ( Iea832 , b/205335456 )

Version 1.0.0-alpha01

27 октября 2021 г.

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

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

Material Design 3 theming and Material You dynamic color

Material Design 3 components

For more information, check out the Material Design 3 and Material You section in the Material Theming in Compose guide.