From bde319ecd46ca4f56e03845a036c33b6c40d0e78 Mon Sep 17 00:00:00 2001 From: Ammar Githam Date: Sat, 3 Apr 2021 20:23:03 +0900 Subject: [PATCH] 1. Fix NavDirection compile issue. 2. Fix null pointer if tab order pref is null. 3. Set initial tab order in pref if empty. --- .../NotificationsViewerFragment.java | 7 ++-- .../java/awais/instagrabber/utils/Utils.java | 7 +++- .../notification_viewer_nav_graph.xml | 38 +++++++++---------- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/app/src/main/java/awais/instagrabber/fragments/NotificationsViewerFragment.java b/app/src/main/java/awais/instagrabber/fragments/NotificationsViewerFragment.java index 77157ab6..60c4a7be 100644 --- a/app/src/main/java/awais/instagrabber/fragments/NotificationsViewerFragment.java +++ b/app/src/main/java/awais/instagrabber/fragments/NotificationsViewerFragment.java @@ -79,7 +79,7 @@ public final class NotificationsViewerFragment extends Fragment implements Swipe binding.swipeRefreshLayout.setRefreshing(false); Toast.makeText(getContext(), t.getMessage(), Toast.LENGTH_SHORT).show(); } - catch(Throwable e) {} + catch(Throwable ignored) {} } }; @@ -92,7 +92,7 @@ public final class NotificationsViewerFragment extends Fragment implements Swipe @Override public void onPreviewClick(final Notification model) { final NotificationImage notificationImage = model.getArgs().getMedia().get(0); - final long mediaId = Long.valueOf(notificationImage.getId().split("_")[0]); + final long mediaId = Long.parseLong(notificationImage.getId().split("_")[0]); if (model.getType() == NotificationType.RESPONDED_STORY) { final NavDirections action = NotificationsViewerFragmentDirections .actionNotificationsViewerFragmentToStoryViewerFragment( @@ -277,8 +277,7 @@ public final class NotificationsViewerFragment extends Fragment implements Swipe } private void openProfile(final String username) { - final NavDirections action = NotificationsViewerFragmentDirections - .actionGlobalProfileFragment("@" + username); + final NavDirections action = NotificationsViewerFragmentDirections.actionGlobalProfileFragment("@" + username); NavHostFragment.findNavController(this).navigate(action); } } \ No newline at end of file diff --git a/app/src/main/java/awais/instagrabber/utils/Utils.java b/app/src/main/java/awais/instagrabber/utils/Utils.java index 6f966c33..e6824d84 100644 --- a/app/src/main/java/awais/instagrabber/utils/Utils.java +++ b/app/src/main/java/awais/instagrabber/utils/Utils.java @@ -31,7 +31,6 @@ import android.webkit.MimeTypeMap; import android.widget.Toast; import androidx.annotation.DrawableRes; -import androidx.annotation.IdRes; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.ActionBar; @@ -474,7 +473,10 @@ public final class Utils { final List navGraphNameList = Arrays.asList(navGraphNames); if (TextUtils.isEmpty(tabOrderString)) { // Use top 5 entries for default list - return navGraphNameList.subList(0, 5); + final List top5navGraphNames = navGraphNameList.subList(0, 5); + final String newOrderString = android.text.TextUtils.join(",", top5navGraphNames); + Utils.settingsHelper.putString(PreferenceKeys.PREF_TAB_ORDER, newOrderString); + return top5navGraphNames; } // Make sure that the list from preference does not contain any invalid values final List orderGraphNames = Arrays.stream(tabOrderString.split(",")) @@ -489,6 +491,7 @@ public final class Utils { } public static boolean isNavRootInCurrentTabs(final String navRootString) { + if (navRootString == null || tabOrderString == null) return false; return tabOrderString.contains(navRootString); } } diff --git a/app/src/main/res/navigation/notification_viewer_nav_graph.xml b/app/src/main/res/navigation/notification_viewer_nav_graph.xml index 8f80b18e..8f838474 100644 --- a/app/src/main/res/navigation/notification_viewer_nav_graph.xml +++ b/app/src/main/res/navigation/notification_viewer_nav_graph.xml @@ -5,25 +5,6 @@ android:id="@+id/notification_viewer_nav_graph" app:startDestination="@id/notificationsViewer"> - - - - - - + + + + + + \ No newline at end of file