diff --git a/example/.gitignore b/example/.gitignore index dddc601..76f1acd 100644 --- a/example/.gitignore +++ b/example/.gitignore @@ -1,8 +1,6 @@ -.gradle -.idea +.* *.iml local.properties -.externalNativeBuild *.iml build 01.HelloWorld/01.HelloWorld diff --git a/example/01.HelloWorld_Android/build.gradle b/example/01.HelloWorld_Android/build.gradle index de27f8e..2604c8a 100644 --- a/example/01.HelloWorld_Android/build.gradle +++ b/example/01.HelloWorld_Android/build.gradle @@ -4,7 +4,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:3.4.2' + classpath 'com.android.tools.build:gradle:4.0.2' } } @@ -18,19 +18,19 @@ allprojects { apply plugin: 'com.android.application' android { - compileSdkVersion 29 - buildToolsVersion "29.0.2" + compileSdkVersion 30 + buildToolsVersion "30.0.2" defaultConfig { applicationId "pl.grupapracuj.hermes.helloworld" minSdkVersion 21 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0" externalNativeBuild { cmake { arguments "-DANDROID_STL=c++_static" abiFilters.addAll(["armeabi-v7a", "arm64-v8a", "x86", "x86_64"]) - cppFlags.addAll(["-std=c++17", "-frtti", "-fexceptions", "-I${project.rootDir}/../..", "-I${project.rootDir}/../../include", "-I${project.rootDir}/../../depend/jsoncpp/include"]) + cppFlags.addAll(["-std=c++17", "-frtti", "-fexceptions", "-I" + project.rootDir + "/../..", "-I" + project.rootDir + "/../../include", "-I" + project.rootDir + "/../../depend/jsoncpp/include"]) } } } diff --git a/example/01.HelloWorld_Android/gradle/wrapper/gradle-wrapper.properties b/example/01.HelloWorld_Android/gradle/wrapper/gradle-wrapper.properties index 6d62751..ab5b783 100644 --- a/example/01.HelloWorld_Android/gradle/wrapper/gradle-wrapper.properties +++ b/example/01.HelloWorld_Android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-all.zip diff --git a/example/01.HelloWorld_Android/source/java/pl/grupapracuj/hermes/helloworld/ActivityMain.java b/example/01.HelloWorld_Android/source/java/pl/grupapracuj/hermes/helloworld/ActivityMain.java index e6795d7..780e76d 100644 --- a/example/01.HelloWorld_Android/source/java/pl/grupapracuj/hermes/helloworld/ActivityMain.java +++ b/example/01.HelloWorld_Android/source/java/pl/grupapracuj/hermes/helloworld/ActivityMain.java @@ -6,7 +6,9 @@ import android.app.Activity; import android.graphics.Color; +import android.graphics.Insets; import android.graphics.Rect; +import android.os.Build; import android.os.Bundle; import android.util.DisplayMetrics; import android.util.TypedValue; @@ -14,6 +16,8 @@ import android.view.View; import android.view.ViewGroup; import android.view.Window; +import android.view.WindowInsets; +import android.view.WindowMetrics; import android.widget.Button; import android.widget.FrameLayout; import android.widget.TextView; @@ -72,9 +76,21 @@ private void callbackExecute(String pOutputText) { } private void buildLayout() { - DisplayMetrics displayMetrics = new DisplayMetrics(); - getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); - final int blockSize = displayMetrics.widthPixels / 10; + int width; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) + { + WindowMetrics windowMetrics = getWindowManager().getCurrentWindowMetrics(); + Insets insets = windowMetrics.getWindowInsets().getInsetsIgnoringVisibility(WindowInsets.Type.systemBars()); + width = windowMetrics.getBounds().width() - insets.left - insets.right; + } + else + { + DisplayMetrics displayMetrics = new DisplayMetrics(); + getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); + width = displayMetrics.widthPixels; + } + + final int blockSize = width / 10; final int orange = Color.rgb(255, 130, 28); FrameLayout layout = new FrameLayout(this); @@ -89,7 +105,7 @@ private void buildLayout() { mTextView.setText(""); layout.addView(mTextView); { - FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(displayMetrics.widthPixels - blockSize * 2, blockSize * 3); + FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(width - blockSize * 2, blockSize * 3); layoutParams.leftMargin = blockSize; layoutParams.topMargin = blockSize; mTextView.setLayoutParams(layoutParams); @@ -108,7 +124,7 @@ private void buildLayout() { mButton.setPadding(0, (int)(mButton.getPaint().getFontMetrics().top - bounds.top - 0.5f) + blockSize / 4, 0, 0); mButton.setText(displayName); - FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(displayMetrics.widthPixels - blockSize * 2, (int)(blockSize * 1.5f)); + FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(width - blockSize * 2, (int)(blockSize * 1.5f)); layoutParams.leftMargin = blockSize; layoutParams.topMargin = blockSize * 5; mButton.setLayoutParams(layoutParams); diff --git a/readme.txt b/readme.txt index ff1caf4..01f2055 100755 --- a/readme.txt +++ b/readme.txt @@ -17,7 +17,7 @@ DESCRIPTION: VERSION: - 1.2.0 + 1.2.1 SUPPORTED PLATFORMS: