123 Commits

Author SHA1 Message Date
dniz
c06305995f Fix MaterialShapeDrawable stroke corner bug
PiperOrigin-RevId: 272977992
(cherry picked from commit ab54c23e9bf110395eeb3a7b7447aaae635fc18b)
2019-10-04 22:25:34 -04:00
cketcham
a0547c6362 Rename setCornerRadius to setAllCornerSizes
PiperOrigin-RevId: 272959729
(cherry picked from commit 294f12498dd5f244754875e3c0b5b11bbf859ea4)
2019-10-04 22:25:08 -04:00
cketcham
c831ecc99d Add support for percentages to ShapeAppearanceModel
PiperOrigin-RevId: 272946740
(cherry picked from commit a130a0c3e048a6311ff70a5bcb7d50b1809f7251)
2019-10-04 16:46:21 -04:00
cketcham
53e181b82d Uncouple CornerSize from CornerTreatment
This allows for more easily updating the CornerSize independently from the CornerTreatment and makes it possible to create different types of CornerSizes such as percentage based corners. However, this means corner sizes can be different depending on the bounds of the shape, so the bounds need to be provided. MaterialShapeDrawable has bounds and the ShapeAppearanceModel, so there are new convenience methods there which return the current corner size for the current bounds of the drawable.

PiperOrigin-RevId: 272908508
(cherry picked from commit 0547d2a06bfa636990c99c74a7a16e02cef41647)
2019-10-04 15:38:10 -04:00
ldjesper
6f73b2ed8e Remove deprecated getPathForSize not in any stable release
PiperOrigin-RevId: 272877489
(cherry picked from commit 17ff72c69aa892c82016d1ce9c80a91ee9160ce4)
2019-10-04 11:44:17 -04:00
ldjesper
c74dccbd89 Remove deprecated method not present in stable MaterialShapeDrawable#getStrokeTint
PiperOrigin-RevId: 272741709
(cherry picked from commit 5afdf00f80a56daa46a0056e41f5f91799b70fc4)
2019-10-04 11:44:06 -04:00
marianomartin
8410a88e73 Fix binary compatibility issues with MaterialShapeDrawable
These methods existed in 1.0.0 so they can't be removed.

PiperOrigin-RevId: 272665301
2019-10-03 15:50:23 -04:00
cketcham
b8da637c01 Update corner size for builder to use floats
PiperOrigin-RevId: 271428842
2019-10-03 15:50:23 -04:00
afohrman
d3ef78f55b Fix issues with javadocs.
PiperOrigin-RevId: 269825611
2019-10-03 15:50:23 -04:00
cketcham
599457f2c4 Update ShapeAppearanceModel javadoc to correctly specify that an instance is returned, not the builder.
PiperOrigin-RevId: 269363772
2019-10-03 15:50:23 -04:00
cketcham
99a8bd7fef Add space to the bitmap for drawing shadows to prevent clipping
PiperOrigin-RevId: 268449384
2019-10-03 15:50:23 -04:00
cketcham
f52407e1e3 Make cornerSize a private field
PiperOrigin-RevId: 266924741
2019-09-04 18:04:37 -04:00
cketcham
fb272f84b4 Remove cloneable from corner treatments since ShapeAppearance and CornerTreatments are now immutable
PiperOrigin-RevId: 266422300
2019-09-04 18:00:22 -04:00
cketcham
27b58f1611 Make ShapeAppearanceModel immutable
PiperOrigin-RevId: 266378228
2019-09-04 14:20:35 -04:00
cketcham
7bb525ff59 Update usages of ShapeAppearanceModel to use Builder pattern
PiperOrigin-RevId: 266144471
2019-08-29 15:39:51 -04:00
cketcham
ca91442ba2 Add builder to ShapeAppearanceModel
PiperOrigin-RevId: 265806696
2019-08-29 12:21:55 -04:00
marianomartin
f5c9026efa Internal cleanup
PiperOrigin-RevId: 265550877
2019-08-29 11:39:58 -04:00
cketcham
1538729814 Add @NonNull and @Nullable annotations
PiperOrigin-RevId: 265057078
2019-08-29 10:28:12 -04:00
afohrman
7241e7181f Hide CornerFamily documentation and restrict the annotation.
PiperOrigin-RevId: 260144206
2019-07-29 16:39:19 -04:00
ldjesper
ec856cdeae Deprecate fields from the public API of ShapePath
PiperOrigin-RevId: 259830158
2019-07-25 13:13:11 -04:00
dniz
cc73c2a630 Update TODOs
PiperOrigin-RevId: 259535844
2019-07-23 11:21:39 -04:00
dniz
0512f776c5 Remove sub-package AndroidManifest.xml files from lib directory
PiperOrigin-RevId: 258390736
2019-07-16 13:18:32 -04:00
isabellekim
a628bf516b Revert the library to compile with Java 7: revert lambdas, add necessary casts, and make some variables final.
Continue compile shrine demo, catalog, and tests with Java 8.

PiperOrigin-RevId: 257874888
2019-07-15 19:19:23 -04:00
marianomartin
164bf0fabd Internal cleanup
PiperOrigin-RevId: 255609320
2019-07-03 14:02:53 -04:00
dniz
5df3bebd63 Update elevation overlays to be based absolute elevation, factoring in the elevation of all parent views
Will follow-up with TabLayout absolute elevation separately

Resolves https://github.com/material-components/material-components-android/issues/381

