Составьте Материал 3

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

Структура

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

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

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

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

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

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

классный

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

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Котлин

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

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

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

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

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

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

Составьте Material3 Common Версия 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:

Составьте 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 , b/331993720 )
  • Добавление функции itemColors в NavigationSuiteDefaults . ( Idf719 , b/328480012 )
  • Сделайте NavigationSuiteScope герметичным. ( Iefa57 )

Версия 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 , b/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 )
  • Перейдите на использование версии классов размеров окон диспетчера окон. ( 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

  • Обновить имя пакета с navigation-suite на navigationsuite ( I7eff7 )
  • Компоненты Material3, предоставляющие MutableInteractionSource в своем API, были обновлены, чтобы теперь предоставлять MutableInteractionSource , допускающий значение null, который по умолчанию равен null. Здесь нет никаких семантических изменений: передача null означает, что вы не хотите поднимать MutableInteractionSource , и он будет создан внутри компонента при необходимости. Изменение на null позволяет некоторым компонентам никогда не выделять MutableInteractionSource , а другим компонентам разрешать лениво создавать экземпляр только тогда, когда им это нужно, что повышает производительность этих компонентов. Если вы не используете MutableInteractionSource который вы передаете этим компонентам, рекомендуется вместо этого передавать null. Также рекомендуется вносить аналогичные изменения в свои собственные компоненты. ( I41abb , b/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 содержит эти коммиты.

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

  • Добавьте NavigationSuiteType значением «Нет» ( If8cb1 , b/313688598 )

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

  • Исправлена ​​ошибка, из-за которой компонент навигации заполнял весь экран, если у корневой поверхности был modifier.fillMaxSize . ( c9cf250 , b/312664933 )

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

15 ноября 2023 г.

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

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

Составьте Материал3 Адаптивная Версия 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

  • Свойства границ шарнира перемещены в осанке в список информации о шарнире ( 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

  • Измените роли scaffold на псевдонимы 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-альфа15

20 мая 2025 г.

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

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

7 мая 2025 г.

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

Изменения API

  • Добавлен новый компонуемый элемент AppBarColumn , работающий так же, как AppBarRow , но для контента, размещенного в столбце. ( Iaf6bd )
  • Добавлено максимальное количество элементов в AppBarRow , это необходимо для корректной реализации спецификации материалов для верхних панелей приложений. ( I92ce4 )
  • Добавлен метод в TooltipScope для получения layoutCoordinates якоря. Метод drawCaret устарел, поскольку разработчики могут использовать этот новый метод для получения layoutCoordinates границ якоря и создания соответствующей формы, содержащей каретку. ( Ia2e12 , b/329470609 )
  • Добавлена ​​поддержка java.time для Date Pickers: введены перегрузки rememberDatePickerState/rememberDateRangePickerState , которые принимают объекты java.time (например, начальные LocalDate , YearMonth ). Также добавлены функции расширения для объектов состояния для получения/установки значений с использованием таких типов, как LocalDate и YearMonth . Требуется API 26+ или дешугаринг. ( I70f29 , b/266202516 , b/281859606 )
  • Добавить CenteredTrack composable, позволяющий использовать Slider с дорожкой, которая начинается от центра. ( I5b1d6 )

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

  • Улучшена производительность волнистых индикаторов прогресса: линейные типы теперь загружаются примерно на 8,5% быстрее и требуют примерно на 11% меньше выделений, в то время как круговые типы показывают существенное повышение скорости примерно на 47% и сокращение выделений примерно на 39%. ( I595d8 )

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

23 апреля 2025 г.

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

Изменения API

  • isAppearanceLightStatusBars и isAppearanceLightNavigationBars повторно введены в ModalBottomSheetProperties как параметры только для Android. ( Id4bc0 )
  • Добавьте компонуемый объект AppBarRow , который обрабатывает переполнение элементами, выходящими за его пределы. ( I742bd )
  • Обновление API DatePicker и DateRangePicker для запроса фокуса при переключении в режим ввода даты. Мы заменили булев параметр requestFocus на необязательный параметр focusRequester , который принимает FocusRequester . ( I14b69 )
  • Удалить модификатор и источник взаимодействия из кликабельных и переключаемых элементов по умолчанию. Вместо этого оставить это в качестве детали реализации. ( I95ed6 )
  • Обновлен ButtonGroup для перехода в раскрывающееся меню, если кнопок слишком много и они не помещаются на экране. ( I7b88b )

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

  • Bottomsheet теперь использует верхние отступы, если они меньше текущего смещения. Это позволяет пользователям предоставлять верхние отступы для расширенного поведения. BottomSheetDefaults.windowInsets теперь включает WindowInsets.safeDrawing.Top . ( I0ab67 , b/321877275 , b/336962418 , b/342093067 )
  • Включены анимации входа/выхода (затухание/скольжение) для начальных иконок/аватаров чипов и конечных иконок при их добавлении или удалении. Это в первую очередь выгодно для выбираемых чипов (фильтр, ввод), но применяется в целом. ( I9af21 )
  • Исправлено неправильное поведение RTL-слайдера, вызванное LookaheadScope . ( Ieb152 , b/408118041 )
  • Исправлен сбой нижней AppBar , связанный с прокруткой при скрытом системном пользовательском интерфейсе. ( Ic6140 , b/405996228 )

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

9 апреля 2025 г.

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

Изменения API

  • Удалены специфичные для Android параметры из ModalBottomSheetProperties ( Iab97f , b/362539765 )
  • Ввести функции перегрузки для размеров маркеров перетаскивания по умолчанию ( I0ed0d )
  • Добавить новые функции NavigationSuiteScaffold и NavigationSuiteScaffoldLayout для поддержки новых типов макетов и добавить поддержку необязательного содержимого основного действия. ( Ib262a , b/353144478 )
  • Устаревать Modifier.weight с параметром fill в ButtonGroup . Добавление версии без fill. ( Id32bb )
  • Переименуйте компоненты IconButton xSmall- и xLarge- по умолчанию, чтобы они отображали extra . ( Ib6e0f )
  • Добавьте новые функции NavigationSuite , NavigationSuiteItem и NavigationSuiteColors для поддержки новых типов макетов. ( I203d6 )
  • Добавьте новые NavigationSuiteTypes и добавьте новую функцию navigationSuiteType , которая включает эти варианты макета ( If68f9 )

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

  • ColorScheme.contentColorFor теперь сопоставляет surfaceDim с onSurface . ( I8891a )
  • Обновлена ​​реализация DateInputTextField для решения проблемы, при которой поле ввода не отражало программно установленную дату. ( I6c8d1 , b/401143451 )
  • Исправлен порядок фокусировки обратной связи для навигационной панели и широкой навигационной панели ( I6cf6f , b/407048224 )

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

26 марта 2025 г.

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

Изменения API

  • Обновите заглавные буквы для компонуемых свойств в объектах по умолчанию для кнопки и переключателя. Добавьте методы в ToggleButtonDefaults и ButtonDefaults для рекомендуемого отступа контента, форм, размера значка, интервала между значками и стиля текста в зависимости от высоты контейнера. ( Iea69e )
  • Удалены устаревшие экспериментальные функции и константы из FloatingToolbar . ( I8f339 )
  • Компоненты Elevation теперь имеют общий интерфейс и общедоступные конструкторы и свойства. ( Ibb172 )
  • Добавление модификатора animateWidth в ButtonGroupScope , который необходимо будет использовать с дочерними элементами группы кнопок для правильной анимации дочерних элементов. ( Ia3bb6 )

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

  • Исправлен отступ плавающей панели инструментов для обеспечения визуального баланса при сворачивании и улучшенной гибкости для большего содержимого. ( I06c00 )

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

12 марта 2025 г.

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

Изменения API

  • TabRowDefaults.tabIndicatorOffset устарел в пользу TabIndicatorScope.tabIndicatorOffset . ( Ib36b3 )
  • Исправлена ​​опечатка для небольшого отступа контента в настройках кнопок по умолчанию. ( I19bfe )
  • TabRow и ScrollableTabRow устарели в пользу Primary и Secondary вариантов каждого из них. Первичные и вторичные строки вкладок более производительны и соответствуют спецификации. ( I918e2 )
  • Добавлены rememberSliderState и rememberRangeSliderState . ( I8e384 )
  • Добавлен shouldAutoSnap в SliderState для управления механизмом автоматической привязки, отключение которого может быть полезно для пользовательских анимаций. ( I07745 )
  • Минимальная ширина прокручиваемой строки вкладок теперь является параметром. Варианты первичной и вторичной строк вкладок больше не являются экспериментальными. ( If6f15 , b/226665301 )
  • Сделал класс ExitAlwaysFloatingToolbarScrollBehavior открытым, что позволяет создавать объекты без композиции. ( Ibf31c )

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

26 февраля 2025 г.

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

Изменения API

  • Переименовать поля настроек DragHandle в состоянии по умолчанию; разделить состояния нажатия и перетаскивания; сделать размеры по умолчанию общедоступными. ( I787b9 )
  • Обновления API TowRowsTopAppBar . Удален expanded параметр лямбда и добавлены отдельные параметры для развернутой и свернутой высоты. ( Idd677 , b/306697446 , b/229134133 , b/268068946 )

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

  • Нижние панели приложений теперь отслеживают службу сенсорного исследования (например, TalkBack ) и остаются видимыми, когда служба включена. ( I4b34d )

Версия 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 , b/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 , b/306697446 , b/229134133 , b/268068946 )

Изменения API

  • Экспериментальный вариант BottomAppBar переименован в FlexibleBottomAppBar , что обеспечивает больший контроль над расположением и высотой содержимого. ( Iaa448 )
  • Обновите наименование свойств в объекте Button Group по умолчанию на CapitalCase . Обновите имя animateFraction , чтобы оно было более точным в отношении поведения, которое оно представляет. ( I545cd )
  • Добавление перегрузок для общих кнопок, которые позволяют анимированные формы при взаимодействии с нажатием. Добавлены кэшированные формы кнопок. ( I5ec20 )
  • Теперь вы можете управлять тем, как FloatingToolbar с FAB реагирует на прокрутку, предоставляя FloatingToolbarScrollBehavior . Для панелей инструментов, расположенных вдоль центрального края (например, сверху или снизу по центру), мы рекомендуем использовать поведение прокрутки, чтобы скрыть весь компонент при прокрутке для более чистого вида. Это также предотвращает смещение FAB от центра, что может произойти при использовании expanded флага для сворачивания. ( I33f67 )
  • Обновляет экспериментальные API TopAppBar для использования Alignment.Horizontal вместо пользовательского TopAppBarTitleAlignment при настройке выравнивания заголовка и подзаголовка. ( I70ca2 )
  • SliderState#onValueChange теперь является публичным, чтобы предоставить пользователю больше контроля ( I104eb )
  • Ввести NavigationSuiteScaffoldState для обеспечения анимации компонента навигации. Также ввести перегрузки NavigationSuiteScaffold и NavigationSuiteScaffoldLayout , которые имеют параметр состояния. ( I6a8c9 , b/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 в группу вставок, которые компоненты Material учитывают по умолчанию, чтобы избежать перекрытия содержимого с вырезом дисплея. Это изменение поведения повлияет на то, как компоненты, поддерживающие вставки, ведут себя вокруг выреза дисплея. Сюда входит значение по умолчанию параметра WindowInsets для компонентов Material 3, поддерживающих вставки, и значения WindowInsets предоставленные в объектах компонентов Defaults как для Material 2, так и для Material 3. Если это изменение вызывает нежелательное поведение, вручную укажите параметр WindowInsets для каждого компонента. ( I43ee9 , b/362508045 )

Изменения API

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

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

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

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

  • Унифицированный BasicTooltip в Foundation и BasicTooltip/Tooltip в Material3. ( 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 изменяет API Shape с класса данных на класс для обеспечения двоичной совместимости. ( I53812 )
  • Добавлен API подсказки с параметром onDismissRequest , чтобы создатели могли решать, что произойдет, если пользователь щелкнет за пределами подсказки. Устаревший API, не содержащий этого нового параметра, объявлен устаревшим. ( I99aef )
  • Измените название opticalCentering на horizontalCenterOptically . Сделайте модификатор внутренним. Замените параметр padding на максимальное начальное и конечное смещение. ( I0b904 )
  • Измените WideNavigationRailState так, чтобы он имел текущее/целевое значение, удалите перечисления в пользу логических значений. ( Idfa29 , b/356039090 )
  • Добавить NavigationBarItemComponentOverride . ( I3a06a )

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

  • Исправлено поведение верхней и нижней панели приложений для надежного изменения цвета при полной прокрутке контента. ( Idc4e8 , b/293665988 )
  • Функции поведения прокрутки для верхней и нижней панелей приложений теперь возвращают запомненное поведение для лучшей работы при рекомпозиции. ( I0fdbe , b/207957336 )
  • Параметр модификатора теперь применяется после внутренних модификаторов, таких как поведение перетаскивания и семантика, а не до них. Это влияет на порядок применения модификаторов. ( I8d83f )
  • Расширенный нижний лист остается расширенным при изменении размера. ( I2870b , b/324934884 )
  • Правильно направить флаги состояния и панели навигации для свойств Windows. ( Ie674d , b/362539765 )
  • Переместить параметр модификатора в корень scaffolds, как задокументировано. Это согласует реализацию с M2. ( I0235e , b/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, large и xLarge. ( Ie95d1 )
  • Добавьте значения по умолчанию для кнопок xSmall, medium, large и xLarge. ( If8b6d )

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

  • Цвет значка фильтра чипа был обновлен с 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 , b/362539765 )
  • Улучшен опыт ввода для выбора даты: в режиме ввода текстовое поле даты будет сфокусировано для немедленного ввода текста. Изменение добавляет параметр requestFocus к DatePicker и DateRangePicker . Вы можете предотвратить фокусировку, передав false . ( I12d09 , b/286399710 , b/340102743 )
  • Кэширование значений формы по умолчанию в объекте Shape. Создание значений формы по умолчанию @Composable для кнопки-переключателя. Сворачивание фигур в одну форму по умолчанию, поскольку варианты указывают на один и тот же файл токена. ( Iaa014 )

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

  • Оптимизируйте поведение Scaffold contentPadding , чтобы избежать постоянной перекомпоновки содержимого тела при изменении contentPadding . ( I8c8e2 , b/373904168 )
  • progress TextFieldLabelScope переименован в labelMinimizedProgress
  • TextFieldLabelPosition Default переименован в Attached . Члены интерфейса удалены. ( If75c6 )
  • Исправлена ​​проблема с DatePicker в режиме ввода, из-за которой ошибки проверки могли привести к изменению высоты компонента. ( I2e229 , b/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 . Обратите внимание, что при установке Locales напрямую в состояние вы должны убедиться, что тексты заголовка и заголовка локализованы соответствующим образом, поскольку их текст по умолчанию будет по-прежнему применяться в соответствии с Locale платформы по умолчанию. ( I37073 , b/326490763 , b/321657276 )
  • SheetState.isAnimationRunning теперь доступен. ( I9a3d7 )
  • DatePickerColors теперь правильно имеют приоритет над любыми конфликтующими цветами, определенными в текстовых стилях темы Typography. Также обратите внимание, что это обновление корректирует позицию параметра color в функциях выбора даты и вводит параметр contentColor для настройки цветов заголовка и текста заголовка. ( I30d03 , b/347031394 )
  • Переименуйте SplitButton в SplitButtonLayout и удалите API вариантов цвета SplitButton . Варианты будут получены путем повторного использования вариантов кнопок, предоставленных SplitButtonDefaults . ( I44c36 )
  • ModalBottomSheet теперь имеет параметр sheetGestureEnabled ( I856cb , b/288211587 )
  • Переименованы standardMotionScheme и expressiveMotionScheme в standard и expressive. Обе функции теперь доступны через сопутствующий объект MotionScheme , вызывая MotionScheme.standard() и MotionScheme.expressive() . ( Iceccf )
  • Добавление параметра maxWidth к простым и расширенным подсказкам. По умолчанию он соответствует спецификации дизайна 200 dp для простых подсказок и 320 dp для расширенной подсказки. ( I30ce9 )

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

  • DatePicker и DateRangePicker теперь корректно обновляют отображаемый месяц при установке через displayedMonthMillis их состояния. ( If9e47 , b/333414302 )
  • Содержимое ModalBottomSheet теперь перемещает содержимое из строки состояния. ( I5114c , b/321877275 , b/336962418 , b/342093067 )
  • [Нижний лист] Измените приоритет обратного вызова на PRIORITY_DEFAULT , чтобы разрешить клавиатуре IME сначала закрыть ее. ( I447fb )
  • Исправлены сбои в DatePicker и DateRangePicker , когда минимальный выбираемый год установлен на будущий год. ( I78656 , b/319395747 )
  • Исправлена ​​ошибка выбора даты для обновления пользовательского интерфейса при применении обновленного экземпляра SelectableDates . ( Iad59a , b/290135807 , b/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 , b/349894318 )
  • Цвет активной метки NavigationBarItem и NavigationRailItem изменяется с onSurface на secondary с целью повышения удобства использования, цветовой контрастности и улучшения согласованности в системе ( Ibc297 ). Чтобы вернуться к предыдущему поведению, скопируйте цвета по умолчанию и измените selectedTextColor на MaterialTheme.colorScheme.onSurface .
  • Компоненты Material 3 теперь используют новую MotionScheme для определения своего движения. ( Ie0f93 )
  • Неопределенные круговые изменения движения индикатора прогресса ( I3c07e )
  • Обновите OutlinedIconButtonColors и OutlinedIconToggleButtonColors для лучшего цветового контраста. ( I2743d )
  • Обновлен цвет контейнера и содержимого для FilledIconToggleButtonColors и FilledTonalIconToggleButtonColors . ( Ic5d0f )
  • Цвет границы OutlinedButton обновлен с outline на outlineVariant . ( 057f00 )

Изменения API

  • Добавлен необязательный параметр reverseLayout в функцию enterAlwaysScrollBehavior TopAppBar для лучшей поддержки контента, установленного с помощью reverseLayout . ( I4e0e5 )
  • SegmentedButton теперь поддерживает аргумент contentPadding . ( I5ad91 , b/358414376 )
  • PullToRefreshState больше не имеет реализации по умолчанию для isAnimating ( I6a593 )
  • Добавлены новые перегрузки Material TextField и OutlinedTextField , которые используют TextFieldState . Добавлены API декоративных блоков, совместимые с TextFieldDecorator . ( If13a1 )
  • Добавлен параметр для управления labelPosition текстового поля. Использование alwaysMinimize позволяет шаблону пользовательского интерфейса отображать метку и заполнитель в текстовом поле одновременно, даже если поле не сфокусировано. ( I1ef2c )
  • Добавлены Material SecureTextField и OutlinedSecureTextField для полей ввода пароля. ( I7e22d )
  • Добавлена ​​область действия для меток текстовых полей для запроса хода анимации. ( If5ec8 )
  • Добавляет поддержку MotionEvent.CLASSIFICATION_DEEP_PRESS к подсказкам. ( I62e6a )
  • isAfternoon для TimePickerState теперь является расширенным val вместо var в интерфейсе, переименованным в isPm ( I89a97 )
  • Обновление класса типографики для поддержки масштабов выделенных шрифтов. ( Ifa13c )
  • Добавлен 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 )
  • Обновление класса типографии для поддержки акцентированных шкал типов. ( IFA13C )
  • SplitButton Shape Morphs на основе состояния по умолчанию / нажатию. Удален AnimatedTrailingButton API, потому что API TrailingButton может предлагать такие же настройки ( I95066 )
  • Добавьте модификатор, чтобы анимировать показ и скрытие FAB, например, когда прокрутки контента. ( 18338d )
  • Добавление форм группы подключенных кнопок и расстояния в ButtonGroupDefaults для использования в образце. ( I68e30 )
  • Кнопка разделения добавить горизонтальную прокладку для кнопки с зацепленной кнопкой и включить оптическое центрирование, рассчитанное по исходным и конечным угловым различиям ( I122E2 )
  • Представляем новый материал MotionScheme , позволяющий установить схему для движения компонента. Схема устанавливается через MaterialTheme . ( ID50C2 )

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

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

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

Версия 1.3.2

9 апреля 2025 г.

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

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

  • ListItem исправляет свой внутренний расчет высоты, теперь оставляя соответствующее количество места в макете.
  • Удалить лишнюю NavigationBarItem метку, правильно выровнять со спецификацией.
  • Исправляет макет TabRow в режиме RTL.

Версия 1.3.1

30 октября 2024 г.

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

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

  • DatePicker и DateRangePicker теперь правильно обновляют отображаемый месяц при установке через displayedMonthMillis их штата. ( If9e47 , b/333414302 )
  • Исправьте сбои в DatePicker и DateRangePicker , когда минимально выбираемый год будет установлен в будущем году. ( I78656 , B/319395747 )
  • Исправьте проблему с пикером даты для обновления пользовательского интерфейса, когда применяется обновленный экземпляр SelectableDates . ( IAD59A , B/290135807 , B/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

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

  • Карусель
  • [ ModalBottomSheet ] теперь поддерживает прогнозирование на U+ ( ICCF32 , B/281967264 , B/304850357 )
  • [ SearchBar ] теперь поддерживает прогнозирование на u+ ( i657f8 )
  • Ядерный ящик ( ModalDrawerSheet and DismissibleDrawerSheet ) теперь поддерживает прогнозирование на U+ как Opt-In ( IE5B0B )
  • DropdownMenu теперь поддерживает пользовательский цвет, форму, высоту и границу. ( I8e981 , b/2895544448 , b/301887035 , b/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 по умолчанию, которые не влияют на тональную высоту. ( B/304584161 )
  • Подводные и поверхностные контейнер. ( I677a5 )
  • Продвижение экспериментальных API до стабильной!
  • Улучшение производительности

Версия 1.3.0-rc01

21 августа 2024 г.

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

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

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

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

24 июля 2024 г.

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

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

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

26 июня 2024 г.

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

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

12 июня 2024 г.

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

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

  • Сделайте androidx.compose.material3.DropdownMenu доступен из общего исходного набора. ( If62c0 )

Версия 1.3.0-beta02

29 мая 2024 г.

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

Изменения API

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

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

  • Статус ModalBottomSheet и значки бара NAV теперь реагируют на статус темной темы. ( IE1FE7 , B/338342149 )
  • Добавлена ​​Семантика закрытия листа в ModalBottomSheet Scrim. ( 0E61CB , B/328801864 )

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

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

Версия 1.3.0-beta01

14 мая 2024 г.

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

Изменения API

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

Версия 1.3.0-Alpha06

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-альфа04

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-альфа03

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-альфа02

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-альфа01

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 )

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

  • Удалена подкомпозиция внутри 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-beta02

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-beta01

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. DrawerState 's animateTo Challestate была заменена на открытые и близкие методы, а смещение теперь выставлено как плавание вместо объекта состояния. Вы можете получить доступ к смещению непосредственно через 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 , B/299500338 )
  • Ввел временный флаг, чтобы контролировать, следует ли измерять каркасы во время измерения или во время размещения. По умолчанию это будет измерять в измерении. Если вы сталкиваетесь с проблемами с новым поведением, пожалуйста, подайте проблему. ( I0b354 )
  • Фиксированный горизонтальный край до края в BottomSheet , используя правильное измерение для ширины экрана устройства. ( I1df0c , b/299058752 )
  • Fixed a bug where ModalBottomSheet was not calling onDismissedRequest when dismissing it by swiping down on the sheet. ( Idfdd8 )

Версия 1.2.0-Alpha07

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

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

  • Auto-mirror icons support has been added in compose material 1.6.0-alpha05 , please see the release notes for details on auto-mirror icons.

Изменения API

  • SliderState implements DraggableState ( I9b116 )
  • Change shape to be a required param. Rename position to index in shape helper function. ( I34941 )
  • Updates the DatePicker formatWithSkeleton to include a map that is used as a cache for performance improvements. ( I3195f )
  • Added BasicTooltipBox to compose.foundation and updated PlainTooltipBox and RichTooltipBox to use TooltipBox with new PlainTooltip and RichTooltip composables. ( I79e1d )

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

  • dynamicLightColorScheme and dynamicDarkColorScheme now return higher chroma colors for surface and surfaceContainer roles. ( I5e901 )
  • Fixed an issue where some components using Subcomposition (eg BottomSheetScaffold ) inside a Scaffold inside a LookaheadScope were attempting to read their size too early. ( I297b4 , I871f1 , b/295536718 )

Версия 1.2.0-Alpha06

23 августа 2023 г.

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

  • Fixed DropdownMenu 's offset calculation so x offsets depend solely on the local layout direction, and y offsets will no longer be reversed when the menu is near the bottom of the screen. ( Iccc74 , b/294103942 )
  • Fixed DropdownMenu 's offset calculation so x offsets depend solely on the local layout direction, and y offsets will no longer be reversed when the menu is near the bottom of the screen. ( Ib87a2 , b/294103942 )

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

9 августа 2023 г.

Изменения API

  • Updates to the Checkbox and TriStateCheckbox colors. The CheckboxDefaults.colors() disabledUncheckedColor now only affects the border of the checkbox. Special cases that require you to set the internal box color when disabled and unchecked requires a custom constructed instance of a CheckboxColors with the desired color values. ( I77d17 , b/291943198 )

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

26 июля 2023 г.

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

  • Experimental Segmented Button API ( Ifc8fb )
  • Dividers now have a parameter to control orientation to support vertical dividers. ( I4c899 , b/288438593 )

Изменения API

  • We are moving the density dependency to the component level. This applies to the following components: SwipeToDismiss and Sheet based components. Please use the new overload provided where density is a parameter. ( I1846e )
  • Additional annotations to specify allowed inputs to composables ( Ief234 )
  • Add an icon parameter to segmented button, split semantics so that segmented buttons can be selectable to implement single-select, and toggleable to implement multi-select, with SelectableSegmentedButtonRow and ToggelableSegmentedButtonRow respectively. ( I38740 )
  • Divider has been renamed to HorizontalDivider . Added VerticalDivider functionality. ( I5975c )
  • Change the use of ClosedFloatingPointRange for the lighter weight FloatRange in experimental Material3 APIs to minimize autoboxing. ( I4aab5 )
  • Added new Start alignment for FabPosition ( Ib7aea , b/170592777 )

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

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

21 июня 2023 г.

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

  • includeFontPadding is now false by default in Material 3 typography. The default line height style has also been changed to Trim.None and Alignment.Center , and explicit lineHeight (in sp) have been added to the TextStyle s of Typography . Consult the API docs if you want to customize these values, and see the blog post for an in-depth explainer of these changes. ( I6266f , Icabc3 )

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

  • Added an overload for RangeSlider that is a stateful version of the component. Created RangeSliderState that holds all of the information for the current active track, the measurements of the components of the RangeSlider , and the drag and gesture logic. ( I8c270 )
  • Search bar now supports shadows via the newly added shadowElevation parameter. ( Ia5369 , b/271040353 )
  • ColorScheme now supports new SurfaceContainer roles .
  • Surface tonal elevation overlay can now be disabled with the LocalTonalElevationEnabled composition local. ( Ic203c , b/277774590 )

Изменения API

  • Open the component colors constructors. ( I8c4a6 )
  • Adding focusable parameter to both tooltip APIs, so that developers can have the tooltip consume touch events or not. Be cautious that this might break accessibility focus automatic traversal. ( Ie32d8 )
  • Optimized accessibility for performance and memory allocations. ( Iede48 )
  • Expose DefaultSizeClasses and create StandardSizeClasses for WindowSizeClasses ( I91838 )
  • change WindowWidth/HeightSizeClass to float value classes ( Ie686e )

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

  • Scaffold's contentWindowInsets parameter now respects consumed window insets. Note that the behavior of content padding based on topBar and bottomBar remains unchanged when these parameters are provided. ( I08b73 , b/264601542 )
  • Fix the alignment of the center top app bar to ensure that a long title doesn't render over the action icons or the navigation icon. ( I4369f , b/236994621 )
  • Tab positions now enforce a minimum content width of 24.dp. This provides an accessible touch target for tab indicators. ( Id8861 )
  • Dynamic color palettes from dynamicLightColorScheme and dynamicDarkColorScheme now support new surface roles. ( I1252e )
  • Updating the badge notification alignment to not clip when colliding with great grandparent. ( Idf75a )

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

24 мая 2023 г.

Изменения API

  • 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 )
  • Deprecate Indicator and add Primary / SecondaryIndicator to match the M3 specs. PrimaryIndicator matches the width of the tab's content whereas SecondaryIndicator spans the full available width. SecondaryIndicator is equivalent to the now deprecated Indicator and can be a direct replacement. ( I27604 )
  • Added an option to pass in a ScrollState when constructing a DropdownMenu or an ExposedDropdownMenu for controlling the vertical scroll state of the displayed menu items. ( Ia0734 , b/185304441 )
  • Added an overload for Slider that is a stateful version of the component. Created SliderState that holds all of the information for the current active track, the measurements of the components of the Slider , and the drag and gesture logic. ( I124a5 )
  • Renaming the Semantics property isContainer to isTraversalGroup ( I121f6 )
  • Added optimized TextStyle.merge(...) with full parameter list. ( Iad234 , b/246961787 )
  • Made TooltipState , RichTooltipState , and PlainTooltipState public interfaces. Added RichTooltipStateImpl and PlainTooltipStateImpl for default states. Added remember*State functions to obtain these implemented states. 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 )

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

10 мая 2023 г.

Версия 1.1

Версия 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 )

Версия 1.1.1

21 июня 2023 г.

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

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

Версия 1.1.0

10 мая 2023 г.

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!

Версия 1.1.0-rc01

19 апреля 2023 г.

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

Версия 1.1.0-beta02

5 апреля 2023 г.

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

Версия 1.1.0-beta01

22 марта 2023 г.

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

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

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 )

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

8 февраля 2023 г.

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

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

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

January 26, 2023

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

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

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

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

11 января 2023 г.

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

  • 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 )
  • More return type nullability of deprecated-hidden functions ( 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 )

