91 Commits

Author SHA1 Message Date
dsn5ft
0697f6fe89 [Gradle] Enable non transitive R classes (resource namespacing) and fix errors
PiperOrigin-RevId: 738871402
2025-03-20 18:34:33 +00:00
hunterstich
580e8d56d6 [Build] Updated build to use Dackka for documentation generation
PiperOrigin-RevId: 730522331
2025-02-25 19:33:33 +00:00
rightnao
ca0b870a34 [Carousel] Recyclerview children do not inherit layout direction
PiperOrigin-RevId: 729275138
2025-02-25 19:27:40 +00:00
rightnao
52228c1b3b [Carousel] Update keyline state if necessary if item size changes
PiperOrigin-RevId: 719390625
2025-01-27 21:02:42 +00:00
rightnao
916e9085f9 [Carousel] Update multi-browse strategy to always have at least 1 medium item
PiperOrigin-RevId: 719372980
2025-01-27 21:01:56 +00:00
rightnao
d0f5d721a1 [Carousel] Recalculate keyline state if it doesn't match the current container size
PiperOrigin-RevId: 718578581
2025-01-24 18:27:58 +00:00
rightnao
998fe833e2 [Carousel] Change custom Carousel strategies to be restricted visibility in order to refactor custom strategies
PiperOrigin-RevId: 707143621
2024-12-17 22:56:57 +00:00
rightnao
4bc4381e24 [Carousel] Added a notifyItemSizeChanged() method
PiperOrigin-RevId: 704836257
2024-12-16 13:00:43 +00:00
pubiqq
767f25aa49 [Docs] Fix javadoc links
Resolves https://github.com/material-components/material-components-android/pull/4333

GIT_ORIGIN_REV_ID=61739e430bcda13086b83015e4054d7e318cd0d5
PiperOrigin-RevId: 700775734
2024-12-02 20:07:07 +00:00
Material Design Team
10f3d3bd98 [Carousel]Prevent touch events from reaching hidden views.
PiperOrigin-RevId: 698207866
2024-11-21 17:31:20 +00:00
rightnao
0dee06f089 [Carousel] Override onHoverEvent to send correct hover events according to the mask rect, not the MaskableFrameLayout bounds
PiperOrigin-RevId: 696300362
2024-11-21 17:18:59 +00:00
rightnao
885f3b7292 [Carousel] Make KeylineState.Builder constructor public for customizing strategies
PiperOrigin-RevId: 679737112
2024-10-01 18:43:27 +00:00
rightnao
74b5900aaa [Carousel] Make carousel internal classes public to enable custom strategies
PiperOrigin-RevId: 679710469
2024-10-01 18:41:44 +00:00
rightnao
6b263fa958 [Carousel] Fix carousel spamming view re-binding
PiperOrigin-RevId: 651470722
2024-07-22 18:22:04 +00:00
rightnao
c7143282a7 [Carousel] Remove library group restriction on Uncontained strategy
Resolves https://github.com/material-components/material-components-android/issues/4218

PiperOrigin-RevId: 650441233
2024-07-09 15:42:52 +00:00
pubiqq
510881a469 [Internal] Stop using deprecated androidx.core.view.* methods
Resolves https://github.com/material-components/material-components-android/pull/4117

GIT_ORIGIN_REV_ID=dd157e8360c2511810496693cec1616fce578655
PiperOrigin-RevId: 632284856
2024-05-13 17:37:38 +00:00
rightnao
8c541e6b25 [Carousel] Prevent scrolling if there's less items than focal keylines
PiperOrigin-RevId: 625466841
2024-04-17 18:04:41 +00:00
rightnao
9393b9779e [Carousel] Support unclipped padding for uncontained variant of carousel
PiperOrigin-RevId: 625101250
2024-04-16 17:52:05 +00:00
rightnao
d88524297c [Carousel] Fix a11y issue with switch access highlighting incorrect bounds
PiperOrigin-RevId: 618961042
2024-03-26 21:20:10 +00:00
dsn5ft
22de817c30 [Docs] Internal change
PiperOrigin-RevId: 613673995
2024-03-07 20:52:14 +00:00
pekingme
46fa6465fe [Cleanup] Internal change
PiperOrigin-RevId: 608668937
2024-02-29 08:27:55 -08:00
Material Design Team
5471b8d37a Internal change
PiperOrigin-RevId: 607976596
2024-02-26 13:44:54 -08:00
rightnao
1ef42e2f23 [Carousel] Shift keylines in contained strategies when there exists padding, and clipToPadding=false
PiperOrigin-RevId: 595162372
2024-01-03 20:58:38 +00:00
afohrman
a0a1c6e044 [Carousel][Docs] Fixed Javadoc formatting error in FullScreenCarouselStrategy class documentation.
PiperOrigin-RevId: 591041703
2023-12-15 19:56:19 +00:00
hunterstich
e88a1b98d2 [Carousel] Added support for cross axis wrap_content RecyclerViews
PiperOrigin-RevId: 590637698
2023-12-14 15:45:23 +00:00
rightnao
92a5444de9 [Carousel] Add attributes to change small item size
PiperOrigin-RevId: 580249803
2023-11-08 15:13:51 +00:00
rightnao
17baf71972 [Carousel] Ensure that extra small size is not larger than the large size
resolves https://github.com/material-components/material-components-android/issues/3640

PiperOrigin-RevId: 574514980
2023-10-19 11:31:13 -07:00
hunterstich
26c3129201 [Carousel] Fixed crash when recyclerview has a size of zero.
Resolves https://github.com/material-components/material-components-android/issues/3634