PiperOrigin-RevId: 255404830
2019-07-03 13:55:49 -04:00
isabellekim
36b760d220 Change ripples on MaterialButton to use the alphas provided in the ColorStateList.
RippleDrawable on different API levels will modulate the alphas differently
for the pressed / focused / hovered states. Therefore, in order to get the
desired alphas for pressed / focused / hovered states, we are using the
mtrl_(low|high)_ripple_(pressed|focused|hovered|default)_alpha values which have
been defined to account for the different implementations of RippleDrawable.

This will allow developers to specify different colors for focused vs. pressed if desired.

PiperOrigin-RevId: 255306749
2019-07-03 13:50:29 -04:00
marianomartin
1c5df57127 Make ShapeAppearancePathProvider not restricted
PiperOrigin-RevId: 254229963
2019-06-24 17:03:52 -04:00
dniz
91f292432f Rename MaterialShapeDrawable internal elevation overlay util method
PiperOrigin-RevId: 253794203
2019-06-18 13:56:22 -04:00
marianomartin
53e4e9cca8 Internal cleanup
PiperOrigin-RevId: 253624674
2019-06-18 13:43:33 -04:00
dniz
6783f9e1cd Clean up naming of elevation overlay methods and attributes
PiperOrigin-RevId: 253283047
2019-06-18 13:34:29 -04:00
cketcham
bff75f2d3e Update to lamdas
PiperOrigin-RevId: 252846439
2019-06-18 13:21:02 -04:00
cketcham
cb71e2d582 Update BottomAppBar hideOnScroll offset to account for the shadow drawn at the top of the view.
PiperOrigin-RevId: 250562675
2019-05-30 13:59:24 -07:00
cketcham
f259def8b6 Force the path to be calculated for a copied MaterialShapeDrawable
PiperOrigin-RevId: 249833111
2019-05-24 14:27:23 -04:00
marianomartin
90837ec485 Internal cleanup
PiperOrigin-RevId: 249243403
2019-05-21 12:15:07 -04:00
afohrman
ab87dd51fb Add shaped selected item background to NavigationView and update the item background color.
PiperOrigin-RevId: 247490949
2019-05-16 12:38:14 -04:00
leticiars
ce59247330 Adding padding support for MaterialShapeDrawable.
PiperOrigin-RevId: 243997071
2019-04-19 21:24:40 -04:00
gauthams
163c0ed3f5 Update ExtendedFAB to support setting corner radius via shape appearance
PiperOrigin-RevId: 243677036
2019-04-19 21:07:37 -04:00
dniz
1f244318d8 Add @hide to all @RestrictTo annotations that are missing it
PiperOrigin-RevId: 243646339
2019-04-19 16:29:30 -04:00
dniz
1889b9fed6 Add support for translationZ to MaterialShapeDrawable
Useful for animating elevation shadows in Light themes and elevation overlays in Dark Themes

PiperOrigin-RevId: 243260129
2019-04-19 15:54:27 -04:00
Material Design Team
a13ff980a5 Automated g4 rollback of changelist 241720142
PiperOrigin-RevId: 241804673
2019-04-05 15:48:38 -04:00
Material Design Team
264e816f56 * Add selected (Active) item default background to NavigationView - introducing seven itemShape* attributes for this purpose
PiperOrigin-RevId: 241720142
2019-04-05 15:43:56 -04:00
afohrman
17195e41d1 Add documentation to public methods in ShapeAppearanceModel.
Some public methods were missing documentation.

Also remove unnecessary hyphenation from methods that used hyphenation to describe the corner treatment positioning (ex: top-left -> top left).

PiperOrigin-RevId: 239882358
2019-03-26 17:31:59 -04:00
marianomartin
fd01672af5 Fix nullness in FAB
PiperOrigin-RevId: 238990635
2019-03-22 16:21:40 -04:00
afohrman
ca07e5f616 Create OnChangedListener to respond to ShapeAppearanceModel changes and Shapeable interface, and implement it in Chip.
The OnChangedListener provides a callback that MaterialShapeDrawables can use to invalidate themselves when the associated ShapeAppearanceModel changes. This allows for modifying the ShapeAppearanceModel through the get/setShapeAppearance methods that the Shapeable interface exposes without having to update the client to redraw itself.

PiperOrigin-RevId: 238703600
2019-03-22 16:16:23 -04:00
dniz
6adba8f93b Fix MaterialShapeDrawable to work with ColorStateLists for fill and stroke tint
and paint

PiperOrigin-RevId: 238478987
2019-03-22 16:09:16 -04:00
dniz
7b594393c8 Dark Theme Elevation Overlay system
PiperOrigin-RevId: 237829773
2019-03-22 16:02:26 -04:00
marianomartin
01874ad4e9 Change setElevation in MSD to use default offset
PiperOrigin-RevId: 236858323
2019-03-08 09:58:58 -05:00
dniz
c0de00cdac Fix MaterialShapeDrawable bug that causes compat shadows to be drawn for round rects on lollipop+
PiperOrigin-RevId: 235786787
2019-02-27 18:00:21 -05:00
dniz
11df79f95c Clean up Gradle build shorthands for appcompat/androidx libraries
PiperOrigin-RevId: 229369959
2019-01-18 14:13:26 -05:00
dniz
03cf027bc7 Deprecate Experimental annotation and remove from Shapes
PiperOrigin-RevId: 229200655
2019-01-18 14:10:16 -05:00