/
githubmirror
/
omim
Обзор
Документация
Войти
/
githubmirror
/
omim
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
android/src/com/mapswithme/maps/discovery/DiscoveryActivity.java
101 строка
3 KB
alexzatsepin
[android] Fixed showing the filter panel on map when user comes back from discovery more button
15 сен 2020, 14:16
15 сен 2020, 14:16
591333e
Код
Авторство
О чём код?
package com.mapswithme.maps.discovery; import android.app.Activity; import android.content.Intent; import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; import com.mapswithme.maps.R; import com.mapswithme.maps.base.CustomNavigateUpListener; import com.mapswithme.maps.base.BaseMwmFragmentActivity; import com.mapswithme.maps.bookmarks.BookmarkCategoriesActivity; import com.mapswithme.maps.bookmarks.data.MapObject; import com.mapswithme.maps.gallery.Items; import com.mapswithme.maps.search.FilterActivity; import com.mapswithme.maps.search.FilterUtils; public class DiscoveryActivity extends BaseMwmFragmentActivity implements CustomNavigateUpListener, DiscoveryFragment.DiscoveryListener { public static final String EXTRA_DISCOVERY_OBJECT = "extra_discovery_object"; public static final String EXTRA_FILTER_SEARCH_QUERY = "extra_filter_search_query"; public static final String ACTION_ROUTE_TO = "action_route_to"; public static final String ACTION_SHOW_ON_MAP = "action_show_on_map"; public static final String ACTION_SHOW_FILTER_RESULTS = "action_show_filter_results"; @Override protected Class<? extends Fragment> getFragmentClass() { return DiscoveryFragment.class; } @Override public void customOnNavigateUp() { finish(); } @Override public void onRouteToDiscoveredObject(@NonNull MapObject object) { Intent intent = new Intent(ACTION_ROUTE_TO); setResult(object, intent); } @Override public void onShowDiscoveredObject(@NonNull MapObject object) { Intent intent = new Intent(ACTION_SHOW_ON_MAP); setResult(object, intent); } @Override public void onShowFilter() { FilterActivity.startForResult(this, null, null, FilterActivity.REQ_CODE_FILTER); } @Override public void onShowSimilarObjects(@NonNull Items.SearchItem item, @NonNull ItemType type) { Intent intent = new Intent() .setAction(ACTION_SHOW_FILTER_RESULTS) .putExtra(EXTRA_FILTER_SEARCH_QUERY, getString(type.getSearchCategory())); setResult(Activity.RESULT_OK, intent); finish(); } private void setResult(@NonNull MapObject object, @NonNull Intent intent) { intent.putExtra(DiscoveryActivity.EXTRA_DISCOVERY_OBJECT, object); setResult(Activity.RESULT_OK, intent); finish(); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode != Activity.RESULT_OK) return; switch (requestCode) { case FilterActivity.REQ_CODE_FILTER: if (data == null) return; data.setAction(ACTION_SHOW_FILTER_RESULTS); data.putExtra(EXTRA_FILTER_SEARCH_QUERY, FilterUtils.getHotelCategoryString(this)); setResult(Activity.RESULT_OK, data); finish(); break; case BookmarkCategoriesActivity.REQ_CODE_DOWNLOAD_BOOKMARK_CATEGORY: setResult(Activity.RESULT_OK, data); finish(); break; } } }