PiperOrigin-RevId: 573843130
2023-10-17 10:55:34 -07:00
rightnao
fb9c1c6edf [Carousel] When navigating with keyboard, scroll focused item to nearest focal keyline, not the first focal keyline
PiperOrigin-RevId: 573024609
2023-10-13 12:37:16 -07:00
rightnao
9a2347bda5 [Carousel] Force hero strategy to be start-aligned if there are not enough items to make it center-aligned
Resolves https://github.com/material-components/material-components-android/issues/3626

PiperOrigin-RevId: 572641635
2023-10-12 11:03:50 -07:00
rightnao
cbb380df61 [Carousel] Add logic for multibrowse strategy to change strategy when number of items is less than the number of keylines
Resolves https://github.com/material-components/material-components-android/issues/3598

PiperOrigin-RevId: 572078262
2023-10-10 10:46:28 -07:00
hunterstich
0356f24a63 [Carousel] Fixed focus order when using keyboard navigation for hero carousels.
When using the keybaord to move between items, FocusFinder would occasionally skip an item because it was using the unmasked bounds of each item to compare their distance.

PiperOrigin-RevId: 572025177
2023-10-10 10:44:21 -07:00
rightnao
ed4647d5df [Carousel] Cleaning up multi-browse strategy and removing compact arrangement
PiperOrigin-RevId: 572006115
2023-10-10 10:43:37 -07:00
rightnao
d5d604d0cc [Carousel] Disallowing center aligned hero strategy with only 2 items since it does not make any sense. With only 2 items there can only be a start state and end state with the hero strategy.
Resolves https://github.com/material-components/material-components-android/issues/3589

PiperOrigin-RevId: 568965460
2023-10-02 13:36:53 +00:00
rightnao
8cb444b268 [Carousel] Fix issue with uncontained carousel not having a proper end scroll value due to assumption made in end scroll calculation
resolves https://github.com/material-components/material-components-android/issues/3599

PiperOrigin-RevId: 568948116
2023-10-02 13:36:19 +00:00
rightnao
4a6ae4d0b6 [Carousel] Update scroll offset to scroll to the estimated position that it was at upon an initial load
Resolves https://github.com/material-components/material-components-android/issues/3590

PiperOrigin-RevId: 568642330
2023-09-26 20:55:25 -04:00
hunterstich
c418063205 [Carousel] Fixed strategies crashing when there is not enough available space for a large and a small item
If the carousel container is not large enough to fit a small item and large item that is at least as large as the minimum small item size, mutli-browse and hero strategies will create an arrangment with a single, large item.

PiperOrigin-RevId: 568610428
2023-09-26 20:54:33 -04:00
rightnao
93660d4241 [Carousel] Tweak uncontained strategy logic to adjust medium size items to improve motion
PiperOrigin-RevId: 566720825
2023-09-19 20:29:10 +00:00
hunterstich
b80d9a5ef4 [Carousel] Fixed formatted for KeylineState and KeylineStateList
PiperOrigin-RevId: 565711087
2023-09-15 17:26:58 -04:00
hunterstich
7151714711 [Carousel] Fixed keyline shifting in RTL for uncontained carousels
Resolves https://github.com/material-components/material-components-android/issues/3554
Resolves https://github.com/material-components/material-components-android/issues/3580

PiperOrigin-RevId: 565654556
2023-09-15 17:26:05 -04:00
pubiqq
4ce7e4c8fa [Carousel] Reduce the number of truncations in intermediate calculations
Resolves https://github.com/material-components/material-components-android/pull/3581
Resolves https://github.com/material-components/material-components-android/issues/3579

GIT_ORIGIN_REV_ID=1bcb42de0535edac134a6fc27dcb14b22f7dc1a5
PiperOrigin-RevId: 565653783
2023-09-15 17:25:17 -04:00
rightnao
c6ea2d4040 [Carousel] Update vertical scroll speed to be faster
PiperOrigin-RevId: 559888221
2023-08-25 19:21:59 +00:00
rightnao
3d84841cad [Carousel][A11y] Fix some a11y bugs in Carousel
PiperOrigin-RevId: 559881261
2023-08-25 17:51:59 +00:00
rightnao
b6f6eb555a [Carousel] Center aligned uncontained carousel
PiperOrigin-RevId: 559215330
2023-08-23 19:31:24 +00:00
rightnao
9d81cac125 [Carousel] Add left-aligned uncontained strategy
PiperOrigin-RevId: 559197283
2023-08-23 19:28:53 +00:00
rightnao
966f7daec9 [Carousel] Fix orientation not correct in item decoration calculations
Resolves https://github.com/material-components/material-components-android/issues/3500

PiperOrigin-RevId: 558825973
2023-08-21 19:11:40 +00:00
pubiqq
dc91b39d7c [Carousel] Update mask size on size change if mask x percentage has been set
Resolves https://github.com/material-components/material-components-android/pull/3450

GIT_ORIGIN_REV_ID=df8a325da6e4a796ab33d93e2ba165e40da8733e
Co-authored-by: imhappi
PiperOrigin-RevId: 558207460
2023-08-18 22:40:13 +00:00
rightnao
a16f180ce7 [Carousel] Fix issue with next carousel item not being masked properly
PiperOrigin-RevId: 551644125
2023-07-28 17:04:35 +00:00
rightnao
ff528621b3 [Carousel] Add a layout listener to recyclerview to refresh keyline state upon size change
PiperOrigin-RevId: 551280769
2023-07-27 22:50:16 +00:00
rightnao
547156e497 [Carousel] Add carousel alignment attribute
PiperOrigin-RevId: 548719675
2023-07-18 16:50:16 +00:00