• Home
  • History
  • Annotate
  • only in /frameworks/support/design/lollipop/android/support/design/widget/
History log of /frameworks/support/design/lollipop/android/support/design/widget/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b3f442095596ede223227f6ae7afff6a3170e118 02-May-2017 Kirill Grouchnikov <kirillg@google.com> Conditional use of workaround for 22-24 devices

Bug: 32136707
Test: ./gradlew support-design:connectedCheck --info --daemon -Pandroid.testInstrumentationRunnerArguments.class=android.support.design.widget.FloatingActionButtonTest
Change-Id: Icdf198e9923af4baa1456496efdfc25b20abe582
loatingActionButtonLollipop.java
c69882cb9b130902c1554ef5d3e3b06d776cd796 05-Mar-2017 Alan Viverette <alanv@google.com> Re-enable lint enforcement, fix remaining lint issues

Bug: 29630077
Test: ./gradlew lint
Change-Id: Ied1e4b1c33ba158d6bfab5439497ee4fc8284a8f
loatingActionButtonLollipop.java
522c70ab180af24bf9777cec0a1a9b804c77c8d9 06-Jan-2017 Aurimas Liutikas <aurimas@google.com> Cleanup FloatingActionButton code to remove unneeded code.

Remove code that is no longer needed since minSdk for support library is API 14.
This code collapses FloatingActionButtonImpl, FloatingActionButtonGingerbread
and FloatingActionButtonIcs into one class.

Bug: 32794064
Test: ./gradlew clean assemble still works
Change-Id: Id20c0d1807e08ab11ece63883debe2682cfa815f
loatingActionButtonLollipop.java
ae7189188acb2bc972b08d9fbd59939f341c7829 06-Jan-2017 Aurimas Liutikas <aurimas@google.com> Move to using ValueAnimator directly instead of compat versions.

ValueAnimator can now be used directly given that our minSdk is 14.

Bug: 32794064
Test: ./gradlew clean assemble still works
Change-Id: Ibf0111b104eaea10acf33c8d54a3275fdfa0c1a4
loatingActionButtonLollipop.java
e22ae93397361d1bd5568fa51d82e2f7553712e1 08-Dec-2016 Alan Viverette <alanv@google.com> Remove unnecessary @TargetApi annotations

Bug: 33412815
Test: ./gradlew assemble
Change-Id: I0be3358fb97d6e637357c253f3f43f39355a643a
ircularBorderDrawableLollipop.java
loatingActionButtonLollipop.java
iewUtilsLollipop.java
829c95c8a3fd508b798bedff028d7d6b55e16ce5 29-Nov-2016 Andrei Stingaceanu <stg@google.com> Support design - fix FAB elevation in API 21

The animations are really broken here. A hacky fix
has been added in the past for versions 22-24 and now
for version 21 just by bluntly set the elevation and
translationZ by respecting the logic in the animations
for 22-24.

Bug: 33126409
Test: identified this bug from an existing test.
Change-Id: I0cba73cda030ef7a66ffad452bc0f14b7687fc52
loatingActionButtonLollipop.java
1c4d0c9dec028624cd661be53e68b1464b14ab7f 10-Nov-2016 Chris Banes <chrisbanes@google.com> Fix FAB setBackgroundTintList on L+

Caused by LayerDrawable caching its isStateful
value, meaning that if our shape drawable is not
stateful at instantiation (which is the default),
and a stateful tint is later set, it doesn't work
across state changes.

Test: included
BUG: 32785441

Change-Id: Id81951c5312785821f577c04ff657042edd899ed
loatingActionButtonLollipop.java
d48be49b21fb4d215eed42960a8c6163ecb7d606 01-Nov-2016 Andrei Stingaceanu <stg@google.com> Merge "Support design - fix FloatingActionButton elevation"
12f2d0a79f329825b907c8dead3e78b09f5dd8dc 26-Oct-2016 Andrei Stingaceanu <stg@google.com> Support design - fix FloatingActionButton elevation

This bug has been fixed in the framework for api 25+ but
a between 21-24 still triggers a NPE when an animation has
a delay set (via "setDelay" or "after"). The current
workaround is introducing a no-op animation which mimics
the delay on the following one by having a duration.

Bug: 32136707
Test: ./gradlew support-design:connectedCheck --info \
--daemon -Pandroid.testInstrumentationRunnerArg\
uments.class=android.support.design.widget.Float\
ingActionButtonTest

