From ebaa0b4f477ae5f140e6b7a67d92610b72e59a72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20P=C3=B3=C5=82grabia?= Date: Thu, 27 Oct 2016 22:01:37 +0200 Subject: [PATCH] Large and horizontal devices - special view for panoramio --- .../pl/tpolgrabia/urbanexplorer/AppConstants.java | 2 +- .../handlers/PanoramioItemLongClickHandler.java | 3 +-- .../handlers/PanoramioSwitchHandler.java | 12 ++++++++++-- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/pl/tpolgrabia/urbanexplorer/AppConstants.java b/app/src/main/java/pl/tpolgrabia/urbanexplorer/AppConstants.java index 448bae5..89c10ee 100644 --- a/app/src/main/java/pl/tpolgrabia/urbanexplorer/AppConstants.java +++ b/app/src/main/java/pl/tpolgrabia/urbanexplorer/AppConstants.java @@ -22,5 +22,5 @@ public class AppConstants { static final String SAVED_CONFIG_KEY = "SAVED_CONFIG_KEY"; public static final String GOOGLE_API_KEY = "AIzaSyBAJoK-pu_qnQ0U8EGjM1Zkz_g8oJV4w2g"; public static final Locale DEF_APP_LOCALE = Locale.ENGLISH; - public static final double PANORAMIO_SHOWER_SIDEBAR_THRESHOLD = 5.0; + public static final double PANORAMIO_SHOWER_SIDEBAR_THRESHOLD = 7.0; } diff --git a/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioItemLongClickHandler.java b/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioItemLongClickHandler.java index 477297d..64bdf1e 100644 --- a/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioItemLongClickHandler.java +++ b/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioItemLongClickHandler.java @@ -36,8 +36,7 @@ public class PanoramioItemLongClickHandler implements AdapterView.OnItemLongClic PanoramioAdapter panAdapter = (PanoramioAdapter) finalLocations.getAdapter(); PanoramioImageInfo photoInfo = panAdapter.getItem(pos); MainActivity activity = (MainActivity) homeFragment.getActivity(); - double dims = PanoramioUtils.calcDiag(activity); - if (dims >= AppConstants.PANORAMIO_SHOWER_SIDEBAR_THRESHOLD) { + if (PanoramioSwitchHandler.enoughLargeAndHorizontal(activity)) { lg.debug("Sending panoramio image event"); EventBus.getDefault().post(new PhotoInfoUpdateEvent(this, photoInfo)); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( diff --git a/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioSwitchHandler.java b/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioSwitchHandler.java index 03c1406..9477b9c 100644 --- a/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioSwitchHandler.java +++ b/app/src/main/java/pl/tpolgrabia/urbanexplorer/handlers/PanoramioSwitchHandler.java @@ -1,5 +1,8 @@ package pl.tpolgrabia.urbanexplorer.handlers; +import android.app.Activity; +import android.content.Context; +import android.util.DisplayMetrics; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import pl.tpolgrabia.panoramiobindings.utils.PanoramioUtils; @@ -25,10 +28,15 @@ public class PanoramioSwitchHandler implements Runnable { public void run() { lg.debug("Switching to home fragment"); mainActivity.switchFragment(new HomeFragment(), HomeFragment.TAG); - double diagInches = PanoramioUtils.calcDiag(mainActivity); - if (diagInches >= AppConstants.PANORAMIO_SHOWER_SIDEBAR_THRESHOLD) { + if (enoughLargeAndHorizontal(mainActivity)) { mainActivity.addFragment(MainActivity.createShowerFragment(null), PanoramioShowerFragment.TAG); // mainActivity.addFragment(new WikiLocationsFragment(), WikiLocationsFragment.TAG); } } + + public static boolean enoughLargeAndHorizontal(Activity ctx) { + DisplayMetrics metrics = PanoramioUtils.calcMetrics(ctx); + return metrics.widthPixels >= metrics.heightPixels // horizontal + && PanoramioUtils.calcDiag(ctx) >= AppConstants.PANORAMIO_SHOWER_SIDEBAR_THRESHOLD; + } }