From 6ce2f1696348eb073646bddc54f13b839cfbfb16 Mon Sep 17 00:00:00 2001 From: micheljautzy Date: Fri, 23 Jun 2017 16:27:44 +0200 Subject: [PATCH] hello --- src/android/NavigationBar.java | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/src/android/NavigationBar.java b/src/android/NavigationBar.java index 230b752..98fd85e 100755 --- a/src/android/NavigationBar.java +++ b/src/android/NavigationBar.java @@ -15,6 +15,7 @@ import org.apache.cordova.CordovaWebView; import android.annotation.TargetApi; import android.app.Activity; import android.os.Build; +import android.util.DisplayMetrics; import android.util.Log; import android.content.Context; @@ -105,15 +106,30 @@ public class NavigationBar extends CordovaPlugin { public void run() { - Activity mikeActivity=cordova.getActivity(); - Context context=mikeActivity.getApplicationContext(); - int resourceId = mikeActivity.getResources().getIdentifier("navigation_bar_height", "dimen", "android"); + //Activity mikeActivity=cordova.getActivity(); + //Context context=mikeActivity.getApplicationContext(); + //int resourceId = mikeActivity.getResources().getIdentifier("navigation_bar_height", "dimen", "android"); - int pixelHeight = 0; - if (resourceId > 0) { - pixelHeight = mikeActivity.getResources().getDimensionPixelSize(resourceId); - } + //int pixelHeight = 0; + //if (resourceId > 0) { + // pixelHeight = mikeActivity.getResources().getDimensionPixelSize(resourceId); + //} + + int pixelHeight = 0; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { + DisplayMetrics metrics = new DisplayMetrics(); + Activity mikeActivity=cordova.getActivity(); + + mikeActivity.getWindowManager().getDefaultDisplay().getMetrics(metrics); + int usableHeight = metrics.heightPixels; + mikeActivity.getWindowManager().getDefaultDisplay().getRealMetrics(metrics); + int realHeight = metrics.heightPixels; + if (realHeight > usableHeight){ + pixelHeight = realHeight - usableHeight; + } + } + PluginResult pr = new PluginResult(PluginResult.Status.OK, pixelHeight); delayedCC.sendPluginResult(pr);