Change-Id: I75722d6e142c0d75170ef912b261c1d7a9b55a1e
loatingActionButtonLollipop.java
8f886fe8c7e23fe6ccb8734167c960c2ed3429c3 25-Oct-2016 Alan Viverette <alanv@google.com> Annotate support classes with RequiresApi / TargetApi

Also inlines version codes in SDK_INT checks so that lint
understands them. Removes some unnecessary TargetApi annotations.

Bug: 29630077
Change-Id: I67a9235480ca14711b0496a54beca5c0e6c6b2d1
ircularBorderDrawableLollipop.java
loatingActionButtonLollipop.java
iewUtilsLollipop.java
c07c8e1e74a026c0d9e3a9dd119913436380be38 12-Jul-2016 Chris Banes <chrisbanes@google.com> Tweak AppBarLayout elevation changes

First, we've sped up the animations to 150ms, from
the default 300ms. Also simplified the state list
animation (its does exactly the same thing).

Second, we now jump the animation if we have any
overlapping scrolling views.

BUG: 29938204

Change-Id: Ie5ee85a4fe6154e318c314d0d671b367115efaf3
iewUtilsLollipop.java
67a57dc8cb582d1dc66a2a87fbe51b48ab87168d 23-Jul-2016 Justin Klaassen <justinklaassen@google.com> Fix NPE in FAB StateListAnimator

- Added workaround for a bug in ValueAnimator that results in a NPE when
a start delay is set and the anim is later cancelled by the
StateListAnimator.
- Properly added animators to AnimatorSet using AnimatorSet#Builder.

Bug: 30190459
Change-Id: I51e1c3c3dfcecb5c89c315191a5f054f49f94669
loatingActionButtonLollipop.java
7cda36a81d8c91cf30194066fb0d23bbf2afb71a 15-Jul-2016 Chris Banes <chrisbanes@google.com> Fix FAB StateListAnimator durations

Elevation animators should have a 0ms duration like
button_state_list_anim_material.xml

BUG: 30153071
Change-Id: I04c4f32914dd527062d730d28c69187f895b7e03
loatingActionButtonLollipop.java
5a0083cc8328f05b15efe0293b7aa83723cdd9ad 05-Jul-2016 Chris Banes <chrisbanes@google.com> Move FloatingActionButton shadow to use ValueAnimatorCompat

Moves us away from using the old custom Animation
code. Had to change some of the ValueAnimatorCompat
API, which is why this CL looks so large (it's not
really).

BUG: 29974832

Change-Id: I1f66565e0b2053556feccd746f72753ff027fc09
loatingActionButtonLollipop.java
f41803d681c7761268dd9e3c89db3d829973519f 22-Jun-2016 Chris Banes <chrisbanes@google.com> Merge "Update FloatingActionButton's elevation handling"
3035e10317eb12c58153d8c651a791896ea3094e 13-Jun-2016 Chris Banes <chrisbanes@google.com> Fix setFitsSystemWindows not working with CoordinatorLayout

This CLs moves some of the logic around so that CoL
responds correctly to setFitsSystemWindows calls.

BUG: 29270333
Change-Id: Id1fd8db914de7c6729c74ec6740d19f538e6fdac
oordinatorLayoutInsetsHelperLollipop.java
f0aec033caa46d2cdddad020b8748d24f921ad5b 20-Jun-2016 Chris Banes <chrisbanes@google.com> Update FloatingActionButton's elevation handling

We now use a StateListAnimator for both the elevation
and translationZ handling. Matches the framework's button
impl more closely.

Also adds a disabled state which we didn't previously
handle.

Change-Id: I1c86d71495d75680d542a4fab7a1e87834ed572d
loatingActionButtonLollipop.java
15375aa6fd54b036f97f99229aefab2822c8a1c9 24-May-2016 Aurimas Liutikas <aurimas@google.com> Add missing @Override annotations in support library code.

Change-Id: Ifcc3a20b54d6a14b0a14aa0f48e642cf7e8c0e70
oordinatorLayoutInsetsHelperLollipop.java
loatingActionButtonLollipop.java
1a8e4886abbc35e479cddb7b4acd601cede2fd8a 19-May-2015 Chris Banes <chrisbanes@google.com> Use StateListAnimator for AppBarLayout elevation changes

