Fix FAB using ICS APIs on Honeycomb
Change-Id: I185c1a44bba205834345a8aa32158ece7855f223
diff --git a/design/Android.mk b/design/Android.mk
index f2fc797..c966a22 100644
--- a/design/Android.mk
+++ b/design/Android.mk
@@ -80,12 +80,24 @@
android-support-v7-recyclerview
include $(BUILD_STATIC_JAVA_LIBRARY)
+# A helper sub-library that makes direct use of ICS APIs
+include $(CLEAR_VARS)
+LOCAL_MODULE := android-support-design-ics
+LOCAL_SDK_VERSION := 14
+LOCAL_SRC_FILES := $(call all-java-files-under, ics)
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-design-honeycomb-mr1
+LOCAL_JAVA_LIBRARIES := android-support-design-res \
+ android-support-v4 \
+ android-support-v7-appcompat \
+ android-support-v7-recyclerview
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
# A helper sub-library that makes direct use of Lollipop APIs
include $(CLEAR_VARS)
LOCAL_MODULE := android-support-design-lollipop
LOCAL_SDK_VERSION := 21
LOCAL_SRC_FILES := $(call all-java-files-under, lollipop)
-LOCAL_STATIC_JAVA_LIBRARIES := android-support-design-honeycomb-mr1
+LOCAL_STATIC_JAVA_LIBRARIES := android-support-design-ics
LOCAL_JAVA_LIBRARIES := android-support-design-res \
android-support-v4 \
android-support-v7-appcompat \
diff --git a/design/build.gradle b/design/build.gradle
index af46827..401ec8e 100644
--- a/design/build.gradle
+++ b/design/build.gradle
@@ -13,7 +13,7 @@
sourceSets {
main.manifest.srcFile 'AndroidManifest.xml'
- main.java.srcDirs = ['base', 'eclair-mr1', 'honeycomb', 'honeycomb-mr1', 'lollipop', 'src']
+ main.java.srcDirs = ['base', 'eclair-mr1', 'honeycomb', 'honeycomb-mr1', 'ics', 'lollipop', 'src']
main.res.srcDirs 'res', 'res-public'
main.assets.srcDir 'assets'
main.resources.srcDir 'src'
diff --git a/design/honeycomb-mr1/android/support/design/widget/FloatingActionButtonHoneycombMr1.java b/design/ics/android/support/design/widget/FloatingActionButtonIcs.java
similarity index 96%
rename from design/honeycomb-mr1/android/support/design/widget/FloatingActionButtonHoneycombMr1.java
rename to design/ics/android/support/design/widget/FloatingActionButtonIcs.java
index 50c54e5..28fcd9a2 100644
--- a/design/honeycomb-mr1/android/support/design/widget/FloatingActionButtonHoneycombMr1.java
+++ b/design/ics/android/support/design/widget/FloatingActionButtonIcs.java
@@ -22,11 +22,11 @@
import android.support.v4.view.ViewCompat;
import android.view.View;
-class FloatingActionButtonHoneycombMr1 extends FloatingActionButtonEclairMr1 {
+class FloatingActionButtonIcs extends FloatingActionButtonEclairMr1 {
private boolean mIsHiding;
- FloatingActionButtonHoneycombMr1(View view, ShadowViewDelegate shadowViewDelegate) {
+ FloatingActionButtonIcs(View view, ShadowViewDelegate shadowViewDelegate) {
super(view, shadowViewDelegate);
}
diff --git a/design/lollipop/android/support/design/widget/FloatingActionButtonLollipop.java b/design/lollipop/android/support/design/widget/FloatingActionButtonLollipop.java
index 7dc2df0..b26ef76 100644
--- a/design/lollipop/android/support/design/widget/FloatingActionButtonLollipop.java
+++ b/design/lollipop/android/support/design/widget/FloatingActionButtonLollipop.java
@@ -33,7 +33,7 @@
import android.view.animation.Interpolator;
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
-class FloatingActionButtonLollipop extends FloatingActionButtonHoneycombMr1 {
+class FloatingActionButtonLollipop extends FloatingActionButtonIcs {
private Interpolator mInterpolator;
diff --git a/design/src/android/support/design/widget/FloatingActionButton.java b/design/src/android/support/design/widget/FloatingActionButton.java
index 6f80498..2edf4d6 100644
--- a/design/src/android/support/design/widget/FloatingActionButton.java
+++ b/design/src/android/support/design/widget/FloatingActionButton.java
@@ -147,8 +147,8 @@
final int sdk = Build.VERSION.SDK_INT;
if (sdk >= 21) {
mImpl = new FloatingActionButtonLollipop(this, delegate);
- } else if (sdk >= 12) {
- mImpl = new FloatingActionButtonHoneycombMr1(this, delegate);
+ } else if (sdk >= 14) {
+ mImpl = new FloatingActionButtonIcs(this, delegate);
} else {
mImpl = new FloatingActionButtonEclairMr1(this, delegate);
}