forked from organicmaps/organicmaps
[android] Refactored passing the bookmark page index as enum
This commit is contained in:
parent
c1029dc39a
commit
aa875803bf
7 changed files with 41 additions and 58 deletions
|
@ -691,10 +691,9 @@ public class DownloadResourcesLegacyActivity extends BaseMwmFragmentActivity
|
|||
// Transform deeplink to the core expected format,
|
||||
// i.e https://host/path?query -> mapsme:///path?query.
|
||||
Uri uri = Uri.parse(url);
|
||||
Uri.Builder builder = uri.buildUpon();
|
||||
builder.scheme(SCHEME_CORE)
|
||||
.authority("");
|
||||
Uri coreUri = builder.build();
|
||||
Uri coreUri = uri.buildUpon()
|
||||
.scheme(SCHEME_CORE)
|
||||
.authority("").build();
|
||||
LOGGER.i(TAG, "MAPSME URL = " + coreUri);
|
||||
return new OpenUrlTask(coreUri.toString());
|
||||
}
|
||||
|
|
|
@ -43,11 +43,10 @@ import com.mapswithme.maps.base.BaseMwmFragmentActivity;
|
|||
import com.mapswithme.maps.base.OnBackPressListener;
|
||||
import com.mapswithme.maps.bookmarks.BookmarkCategoriesActivity;
|
||||
import com.mapswithme.maps.bookmarks.BookmarksDownloadManager;
|
||||
import com.mapswithme.maps.bookmarks.Constants;
|
||||
import com.mapswithme.maps.bookmarks.BookmarksPageFactory;
|
||||
import com.mapswithme.maps.bookmarks.data.BookmarkManager;
|
||||
import com.mapswithme.maps.bookmarks.data.FeatureId;
|
||||
import com.mapswithme.maps.bookmarks.data.MapObject;
|
||||
import com.mapswithme.maps.maplayer.MapLayerCompositeController;
|
||||
import com.mapswithme.maps.discovery.DiscoveryActivity;
|
||||
import com.mapswithme.maps.discovery.DiscoveryFragment;
|
||||
import com.mapswithme.maps.discovery.ItemType;
|
||||
|
@ -64,7 +63,13 @@ import com.mapswithme.maps.editor.ReportFragment;
|
|||
import com.mapswithme.maps.gallery.Items;
|
||||
import com.mapswithme.maps.location.CompassData;
|
||||
import com.mapswithme.maps.location.LocationHelper;
|
||||
import com.mapswithme.maps.maplayer.MapLayerCompositeController;
|
||||
import com.mapswithme.maps.maplayer.Mode;
|
||||
import com.mapswithme.maps.maplayer.subway.OnSubwayLayerToggleListener;
|
||||
import com.mapswithme.maps.maplayer.subway.SubwayManager;
|
||||
import com.mapswithme.maps.maplayer.traffic.OnTrafficLayerToggleListener;
|
||||
import com.mapswithme.maps.maplayer.traffic.TrafficManager;
|
||||
import com.mapswithme.maps.maplayer.traffic.widget.TrafficButton;
|
||||
import com.mapswithme.maps.routing.NavigationController;
|
||||
import com.mapswithme.maps.routing.RoutePointInfo;
|
||||
import com.mapswithme.maps.routing.RoutingBottomMenuListener;
|
||||
|
@ -85,13 +90,8 @@ import com.mapswithme.maps.settings.SettingsActivity;
|
|||
import com.mapswithme.maps.settings.StoragePathManager;
|
||||
import com.mapswithme.maps.settings.UnitLocale;
|
||||
import com.mapswithme.maps.sound.TtsPlayer;
|
||||
import com.mapswithme.maps.maplayer.Mode;
|
||||
import com.mapswithme.maps.maplayer.subway.OnSubwayLayerToggleListener;
|
||||
import com.mapswithme.maps.taxi.TaxiInfo;
|
||||
import com.mapswithme.maps.taxi.TaxiManager;
|
||||
import com.mapswithme.maps.maplayer.traffic.TrafficManager;
|
||||
import com.mapswithme.maps.maplayer.traffic.OnTrafficLayerToggleListener;
|
||||
import com.mapswithme.maps.maplayer.traffic.widget.TrafficButton;
|
||||
import com.mapswithme.maps.widget.FadeView;
|
||||
import com.mapswithme.maps.widget.menu.BaseMenu;
|
||||
import com.mapswithme.maps.widget.menu.MainMenu;
|
||||
|
@ -1739,7 +1739,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
|
|||
try
|
||||
{
|
||||
BookmarksDownloadManager.from(target).enqueueRequest(mUrl);
|
||||
BookmarkCategoriesActivity.start(target, Constants.CATEGORIES_PAGE_CATALOG);
|
||||
BookmarkCategoriesActivity.start(target, BookmarksPageFactory.CATALOG.ordinal());
|
||||
}
|
||||
catch (BookmarksDownloadManager.UnprocessedUrlException e)
|
||||
{
|
||||
|
|
|
@ -16,11 +16,11 @@ import com.mapswithme.util.ThemeUtils;
|
|||
public class BookmarkCategoriesActivity extends BaseToolbarActivity
|
||||
{
|
||||
|
||||
public static void start(@NonNull Context context, @Constants.CategoriesPage int categoriesPage)
|
||||
public static void start(@NonNull Context context, int initialPage)
|
||||
{
|
||||
Intent intent = new Intent(context, BookmarkCategoriesActivity.class);
|
||||
Bundle args = new Bundle();
|
||||
args.putInt(Constants.ARG_CATEGORIES_PAGE, categoriesPage);
|
||||
args.putInt(BookmarkCategoriesPagerFragment.ARG_CATEGORIES_PAGE, initialPage);
|
||||
intent.putExtras(args);
|
||||
context.startActivity(intent);
|
||||
}
|
||||
|
|
|
@ -19,6 +19,8 @@ import java.util.List;
|
|||
|
||||
public class BookmarkCategoriesPagerFragment extends BaseMwmFragment
|
||||
{
|
||||
final static String ARG_CATEGORIES_PAGE = "arg_categories_page";
|
||||
|
||||
@Override
|
||||
public void onCreate(@Nullable Bundle savedInstanceState)
|
||||
{
|
||||
|
@ -38,27 +40,30 @@ public class BookmarkCategoriesPagerFragment extends BaseMwmFragment
|
|||
List<BookmarksPageFactory> dataSet = getAdapterDataSet();
|
||||
BookmarksPagerAdapter adapter = new BookmarksPagerAdapter(getContext(), fm, dataSet);
|
||||
viewPager.setAdapter(adapter);
|
||||
viewPager.setCurrentItem(getInitialPage());
|
||||
viewPager.setCurrentItem(saveAndGetInitialPage());
|
||||
tabLayout.setupWithViewPager(viewPager);
|
||||
viewPager.addOnPageChangeListener(new PageChangeListener());
|
||||
|
||||
return root;
|
||||
}
|
||||
|
||||
@Constants.CategoriesPage
|
||||
private int getInitialPage()
|
||||
private int saveAndGetInitialPage()
|
||||
{
|
||||
Bundle args = getArguments();
|
||||
if (args == null || !args.containsKey(Constants.ARG_CATEGORIES_PAGE))
|
||||
return SharedPropertiesUtils.getLastVisibleBookmarkCategoriesPage(getActivity());
|
||||
if (args != null && args.containsKey(ARG_CATEGORIES_PAGE))
|
||||
{
|
||||
int page = args.getInt(ARG_CATEGORIES_PAGE);
|
||||
SharedPropertiesUtils.setLastVisibleBookmarkCategoriesPage(getActivity(), page);
|
||||
return page;
|
||||
}
|
||||
|
||||
return args.getInt(Constants.ARG_CATEGORIES_PAGE);
|
||||
return SharedPropertiesUtils.getLastVisibleBookmarkCategoriesPage(getActivity());
|
||||
}
|
||||
|
||||
@NonNull
|
||||
private static List<BookmarksPageFactory> getAdapterDataSet()
|
||||
{
|
||||
return Arrays.asList(BookmarksPageFactory.PRIVATE, BookmarksPageFactory.CATALOG);
|
||||
return Arrays.asList(BookmarksPageFactory.values());
|
||||
}
|
||||
|
||||
private class PageChangeListener extends ViewPager.SimpleOnPageChangeListener
|
||||
|
|
|
@ -8,21 +8,6 @@ import com.mapswithme.maps.R;
|
|||
|
||||
public enum BookmarksPageFactory
|
||||
{
|
||||
CATALOG(new AdapterResourceProvider.Catalog())
|
||||
{
|
||||
@NonNull
|
||||
@Override
|
||||
public Fragment instantiateFragment()
|
||||
{
|
||||
return new CachedBookmarkCategoriesFragment();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTitle()
|
||||
{
|
||||
return R.string.bookmarks_page_downloaded;
|
||||
}
|
||||
},
|
||||
PRIVATE
|
||||
{
|
||||
@NonNull
|
||||
|
@ -37,6 +22,21 @@ public enum BookmarksPageFactory
|
|||
{
|
||||
return R.string.bookmarks_page_my;
|
||||
}
|
||||
},
|
||||
CATALOG(new AdapterResourceProvider.Catalog())
|
||||
{
|
||||
@NonNull
|
||||
@Override
|
||||
public Fragment instantiateFragment()
|
||||
{
|
||||
return new CachedBookmarkCategoriesFragment();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getTitle()
|
||||
{
|
||||
return R.string.bookmarks_page_downloaded;
|
||||
}
|
||||
};
|
||||
|
||||
@NonNull
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
package com.mapswithme.maps.bookmarks;
|
||||
|
||||
import android.support.annotation.IntDef;
|
||||
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
|
||||
public class Constants
|
||||
{
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@IntDef({ CATEGORIES_PAGE_PRIVATE, CATEGORIES_PAGE_CATALOG })
|
||||
|
||||
public @interface CategoriesPage {}
|
||||
|
||||
public static final int CATEGORIES_PAGE_PRIVATE = 0;
|
||||
public static final int CATEGORIES_PAGE_CATALOG = 1;
|
||||
|
||||
final static String ARG_CATEGORIES_PAGE = "arg_categories_page";
|
||||
}
|
|
@ -8,7 +8,6 @@ import android.support.annotation.Nullable;
|
|||
|
||||
import com.mapswithme.maps.MwmApplication;
|
||||
import com.mapswithme.maps.R;
|
||||
import com.mapswithme.maps.bookmarks.Constants;
|
||||
|
||||
import static com.mapswithme.util.Config.KEY_PREF_STATISTICS;
|
||||
|
||||
|
@ -101,8 +100,7 @@ public final class SharedPropertiesUtils
|
|||
.getInt(PREFS_BOOKMARK_CATEGORIES_LAST_VISIBLE_PAGE, 0);
|
||||
}
|
||||
|
||||
public static void setLastVisibleBookmarkCategoriesPage(@NonNull Context context,
|
||||
@Constants.CategoriesPage int pageIndex)
|
||||
public static void setLastVisibleBookmarkCategoriesPage(@NonNull Context context, int pageIndex)
|
||||
{
|
||||
MwmApplication.prefs(context)
|
||||
.edit()
|
||||
|
|
Loading…
Add table
Reference in a new issue