diff --git a/build.gradle b/build.gradle index 4e5e6b4..492788b 100644 --- a/build.gradle +++ b/build.gradle @@ -4,6 +4,6 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:1.0.0' + classpath 'com.android.tools.build:gradle:1.3.0' } } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 574aa48..98a3449 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Wed May 07 11:40:46 MSK 2014 +#Thu Oct 15 09:53:28 CST 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-1.11-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip diff --git a/library/build.gradle b/library/build.gradle index 61852f4..d65da14 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.library' android { - compileSdkVersion 21 - buildToolsVersion "21.1.1" + compileSdkVersion 23 + buildToolsVersion "23.0.1" defaultConfig { minSdkVersion 4 - targetSdkVersion 21 + targetSdkVersion 23 versionCode 5 versionName "1.2.0" } @@ -20,5 +20,9 @@ android { } } +dependencies { + compile 'com.android.support:appcompat-v7:23.0.1' +} + // Used to push in maven apply from: 'https://raw.github.com/chrisbanes/gradle-mvn-push/master/gradle-mvn-push.gradle' \ No newline at end of file diff --git a/library/src/com/devspark/appmsg/AppMsg.java b/library/src/com/devspark/appmsg/AppMsg.java index 3cb66ab..2cef7b1 100755 --- a/library/src/com/devspark/appmsg/AppMsg.java +++ b/library/src/com/devspark/appmsg/AppMsg.java @@ -19,6 +19,10 @@ import android.app.Activity; import android.content.Context; import android.content.res.Resources; +import android.os.Build; +import android.support.v7.app.ActionBar; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.internal.app.ToolbarActionBar; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; @@ -336,6 +340,8 @@ private static AppMsg makeText(Activity context, CharSequence text, Style style, result.mDuration = style.duration; result.mFloating = floating; + result.setLayoutParams(getLayoutParams(context)); + return result; } @@ -369,6 +375,8 @@ private static AppMsg makeText(Activity context, CharSequence text, Style style, result.mView = view; result.mDuration = style.duration; result.mFloating = floating; + + result.setLayoutParams(getLayoutParams(context)); view.setOnClickListener(clickListener); @@ -426,6 +434,31 @@ public static AppMsg makeText(Activity context, int resId, Style style, int layo return makeText(context, context.getResources().getText(resId), style, layoutId); } + private static FrameLayout.LayoutParams getLayoutParams(Activity context){ + if (context instanceof AppCompatActivity) { + android.support.v7.app.ActionBar supportActionBar = ((AppCompatActivity) context).getSupportActionBar(); + if (supportActionBar instanceof ToolbarActionBar) { + FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams( + FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT); + layoutParams.setMargins(0, supportActionBar.getHeight(), 0, 0); + return layoutParams; + } + } + // for sdk >= android L + // kind of hacky + if (Build.VERSION.SDK_INT >= 21) { + android.app.ActionBar actionBar = context.getActionBar(); + if (actionBar != null && actionBar.getClass().getName().equals("com.android.internal.app.ToolbarActionBar")) { + FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams( + FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT); + layoutParams.setMargins(0, actionBar.getHeight(), 0, 0); + return layoutParams; + } + return null; + } + return null; + } + /** * Show the view for the specified duration. */ diff --git a/sample/AndroidManifest.xml b/sample/AndroidManifest.xml index 2d7795a..934a5df 100644 --- a/sample/AndroidManifest.xml +++ b/sample/AndroidManifest.xml @@ -7,7 +7,8 @@ android:theme="@style/Theme.AppCompat.Light.DarkActionBar"> + android:windowSoftInputMode="stateUnchanged" + android:theme="@style/AppTheme.NoActionBar"> diff --git a/sample/build.gradle b/sample/build.gradle index 773465d..5db553f 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 21 - buildToolsVersion "21.1.1" + compileSdkVersion 23 + buildToolsVersion "23.0.1" defaultConfig { - minSdkVersion 7 - targetSdkVersion 21 + minSdkVersion 21 + targetSdkVersion 23 versionCode 5 versionName "1.2.0" } @@ -22,5 +22,5 @@ android { dependencies { compile project(':library') - compile 'com.android.support:appcompat-v7:21.0.2' + compile 'com.android.support:appcompat-v7:23.0.1' } \ No newline at end of file diff --git a/sample/res/layout/activity_main.xml b/sample/res/layout/activity_main.xml index 92c0a16..1b35c22 100644 --- a/sample/res/layout/activity_main.xml +++ b/sample/res/layout/activity_main.xml @@ -1,91 +1,97 @@ - + android:orientation="vertical"> - + + + android:fillViewport="true"> - - - - + android:layout_height="match_parent" + android:animateLayoutChanges="true" + android:gravity="center" + android:orientation="vertical" + android:padding="48dp"> - + - + - + - + -