Currently the logic for updating an AppBarLayout's elevation
is baked into the code, and can't be customized. This CL
extracts this into a StateListAnimator which has the added
benefit of now animating the elevation.

BUG: 22008506

Change-Id: I4786a9b56b9f3c18ee0610a16036990939a99101
iewUtilsLollipop.java
6d7a9a02765e4cb497081e66dafb5d9fa76f4312 19-Oct-2015 Chris Banes <chrisbanes@google.com> Add compat padding to FloatingActionButton ala CardView

Defaults to disabled, but when enabled, FloatingActionButton
will have the same metrics on both Lollipop+, and older
platforms where the compat shadow is used.

BUG: 25274672

Change-Id: Ide28651124ab31472c588e7d65a32999ec674445
loatingActionButtonLollipop.java
3d81c900316412b4130bf40e0dd8b0d3d3a93e78 04-Nov-2015 Chris Banes <chrisbanes@google.com> Add getter for FAB content background

BUG: 25450451
Change-Id: I513e5fe2f9e0fb7013f03f6d1f8edd957d5ab8dd
loatingActionButtonLollipop.java
fc780bab91bd4275ae2c3b75c3dfb327e008e4db 15-Oct-2015 Chris Banes <chrisbanes@google.com> Respect a FloatingActionButton's visibility when anchored

Currently when a FAB is anchored to an AppBarLayout, it
controls the FAB's visibility (for the automatic seam
functionality). This meant that any user defined visibility
was ignored since we had no way of distinguishing what was
user defined or not.

This CL fixes that by recording what the user defined visibility
is, and only updates the FAB's visibility from the ABL if the user
has set it to be visible.

BUG: 24973851

Change-Id: Iee9e95a6eac551934844fbfdbd9ca8fe68bcb28b
loatingActionButtonLollipop.java
097e80a3c5518c6bf2e9f3f9b55ed9f4b5cc37e8 16-Oct-2015 Chris Banes <chrisbanes@google.com> Fix invisible FloatingActionButton pre-ICS

The mutate workaround doesn't work all of the time.
This CL fixes it by always creating our own
GradientDrawable for the background

BUG: 23373046

Change-Id: I4b478a23b89d6721ebead62c5bb67505a5737611
loatingActionButtonLollipop.java
9ec922c215ed95a4bbd8bd7940e81dcfe6926893 19-Oct-2015 Chris Banes <chrisbanes@google.com> Fix FAB using ICS APIs on Honeycomb

Change-Id: I185c1a44bba205834345a8aa32158ece7855f223
loatingActionButtonLollipop.java
8603357c9433b9aef1805413a3bfc4a4f8decc50 15-Oct-2015 Chris Banes <chrisbanes@google.com> Make sure that FAB's border respects tint updates

BUG: 24699109
Change-Id: I15469769242abfe9edf8b87b2f88f46dac7aa3de
ircularBorderDrawableLollipop.java
loatingActionButtonLollipop.java
d9770e12c8ff2d4417700492c6616572be897e93 29-Sep-2015 Chris Banes <chrisbanes@google.com> Add support for rotating a FAB pre-L

As the shadow is baked into the view pre-L, the shadow
is also rotated when the view is rotated. This CLs
fixes that by offsetting any view property rotation
in both the shadow and border drawables.

BUG: 24464887

Change-Id: I8c39fbe90a2251a5a79b3f31328d47e55f74f931
loatingActionButtonLollipop.java
a0f7a48850082ad48cf2639579331d8c792dbade 28-Jul-2015 Chris Banes <chrisbanes@google.com> Mutate FAB backgrounds before tinting

BUG: 22782850
Change-Id: I6c3281f7194c7f2e7989ad270469bcd8eaf953b6
loatingActionButtonLollipop.java
be48ed9161c09c4b2178ab6dbe28638222809fc7 05-Jun-2015 Chris Banes <chrisbanes@google.com> Show/hide FloatingActionButton improvements

We now have an explicit show()/hide() method so that
developers can use the spec'd animation.

Also fixed an issue where the FAB would be animated in,
overriding the developers set vsibility.

BUG: 21652571
BUG: 21652427
BUG: 21689751

Change-Id: I248d49b812c018e6d46a6ccde262433868ae272e
loatingActionButtonLollipop.java
5e690a713ed3e3a7d4092838e5ac24c761a8c527 03-Jun-2015 Chris Banes <chrisbanes@google.com> Fix setRippleColor on FloatingActionButton