Known Issue

  • When updating from androidx.compose.foundation:1.4.0-alpha03 to androidx.compose.foundation:1.4.0-alpha04 , you might experience a java.lang.NoSuchFieldError error. Here is where the issue was orginially reported. A fix has been submitted, and will be available on the next Compose update. As a work around, update your androidx.compose.material and androidx.compose.material3 libraries to the latest version(1.1.0-alpha04) or downgrade your androidx.compose.foundation to 1.4.0-alpha03.

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

7 декабря 2022 г.

Изменения API

  • Renamed consumedWindowInsets() to consumeWindowInsets() and withConsumedWindowInsets() to onConsumedWindowInsetsChanged() and made the Modifiers public. ( 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 )
  • Added an Modifier API to query ancestors scroll info. ( I2ba9d , b/203141462 )
  • Used in Clickable to correctly delay press interactions, when gestures could become scroll events.
  • Fixed Clickables not correctly delaying ripples, when used inside an Scrollable ViewGroup .
  • Updated Drawers and Sheets to correctly delay presses in case gestures can become scroll events.

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

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

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

9 ноября 2022 г.

Изменения 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 )
  • Added minLines parameter to the BasicText and BasicTextField . It allows to set the minimum height of these composables in terms of number of lines ( 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 )

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

24 октября 2022 г.

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

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

Версия 1.0

Версия 1.0.1

9 ноября 2022 г.

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

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

Версия 1.0.0

24 октября 2022 г.

Основные особенности 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!

Версия 1.0.0-rc01

5 октября 2022 года

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

Версия 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 )

Версия 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 )

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

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 )

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

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 )

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

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 )

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

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 )

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

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 )

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

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

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 )

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

12 января 2022 года

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

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

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

  • Теперь зависит от Kotlin 1.6.10 .

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

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.
  • Обновлено, чтобы быть совместимым с 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 )

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

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.