summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--library/eclair-mr1/res/values/styles.xml8
-rw-r--r--library/main/src/com/android/setupwizardlib/util/SystemBarHelper.java16
-rw-r--r--library/platform/res/values-v21/styles.xml8
3 files changed, 24 insertions, 8 deletions
diff --git a/library/eclair-mr1/res/values/styles.xml b/library/eclair-mr1/res/values/styles.xml
index 88e06e9..9b6b659 100644
--- a/library/eclair-mr1/res/values/styles.xml
+++ b/library/eclair-mr1/res/values/styles.xml
@@ -21,10 +21,12 @@
<style name="SuwThemeMaterial" parent="Theme.AppCompat.NoActionBar">
<item name="android:indeterminateTint" tools:ignore="NewApi">@color/suw_progress_bar_color_dark</item>
+ <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
+ <item name="android:indeterminateTintMode" tools:ignore="NewApi">src_in</item>
<item name="android:textColorLink">@color/suw_link_color_dark</item>
<item name="android:textColorSecondary">@color/suw_color_secondary_dark</item>
<item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
- <item name="android:windowSoftInputMode">adjustPan</item>
+ <item name="android:windowSoftInputMode">adjustResize</item>
<item name="colorAccent">@color/suw_color_accent_dark</item>
<item name="suwCardBackground">@drawable/suw_card_bg_dark</item>
@@ -33,10 +35,12 @@
<style name="SuwThemeMaterial.Light" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:indeterminateTint" tools:ignore="NewApi">@color/suw_progress_bar_color_light</item>
+ <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
+ <item name="android:indeterminateTintMode" tools:ignore="NewApi">src_in</item>
<item name="android:textColorLink">@color/suw_link_color_light</item>
<item name="android:textColorSecondary">@color/suw_color_secondary_light</item>
<item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
- <item name="android:windowSoftInputMode">adjustPan</item>
+ <item name="android:windowSoftInputMode">adjustResize</item>
<item name="colorAccent">@color/suw_color_accent_light</item>
<item name="suwCardBackground">@drawable/suw_card_bg_light</item>
diff --git a/library/main/src/com/android/setupwizardlib/util/SystemBarHelper.java b/library/main/src/com/android/setupwizardlib/util/SystemBarHelper.java
index 4cba014..ff6e05f 100644
--- a/library/main/src/com/android/setupwizardlib/util/SystemBarHelper.java
+++ b/library/main/src/com/android/setupwizardlib/util/SystemBarHelper.java
@@ -219,19 +219,27 @@ public class SystemBarHelper {
@Override
public WindowInsets onApplyWindowInsets(View view, WindowInsets insets) {
+ int bottomInset = insets.getSystemWindowInsetBottom();
final int bottomMargin = Math.max(
insets.getSystemWindowInsetBottom() - mNavigationBarHeight, 0);
- ViewGroup.MarginLayoutParams lp = (ViewGroup.MarginLayoutParams) view.getLayoutParams();
- lp.setMargins(lp.leftMargin, lp.topMargin, lp.rightMargin, bottomMargin);
- view.requestLayout();
+ final ViewGroup.MarginLayoutParams lp =
+ (ViewGroup.MarginLayoutParams) view.getLayoutParams();
+ // Check that we have enough space to apply the bottom margins before applying it.
+ // Otherwise the framework may think that the view is empty and exclude it from layout.
+ if (bottomMargin < lp.bottomMargin + view.getHeight()) {
+ lp.setMargins(lp.leftMargin, lp.topMargin, lp.rightMargin, bottomMargin);
+ view.setLayoutParams(lp);
+ bottomInset = 0;
+ }
+
return insets.replaceSystemWindowInsets(
insets.getSystemWindowInsetLeft(),
insets.getSystemWindowInsetTop(),
insets.getSystemWindowInsetRight(),
- 0 /* bottom */
+ bottomInset
);
}
}
diff --git a/library/platform/res/values-v21/styles.xml b/library/platform/res/values-v21/styles.xml
index 8d311a4..dc9b9b6 100644
--- a/library/platform/res/values-v21/styles.xml
+++ b/library/platform/res/values-v21/styles.xml
@@ -27,12 +27,14 @@
<style name="SuwThemeMaterial" parent="android:Theme.Material.NoActionBar">
<item name="android:colorAccent">@color/suw_color_accent_dark</item>
<item name="android:indeterminateTint">@color/suw_progress_bar_color_dark</item>
+ <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
+ <item name="android:indeterminateTintMode">src_in</item>
<item name="android:navigationBarColor">@android:color/black</item>
<item name="android:statusBarColor">@android:color/black</item>
<item name="android:textColorLink">@color/suw_link_color_dark</item>
<item name="android:textColorSecondary">@color/suw_color_secondary_dark</item>
<item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
- <item name="android:windowSoftInputMode">adjustPan</item>
+ <item name="android:windowSoftInputMode">adjustResize</item>
<item name="suwCardBackground">@drawable/suw_card_bg</item>
<item name="suwNavBarTheme">@style/SuwNavBarThemeDark</item>
@@ -41,12 +43,14 @@
<style name="SuwThemeMaterial.Light" parent="android:Theme.Material.Light.NoActionBar">
<item name="android:colorAccent">@color/suw_color_accent_light</item>
<item name="android:indeterminateTint">@color/suw_progress_bar_color_light</item>
+ <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
+ <item name="android:indeterminateTintMode">src_in</item>
<item name="android:navigationBarColor">@android:color/black</item>
<item name="android:statusBarColor">@android:color/black</item>
<item name="android:textColorLink">@color/suw_link_color_light</item>
<item name="android:textColorSecondary">@color/suw_color_secondary_light</item>
<item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
- <item name="android:windowSoftInputMode">adjustPan</item>
+ <item name="android:windowSoftInputMode">adjustResize</item>
<item name="suwCardBackground">@drawable/suw_card_bg</item>
<item name="suwNavBarTheme">@style/SuwNavBarThemeLight</item>