BUG: 21613667
Change-Id: I962acc51e3a4cffee18b11303b300399fe7598fa
loatingActionButtonLollipop.java
16804c4a76276eb28fe9f4227461818003c32386 22-May-2015 Chris Banes <chrisbanes@google.com> Fix FAB shadow on L

The outline wasn't set on it, resulting in an
empty outline and no shadow.

Change-Id: Ie9f43f7404886894bd573dffafb751a4175c6e6a
ircularBorderDrawableLollipop.java
80de0674c28a2bd9ade11f24a3b0e46ea83b6847 14-May-2015 Chris Banes <chrisbanes@google.com> Improve FloatingActionButton border implementation

The previous impl had overdraw issues as it draw a whole
oval behind another large opaque oval. This implementation
moves us to a custom Drawable which draw a stroke oval.

It also allows us to move to a custom LinearGradient shader
to more closely match UX's spec.

Change-Id: I93f2c3c444d0a23fd542f2a35ac1d43d4f699bd6
ircularBorderDrawableLollipop.java
loatingActionButtonLollipop.java
e67ce4f1db321ca743748ae3f9f21c5607e0566f 14-May-2015 Chris Banes <chrisbanes@google.com> Fix FloatingActionButton empty background on L

Caused my GradientDrawable not support tinting on
L. Need to make sure that DrawableCompat.wrap() is
given the GradientDrawable, not a wrapper.

Change-Id: I320c1ba851576e40b98419500f12c74a75c1e28b
loatingActionButtonLollipop.java
cd78954a2b32d9c22686f12c194fac7e49566cf6 13-May-2015 Chris Banes <chrisbanes@google.com> FloatingActionButton border DO NOT MERGE

This CLs add functionality to add a circular bevel
like stroke around the FAB. Also tidied up the
DrawableWrapper tinting to make sure we invalidate
the tint correctly.

BUG: 21087747

Change-Id: I97e8309574986cdb256c4a9aa7d2c2d1f20d87b1
loatingActionButtonLollipop.java
6ba61c5c79fe025036593c9daf79cb65299bb0b6 01-May-2015 Chris Banes <chrisbanes@google.com> Window inset support for CoL + AppBarLayout DO NOT MERGE

CoL now handles and consumes all window insets given
to it on L+. AppBarLayout and it's Behaviors have special
handling to ensure it's view are measured correctly.
CollapsingToolbarLayout has handling to ensure that view are
not laid out within the insets.

BUG: 20652400

Change-Id: Ifa8677aa8abeaf443c53bbe6b53e29ff1859b18d
oordinatorLayoutInsetsHelperLollipop.java
50dfc33a565c4aefe6d5e844c93aa24a74cb80b3 09-Apr-2015 Chris Banes <chrisbanes@google.com> AppBarLayout improvements

- De-jank the scrim animation
- Add elevation support
- Tidy up API
- Fix 'quick scroll' functionality

Change-Id: If9b494a7626e94ad8a4f034f65ab07bd34cf2871
iewUtilsLollipop.java
124d52000d70f3a0ef64b1c70b72238441cbf0ed 18-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Support FAB in LayoutLib.

LayoutLib doesn't support interpolator. Skip it in design mode.

Change-Id: I736cc9f0a5c0d165cad80939b5fcf0db3abc6cbe
loatingActionButtonLollipop.java
7e82b99953680915596eaf0eb35927388e574ca8 27-Jan-2015 Chris Banes <chrisbanes@google.com> Add tintable Drawables to support-v4

Works by using AppCompat's tinting Drawbale wrapper
in support v4. I've also moved over AppCompat and
design lib to use DrawableCompat.

I've also added a workaround due to GradientDrawable
not supporting tinting of Lollipop.

Change-Id: Ifa178eae99207051bf72ba6b9f3148cdcbe1579f
loatingActionButtonLollipop.java
9840efe3dbdc7026521da8576574c55120782f6c 06-Jan-2015 Chris Banes <chrisbanes@google.com> Floating Action Button

Includes a tweaked ShadowDrawableWrapper which supports
circular shapes. FloatingActionButton also support a
internal StateListAnimator for pre-Lollipop.

Change-Id: Ia88c28c2ab0da0779f1092495e3a417969cb1d2a
loatingActionButtonLollipop.java