All notable changes done in ODS library will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- [Lib] Add status bar appearance management in
OdsTheme
. Applications no longer have to worry about the appearance of the status bar. (#876) - [MoreApps] Add More Apps module with its documentation (#556)
- [Lib]
ODSComponentsColors
constructor is deprecated, replaced by the new one withstatusBar
parameter (#876) - [Lib]
ODSComponentsColors
function is deprecated, replaced by the new one with onlyinit
parameter (#876) - [About]
navigateToOdsAbout
is deprecated, replaced by thenavigate
method withOdsAboutDestinations.AboutNavRoute
parameter (#946)
- [About]
OdsAboutDestinations
routes are now public (#946)
- [About] Remove useless Composable annotation in about module (#950)
- [About] Fix a bug where about screen slides up on enter transition when content height is smaller than device screen (#948)
1.0.0 - 2024-03-13
- [About] Add accessibility statement menu item (#162)
- [App] Display third party libraries in the About section (#485)
- [App] Display XML code implementation for components with an XML version available (#788)
- [App] Display Compose code implementation for
OdsTabRow
andOdsScrollableTabRow
(#549) - [Doc] Add XML integration documentation for components with an XML version (#540)
- [Lib] Add
OdsSearchTopAppBar
component variant (#577) - [Lib] Add
OdsEmptyStateView
module (#119)
- [App] Display typography tokens in search results (#551)
- [App] Update checkboxes and switches components demo by showing only one element (#666)
- [App] Replace
OdsListItem
lines counter customization by choice chips allowing secondary text lines count customization (#799) - [App] Update image for empty state module no data example (#811)
- [App] Update empty state module demo images for innovation cup theme (#868)
- [Doc] Update About module integration instructions (#815)
- [Doc] Update colors and typography documentations (#818)
- [Lib] Update i18n keys (#752)
- [Lib] Update
OdsChoiceChipsFlowRow
to have less vertical space between elements (#758) - [Lib] Change
OdsListItem
API by replacingsingleLineSecondaryText
boolean parameter by an enum calledsecondaryTextLineCount
(#777) - [Lib] Update typography tokens and rename ODS text composables (#615)
- [Lib] Move placeholder images from
app
tolib
(#531) - [Lib] Stack cards buttons when texts are too long to fit on one line (#620)
- [Lib] Stack
OdsBanner
buttons when texts are too long to fit on one line (#795) - [Lib] Update
OdsText
APIs and useOdsText
instead ofText
whenever possible (#783) - [Lib] Update
OdsChoiceChipsFlowRow
API (#794) - [Lib] Update
OdsIconToggleButtonsRow
andOdsTextToggleButtonsRow
APIs (#801) - [Lib] Update
OdsButton
,OdsTextButton
,OdsOutlinedButton
,OdsIconButton
,OdsIconToggleButton
,OdsIconToggleButtonsRow
andOdsTextToggleButtonsRow
APIs by removingdisplaySurface
parameters (#830) - [Lib] Review APIs and clean project before v1.0 release (#878)
- [LibXml] Replace
displaySurface
attribute byinvertedTheme
forOdsButton
,OdsTextButton
,OdsOutlinedButton
,OdsIconButton
,OdsIconToggleButton
andOdsIconToggleButtonsRow
(#830)
- [App] Fix
OdsTopAppBar
andOdsLargeTopAppBar
components customization through the bottom sheet (#747) - [App] Fix guideline functional colors display when switching light/dark mode (#761)
- [App] Fix code implementation dropdown menu contrast for accessibility reason by always enabling it (#749)
- [App] Fix a bug where placeholder and error placeholder images did not change when switching between light and dark mode (#531)
- [Doc] Fix a Jekyll warning with 404.html file when releasing a new version (#822)
- [Doc] Fix typo in files copyright (#821)
- [Doc] Fix a bug where content of left menu in documentation was wrong for old versions (#738)
- [Lib] Update
OdsListItem
so that if it has a control trailing (checkbox, switch or radio button), the action is handled by the row only (#743) - [Lib] Remove padding added before
OdsLinearProgressIndicator
text if there is no icon displayed (#745) - [Lib] Update
OdsTopAppBar
andOdsLargeTopAppBar
so that TalkBack reads the title of the app bar first (#275) - [Lib] Fix an issue in
OdsExposedDropdownMenu
where menu was not accessible with keyboard navigation (#750) - [Lib] Fix an A11y issue on
OdsBottomNavigation
where the items were focused twice when navigating with a keyboard (#784) - [Lib] Fix XML buttons display when forced on dark or light (#656)
- [Lib] Fix a bug where ODS typography were not installed in the Material theme instance (#813)
0.18.0 - 2023-12-11
- [App] Display
OdsBottomNavigation
XML code implementation (#671)
- [All] Upgrade dependencies (#712)
- [App] Change tabs customization to be closer to the API (#699)
- [Lib] Rename
OdsImageTile
toOdsImageItem
(#683) - [Lib] Update
OdsTab
,OdsLeadingIconTab
,OdsTabRow
andOdsScrollableTabRow
APIs (#675) - [Lib] Update
OdsTextField
,OdsPasswordTextField
andOdsSearchTextField
APIs (#676) - [Lib] Update
OdsModalDrawer
API (#677) - [Lib] Update
OdsBottomSheetScaffold
documentation (#678) - [Lib] Update
OdsChip
API to use a unique leading parameter (#705) - [Lib] Update most API types to be clearer for v1 launch (#701)
- [Lib] Update
OdsBanner
to allow banner without button and avoid text truncation in banner for accessibility purpose (#643) - [Lib] Update
OdsSmallCard
to show full title and subtitle when the card is not clickable for accessibility purpose (#722) - [Lib] Update
OdsBottomNavigation
to show a selected line below the selected navigation item for accessibility purpose (#723)
- [App] Fix nested class names in code implementation (#708)
- [App] Fix bad vocalization for top bar change theme button (#715)
- [App] Add clearer vocalization on bottom sheet demo screen (#442)
- [Lib] Fix back button color in
OdsLargeTopAppBar
(#685) - [Lib] Fix a bug where the modifier was not taken into account in
OdsPasswordTextField
(#710) - [Lib] Fix an accessibility issue in
OdsListItem
where items in a list were overlapping when using big font size (#716)
0.17.0 - 2023-11-06
- [LibXml] Add
OdsBottomNavigation
view (#526)
- [App] Change top app bar management (#651)
- [Lib] Update
OdsBottomNavigation
,OdsChoiceChipsFlowRow
,OdsSlider
andOdsSliderLockups
APIs (#661) - [Lib] Review and update technical documentation (#638)
- [Lib] Update
OdsListItem
API (#650) - [Lib] Update
OdsSnackbarHost
API (#674)
- [App] Start over progress components animations each time the determinate chip is selected (#616)
- [App] Change illustrations alignment for slider and text field components (#618)
- [Lib] Fix a bug where chip was not properly selected in
OdsChoiceChipsFlowRow
(#650) - [Lib] Change text color of
OdsTextToggleButtonsRow
selected button for accessibility reason (#559) - [Lib] Fix vertical padding of buttons in
OdsTextToggleButtonsRow
(#559)
0.16.0 - 2023-10-10
- [Lib] Add
OdsModalDrawer
component documentation (#652)
0.15.1 - 2023-09-28
- [Lib] Update
OdsHorizontalCard
,OdsSmallCard
,OdsVerticalHeaderFirstCard
andOdsVerticalImageFirstCard
APIs (#597) - [Lib] Remove several dependencies to reduce consumer app size (#623)
- [Lib] Fix a bug where
OdsDropdownMenu
was not dismissed on user click (#617) - [Lib] Fix disabled color of text and icon in
OdsDropdownMenu
(#617) - [Lib] Fix background color of components in dark mode (#634)
- [Lib] Fix a bug where the modifier was not taken into account in
OdsOutlinedTextField
(#635)
0.15.0 - 2023-09-12
- [App] Add list item component (#555)
- [App] Add toggle text buttons group component (#530)
- [App] Add new convenience methods for code implementation (#624)
- [Lib] Add
OdsTextToggleButtonsRow
component (#530)
- [All] Use Compose BOM and update Kotlin and Gradle versions (#578)
- [Lib] Replace composable parameter of
OdsDropdownMenu
with a list ofOdsDropdownMenuItem
(#572) - [Lib] Update
OdsTopAppBar
andOdsLargeTopAppBar
APIs (#572) - [Lib] Update
OdsBottomNavigation
API (#588) - [Lib] Update
OdsBanner
API (#592) - [Lib] Update
OdsButton
,OdsOutlinedButton
andOdsTextButton
APIs (#596) - [Lib] Update
OdsIconButton
,OdsIconToggleButton
andOdsIconToggleButtonsRow
APIs (#599) - [Lib] Update
OdsAlertDialog
API (#605) - [Lib] Update
OdsFloatingActionButton
andOdsExtendedFloatingActionButton
APIs (#611) - [Lib] Update
OdsLinearProgressIndicator
andOdsCircularProgressIndicator
APIs (#607) - [Lib] Update
OdsImageItem
API and rename it intoOdsImageTile
(#609) - [Lib] Update
OdsChip
,OdsChoiceChipsFlowRow
andOdsFilterChip
APIs (#603) - [ThemeInnovationCup/ThemeOrange] Remove Hilt dependency in themes (#791)
- [App] Screen displayed on filter chip variant click was not the good one (#580)
- [App] Fix a bug where
OdsListItem
text color did not update when switching between light and dark modes in text field demo (#578) - [App] The number of search results is now vocalized (#506)
- [Lib] Vocalize exposed dropdown menu content as a group (#560)
- [Lib] Fix
OdsTextField
content color in dark mode (#621)
0.14.0 - 2023-07-12
- [App] Add component image item (#473)
- [App] Display XML version in
ButtonsContained
andButtonsOutlined
(#528) - [App] Display XML version in
ButtonsText
,ButtonsIcon
,ButtonsIconToggle
andButtonsIconToggleGroup
(#529) - [Lib] Add
OdsLargeTopAppBar
component (#118) - [Lib] Add
OdsImageItem
component (#473) - [Lib] Add
@Parcelize
annotation onOdsExposedDropdownMenuItem
to allow to save and restore it (#545) - [Lib] Add
themeColors
andrippleTheme
properties toOdsDisplaySurface
(#329) - [LibXml] Add
OdsButton
andOdsOutlinedButton
views (#528) - [LibXml] Add
OdsTextButton
,OdsIconButton
,OdsIconToggleButton
andOdsIconToggleButtonsRow
views (#529)
- [App] Use an exposed dropdown menu to switch between XML and Compose implementation (#546)
- [App] Toggle icon buttons group can now be disabled with the customization bottom sheet (#329)
- [Lib] Fix a bug where
enabled
property ofOdsIconToggleButtonsRowItem
has no effect (#329) - [Lib] Vocalize icon toggle button state change in
OdsIconToggleButtonsRow
component (#567)
0.13.0 - 2023-06-01
- [App] Generalize code implementation section for all components (#501)
- [App] Add a DSL for parameters in code implementation (#520)
- [App] Display XML version of components in app when available (#476)
- [LibXml] Add
lib-xml
module withOdsBanner
view (#476)
- [App] Use Orange placeholder images (#522)
- [Lib] Rename
OdsComponentApi
annotation andOdsComponent
enum toOdsComposable
(#522)
- [App] Fix a bug where avatar have a default image (#504)
- [App] Fix highest emphasis buttons background color (#513)
0.12.0 - 2023-04-06
- [App] Add component search feature (#16)
- [App] Add modal drawers component (#112)
- [Lib] Add
OdsModalDrawer
component (#112) - [Lib] Add
OdsIconToggleButtonsRow
composable to display a group of toggle buttons (#484)
- [App] Update foods content
- [App] Rename application ID to
com.orange.ods.app
and replacedemo
withapp
in the project (#469) - [App] Update application name (#474)
- [App] Remove copyright text in the about screen (#486)
- [App] Update search with guidelines (#478)
- [App] Update chips variants in order to have "Action chips", "Choice chips" and "Input chips" in the chips detail screen (#494)
- [App] Split buttons and icons buttons in two different components (#484)
- [Lib] Encapsulate a
MaterialTheme
in theOdsTheme
to take directly benefits of colors set in Jetpack Compose SDK (#430) - [Lib] Update
OdsIconToggleButton
which displays a single icon button with two states. UseOdsIconToggleButtonsRow
to display a group of toggle buttons (#484) - [ThemeConfigurationContract] Change colors contract by respectively grouping Material, functional and components colors in
materialColors
,functionalColors
andcomponentColors
properties ofOdsColors
(#430)
- [App] Fix accessibility bug where content change on chip type selection was not read by TalkBack (#332)
- [App] Fix accessibility bug where text fields error messages were not read by TalkBack on state change (#359)
- [App] Fix crash on scrolling in guideline colors screen (#477)
- [App] Fix a bug where the customization bottom sheet did not expand automatically in tabs component demo (#458)
- [Doc] Fix a bug where documentation is displayed several times on the same page (#457)
- [Lib] Implement workaround by adding content description to
OdsOutlinedTextField
in order to allow TalkBack to focus this type of text field (#359) - [Lib] Fix a bug where image height is wrong in some cases in
OdsHorizontalCard
(#445) - [Lib] Fix a bug where selected text in modal drawer is bold (#502)
0.11.1 - 2023-03-10
- [App] Fix security vulnerability in the Manifest (#463)
0.11.0 - 2023-03-03
- [App] Add banner component (#115)
- [App] Add label for FAB size customization (#413)
- [App] Add bottom sheet component (#360)
- [Lib] Add
OdsBottomSheetScaffold
component (#360) - [Lib] Add
OdsHorizontalCard
component (#35) - [Lib] Add
OdsBanner
component (#115)
- [Lib] Add label, current value and icon parameters to
OdsLinearProgressIndicator
component to display text and/or icon above the indicator, and the current value below if necessary (#362) - [Lib] Add label parameter to
OdsCircularProgressIndicator
component to display a text below the indicator (#362) - [Lib] Rename
OdsTitleFirstCard
andOdsImageFirstCard
respectively intoOdsVerticalHeaderFirstCard
andOdsVerticalImageFirstCard
(#432)
- [App] Update application name and description in about page (#419)
- [App] Fix accessibility bug by preventing TalkBack to read the linear progress value twice (#441)
- [App] Keep same bottom sheet height when content or not (#447)
0.10.0 - 2023-02-07
- [App] Add new entries in about screen (#403)
- [Lib] Add
OdsFloatingActionButton
andOdsExtendedFloatingActionButton
components (#109) - [Lib] Add
OdsListItem
composable signature with anOdsListItemTrailing
as trailing parameter in order to manage accessibility (#387) - [Lib] Add
OdsDropdownMenu
andOdsExposedDropdownMenu
composables and related documentation (#111) - [ThemeConfigurationContract] Add
textFieldStyle
boolean in the theme contract to allow to choose between outlined or filled text fields in a custom theme (#415)
- [All] Upgrade dependencies (#401)
- [App] Display food content (#388)
- [App] Use
Enabled
wording in customization bottom sheets to be consistent with the code implementation (#395) - [App] Update structure of JSON file for recipes (#385)
- [Doc] Update documentation home content for Jetpack Compose integration (#409)
- [ThemeConfigurationContract]
OdsComponentCustomizations
has been renamed intoOdsComponentsConfiguration
(#415)
- [App] In buttons screens, group lines of code into one vocalisation (#392)
- [App] Fix an accessibility bug where icon buttons were not focusable with TalkBack (#393)
- [App] Fix list item selection controls trailing vocalization: Checkboxes, Switches and Radio Buttons in lists (#387)
- [App] Screens in about section now use current theme colors (#390)
- [App] Fix crash when exiting the fixed tabs screen (#418)
- [Lib] Fix cards vocalization when clickable (#391)
- [All]
OdsOutlinedTextfield
andOdsPasswordOutlinedTextField
have been removed and replaced byOdsTextField
andOdsPasswordTextField
. Text fields appearance (outlined or filled) is now managed by the theme configuration. (#415)
0.9.0 - 2023-01-06
- [App] Add
OdsIconButton
demo (#294) - [Lib] Add
OdsTopAppBarOverflowMenuBox
andOdsDropdownMenu
composables to display an overflow menu in the top app bar (#349) - [Lib] Add
enabled
extension method on ComposeColor
(#314)
- [App] Change buttons screens by removing style customization and adding a code implementation section (#339)
- [App] Display black and white illustrations for non Orange themes (#386)
- [Doc] Use ODS Jekyll theme header to display favicons on documentation github pages (#370)
- [Lib] Replace
tint
parameter ofOdsIconButton
composable methods bydisplaySurface
(#294)
- [App] Fix list item trailing icon vocalization and display (#337)
- [App] Fix a bug where dark mode did not work properly in about screens on Android 13 (#375)
- [Lib] Fix top app bar overflow menu colors (#349)
- [Lib]
OdsSmallCard
title is now single line and truncated if needed (#302) - [Lib] Fix a bug where password was not hidden in
OdsTextField
andOdsOutlinedTextField
(#376) - [Lib] Fix a bug where visualisation icon was still clickable in disabled state of
OdsTextField
andOdsOutlinedTextField
(#376)
0.8.0 - 2022-12-07
- [All] Add
NOTICE.txt
file (#356) - [App] Save the user theme selection in order to reopen the app with this theme #335
- [App] Add Snackbar component (#114)
- [App] Display an error message below text fields if customization error switch is on (#338)
- [Lib] Add
OdsSnackbar
andOdsSnackbarHost
composable to manage snackbars display (#114) - [Lib] Add
errorMessage
parameter toOdsTextField
,OdsOutlinedTextField
,OdsPasswordTextField
andOdsPasswordOutlinedTextField
to allow the display of an error message below text fields (#338) - [Lib] Add
characterCounter
parameter toOdsTextField
,OdsOutlinedTextField
,OdsPasswordTextField
andOdsPasswordOutlinedTextField
to allow the display of a character counter below text fields (#338) - [ThemeConfigurationContract] Add
outlinedChips
boolean in the theme contract to allow to choose between outlined or filled chips in a custom theme (#305)
- [All] Version numbers in changelog now display changes on GitHub when clicked (#322)
- [All] Update documentation #334
- [All] Upgrade compile and target SDK versions to 33 #343
- [App] Move change theme feature in top app bar by clicking on a palette icon #335
- [App] Add customization bottom sheets for buttons (#303)
- [App] Replace action buttons switches by a counter in cards customization bottom sheet (#327)
- [App] Add customization bottom sheets for sliders (#307)
- [App] Demonstrate outlined or filled chips according theme configuration (#305)
- [Lib] Allow to add side icons to
OdsSliderLockups
(#307) - [Lib] Use
OptIn
annotation instead of propagatingExperimentalMaterialApi
andExperimentalPagerApi
(#320) - [Lib] Use multipreview annotation instead of duplicating
Preview
annotations (#324) - [Lib] Change
OdsIconToggleButton
display (#303) - [ThemeInnovationCup] Use filled chips (#305)
- [Lib] Fix filter chips display for custom themes (#305)
- [Lib] Fix leading icon tab display for Innovation Cup theme (#330)
- [Lib] Fix a bug where keyboard return key adds a new line in single line
OdsTextField
andOdsOutlinedTextField
(#350)
- [App] Removed unused resources (#352)
0.7.0 - 2022-11-09
- [ThemeConfigurationContract] Add module to create themes
- [ThemeOrange] Add module for Orange theme
- [ThemeInnovationCup] Add module for Innovation Cup theme
- [App] Display an illustration and description header on guideline typography screen (#301)
- [App] Use step counter for list item line count customization (#306)
- [App] Display the chip name and a short description for each type of chip (#304)
0.6.0 - 2022-10-17
- [App] Display composable name associated to each component or variant (#267)
- [App] Progress & activities components have been split in two variants (#282)
- [App] Components detail screens have been homogenized (#254)
- [App] Variants displayed in buttons detail screen have been changed (#260, #278)
- [App] Expand components customization bottom sheets by default (#284)
- [App] Color hex value can now be copied to the clipboard (#256)
- [Lib] Cards and buttons composables have been renamed to match with Jetpack compose SDK naming (#267)
- [Lib]
OdsButtonContainedStyle
has been renamed intoOdsButtonStyle
(#260) - [Lib] Rename
ChoiceChip
toOdsChoiceChip
(#271)
- [App] Fix state vocalization for customization bottom sheets (#279)
- [App] Fix vocalization of counters values on change (#266)
- [Lib] Fix state vocalization for chips: selected/not selected (#280)
0.5.0 - 2022-09-07
- [App] Allow to enable or disable click on cards in customization bottom sheet (#247)
- [App] Add spacing guideline screen (#211)
- [App] Add customizable top app bar regular component preview (#105)
- [Lib] Add
KeyboardState
utility composable which allows to know if the keyboard is opened or closed in Jetpack Compose applications (#221) - [Lib] Add
OdsTextFieldCounter
, a composable to add a counter below a text field (#221) - [Lib] Add
OdsPasswordTextField
andOdsPasswordOutlinedTextField
which are text fields implementations for password entry (#221) - [Lib] Add
OdsChoiceChipsFlowRow
, a composable to display a set of choice chips in a full width flow row (#169) - [Lib] Add
imageBackgroundColor
,imageContentScale
andimageAlignment
properties toOdsCardImageFirst
,OdsCardSmall
andOdsCardTitleFirst
(#229) - [Lib] Add
OdsListItemScope
andOdsListItemIconType
enum as well asModifier.iconType
andModifier.divider
methods to configureOdsListItem
icon type and divider (#141)
- [App] Customization radio buttons has been replaced by chips (#169)
- [App] The number of items in bottom navigation can now be changed using plus and minus buttons (#172)
- [App] Update lists component UI (#141)
- [Lib] Replace
@DrawableRes Int
parameters type byPainter
for all cards and buttons components (#262) - [Lib] Change
OdsSlider
signature:leftIconRes
andrightIconRes
have been replaced respectively byleftIcon
andrightIcon
which arePainter
typed (#243) - [Lib] Change
OdsTopAppBar
signature:title
parameter type changed to String andonNavigationIconClick
parameter has been added (#105)
- [App] Fix vocalization of icons for sliders with icons (#243)
- [App] Fix list item number of lines wording (#252)
- [App] Fix a bug where guideline and component images were cropped (#229)
- [App] Fix a bug where back button did not collapse expanded bottom sheets (#238)
- [Lib] Cards are no more always clickable and corner radius has been added to the ripple effect (#247)
- [Lib] Fix a crash when last tab is selected and the user decreases tabs number (#245)
- [Lib] Fix ripple effect colors for outlined and text buttons when forced on dark or light (#168)
- [Lib] Remove
OdsListItemWideThumbnail
,OdsListWideThumbnail
andOdsListSquaredThumbnail
methods (#141)
0.4.0 - 2022-07-06
- [Lib] Add chips components:
OdsChip
andOdsFilterChip
(#113) - [Lib] Add tabs components:
OdsLeadingIconTab
,OdsTab
,OdsTabRow
andOdsScrollableTabRow
(#108) - [Lib] Add text fields components:
OdsTextField
andOdsOutlinedTextField
(#83) - [Lib] Add
OdsAlertDialog
component (#101) - [Lib] Add list items components:
OdsListItem
andOdsListItemWideThumbnail
(#73) - [Lib] Add controls components:
OdsCheckbox
,OdsRadioButton
,OdsSwitch
,OdsSlider
(#64) - [Lib] Add buttons components:
OdsButton
,OdsOutlinedButton
,OdsTextButton
andOdsToggleButton
(#45) - [Lib] Add
OdsTopAppBar
component (#25) - [Lib] Add
OdsCardSmall
,OdsCardImageFirst
andOdsCardTitleFirst
components (#32, #33, #34) - [Lib] Add
OdsBottomNavigation
andOdsBottomNavigationItem
components (#20) - [Lib] Add
OdsMaterialTheme
which is a Material theme extension for Jetpack Compose applications (#36) - [Lib] Add
Theme.Orange
andTheme.Orange.NoActionBar
, the Orange Design System theme for XML applications