diff --git a/android/src/com/mapswithme/maps/base/BaseMwmListFragment.java b/android/src/com/mapswithme/maps/base/BaseMwmListFragment.java index 7938290b52..81c81a5d10 100644 --- a/android/src/com/mapswithme/maps/base/BaseMwmListFragment.java +++ b/android/src/com/mapswithme/maps/base/BaseMwmListFragment.java @@ -2,10 +2,10 @@ package com.mapswithme.maps.base; import android.content.Context; import android.os.Bundle; -import androidx.fragment.app.ListFragment; -import androidx.appcompat.widget.Toolbar; import android.view.View; +import androidx.appcompat.widget.Toolbar; +import androidx.fragment.app.ListFragment; import com.mapswithme.maps.R; import com.mapswithme.util.UiUtils; import com.mapswithme.util.Utils; @@ -27,18 +27,10 @@ public abstract class BaseMwmListFragment extends ListFragment { super.onViewCreated(view, savedInstanceState); - mToolbar = (Toolbar) view.findViewById(R.id.toolbar); + mToolbar = view.findViewById(R.id.toolbar); if (mToolbar != null) { - UiUtils.showHomeUpButton(mToolbar); - mToolbar.setNavigationOnClickListener(new View.OnClickListener() - { - @Override - public void onClick(View v) - { - Utils.navigateToParent(getActivity()); - } - }); + UiUtils.setupNavigationUpListener(mToolbar, v -> Utils.navigateToParent(getActivity())); } } @@ -52,7 +44,7 @@ public abstract class BaseMwmListFragment extends ListFragment { super.onResume(); org.alohalytics.Statistics.logEvent("$onResume", getClass().getSimpleName() + ":" + - UiUtils.deviceOrientationAsString(getActivity())); + UiUtils.deviceOrientationAsString(requireActivity())); } @Override diff --git a/android/src/com/mapswithme/maps/base/BaseMwmRecyclerFragment.java b/android/src/com/mapswithme/maps/base/BaseMwmRecyclerFragment.java index 3bad1a08ea..f8f2e701b2 100644 --- a/android/src/com/mapswithme/maps/base/BaseMwmRecyclerFragment.java +++ b/android/src/com/mapswithme/maps/base/BaseMwmRecyclerFragment.java @@ -2,18 +2,18 @@ package com.mapswithme.maps.base; import android.content.Context; import android.os.Bundle; -import androidx.annotation.CallSuper; -import androidx.annotation.LayoutRes; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.Fragment; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; -import androidx.appcompat.widget.Toolbar; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import androidx.annotation.CallSuper; +import androidx.annotation.LayoutRes; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.widget.Toolbar; +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; import com.mapswithme.maps.R; import com.mapswithme.maps.widget.PlaceholderView; import com.mapswithme.util.UiUtils; @@ -23,17 +23,21 @@ public abstract class BaseMwmRecyclerFragment ex { private Toolbar mToolbar; - @SuppressWarnings("NullableProblems") + @SuppressWarnings("NotNullFieldNotInitialized") @NonNull private RecyclerView mRecycler; @Nullable private PlaceholderView mPlaceholder; - @SuppressWarnings("NullableProblems") + @SuppressWarnings("NotNullFieldNotInitialized") @NonNull private T mAdapter; + @NonNull + private final View.OnClickListener mNavigationClickListener + = view -> Utils.navigateToParent(getActivity()); + @NonNull protected abstract T createAdapter(); @@ -70,10 +74,7 @@ public abstract class BaseMwmRecyclerFragment ex mToolbar = view.findViewById(R.id.toolbar); if (mToolbar != null) - { - UiUtils.showHomeUpButton(mToolbar); - mToolbar.setNavigationOnClickListener(v -> Utils.navigateToParent(getActivity())); - } + UiUtils.setupNavigationUpListener(mToolbar, mNavigationClickListener); mRecycler = view.findViewById(R.id.recycler); if (mRecycler == null) @@ -112,7 +113,7 @@ public abstract class BaseMwmRecyclerFragment ex { super.onResume(); org.alohalytics.Statistics.logEvent("$onResume", this.getClass().getSimpleName() - + ":" + UiUtils.deviceOrientationAsString(getActivity())); + + ":" + UiUtils.deviceOrientationAsString(requireActivity())); } @Override diff --git a/android/src/com/mapswithme/maps/widget/ToolbarController.java b/android/src/com/mapswithme/maps/widget/ToolbarController.java index 02681a1f15..d895b64e1b 100644 --- a/android/src/com/mapswithme/maps/widget/ToolbarController.java +++ b/android/src/com/mapswithme/maps/widget/ToolbarController.java @@ -1,14 +1,14 @@ package com.mapswithme.maps.widget; import android.app.Activity; +import android.view.View; + import androidx.annotation.IdRes; import androidx.annotation.NonNull; import androidx.annotation.StringRes; import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; -import android.view.View; - import com.mapswithme.maps.R; import com.mapswithme.util.UiUtils; import com.mapswithme.util.Utils; @@ -19,14 +19,8 @@ public class ToolbarController private final Activity mActivity; @NonNull private final Toolbar mToolbar; - private final View.OnClickListener mNavigationClickListener = new View.OnClickListener() - { - @Override - public void onClick(View view) - { - onUpClick(); - } - }; + @NonNull + private final View.OnClickListener mNavigationClickListener = view -> onUpClick(); public ToolbarController(@NonNull View root, @NonNull Activity activity) { @@ -35,7 +29,7 @@ public class ToolbarController if (useExtendedToolbar()) UiUtils.extendViewWithStatusBar(getToolbar()); - setupNavigationListener(); + UiUtils.setupNavigationUpListener(mToolbar, mNavigationClickListener); setSupportActionBar(); } @@ -50,20 +44,6 @@ public class ToolbarController return true; } - private void setupNavigationListener() - { - View customNavigationButton = getToolbar().findViewById(R.id.back); - if (customNavigationButton != null) - { - customNavigationButton.setOnClickListener(mNavigationClickListener); - } - else - { - UiUtils.showHomeUpButton(getToolbar()); - getToolbar().setNavigationOnClickListener(mNavigationClickListener); - } - } - @IdRes private int getToolbarId() { diff --git a/android/src/com/mapswithme/util/UiUtils.java b/android/src/com/mapswithme/util/UiUtils.java index c3aa191be2..1eae908ee6 100644 --- a/android/src/com/mapswithme/util/UiUtils.java +++ b/android/src/com/mapswithme/util/UiUtils.java @@ -476,6 +476,21 @@ public final class UiUtils window.setStatusBarColor(ContextCompat.getColor(activity, statusBarColor)); } + public static void setupNavigationUpListener(@NonNull Toolbar toolbar, + @NonNull View.OnClickListener listener) + { + View customNavigationButton = toolbar.findViewById(R.id.back); + if (customNavigationButton != null) + { + customNavigationButton.setOnClickListener(listener); + } + else + { + UiUtils.showHomeUpButton(toolbar); + toolbar.setNavigationOnClickListener(listener); + } + } + public static int getCompassYOffset(@NonNull Context context) { return getStatusBarHeight(context);