From 3bf4aa86d00968ae74889d65fd740e3c30a1ee81 Mon Sep 17 00:00:00 2001 From: Ammar Githam Date: Sat, 19 Sep 2020 16:54:37 +0900 Subject: [PATCH] Fix weird layout when keyboard is open and indexoutofbounds when fetching profile details --- app/src/main/AndroidManifest.xml | 2 +- .../awais/instagrabber/fragments/main/ProfileFragment.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 23bc499b..d0847f2f 100755 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -21,7 +21,7 @@ android:name=".activities.MainActivity" android:launchMode="singleTop" android:taskAffinity=".Main" - android:windowSoftInputMode="adjustResize"> + android:windowSoftInputMode="adjustPan"> diff --git a/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java b/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java index 037e30ca..6e681d3a 100644 --- a/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java +++ b/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java @@ -370,6 +370,7 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe } if (TextUtils.isEmpty(username) && !isLoggedIn) { binding.infoContainer.setVisibility(View.GONE); + binding.swipeRefreshLayout.setEnabled(false); binding.privatePage1.setImageResource(R.drawable.ic_outline_info_24); binding.privatePage2.setText(R.string.no_acc); final NestedCoordinatorLayout.LayoutParams layoutParams = (NestedCoordinatorLayout.LayoutParams) binding.privatePage.getLayoutParams(); @@ -378,6 +379,7 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe binding.privatePage.setVisibility(View.VISIBLE); return; } + binding.swipeRefreshLayout.setEnabled(true); setupPosts(); setupHighlights(); setupCommonListeners(); @@ -412,6 +414,7 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe } private void fetchProfileDetails() { + if (TextUtils.isEmpty(username)) return; new ProfileFetcher(username.substring(1), profileModel -> { if (getContext() == null) return; this.profileModel = profileModel;