commit
a1d8bf7bee
18 changed files with 90 additions and 55 deletions
10
OsmAnd/res/drawable/ic_action_purchases.xml
Normal file
10
OsmAnd/res/drawable/ic_action_purchases.xml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="24"
|
||||||
|
android:viewportHeight="24">
|
||||||
|
<path
|
||||||
|
android:pathData="M8,5C8,3.8954 8.8954,3 10,3H14C15.1046,3 16,3.8954 16,5V8H20V19C20,20.1046 19.1046,21 18,21H6C4.8954,21 4,20.1046 4,19V8H8V5ZM14,5V8H10V5H14ZM10,18V11L15.5,14L10,18Z"
|
||||||
|
android:fillColor="#ffffff"
|
||||||
|
android:fillType="evenOdd"/>
|
||||||
|
</vector>
|
10
OsmAnd/res/drawable/ic_action_purchases_outlined.xml
Normal file
10
OsmAnd/res/drawable/ic_action_purchases_outlined.xml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:width="24dp"
|
||||||
|
android:height="24dp"
|
||||||
|
android:viewportWidth="24"
|
||||||
|
android:viewportHeight="24">
|
||||||
|
<path
|
||||||
|
android:pathData="M10,3C8.8954,3 8,3.8954 8,5V8H4V19C4,20.1046 4.8954,21 6,21H18C19.1046,21 20,20.1046 20,19V8H16V5C16,3.8954 15.1046,3 14,3H10ZM14,8V5H10V8H14ZM6,10H18V19H6V10Z"
|
||||||
|
android:fillColor="#ffffff"
|
||||||
|
android:fillType="evenOdd"/>
|
||||||
|
</vector>
|
|
@ -21,7 +21,10 @@
|
||||||
android:paddingLeft="@dimen/content_padding"
|
android:paddingLeft="@dimen/content_padding"
|
||||||
android:paddingEnd="@dimen/content_padding"
|
android:paddingEnd="@dimen/content_padding"
|
||||||
android:paddingRight="@dimen/content_padding"
|
android:paddingRight="@dimen/content_padding"
|
||||||
app:startIconDrawable="@drawable/ic_action_folder">
|
app:startIconDrawable="@drawable/ic_action_folder"
|
||||||
|
app:boxBackgroundColor="?attr/text_input_background"
|
||||||
|
app:boxStrokeColor="@color/osmand_orange"
|
||||||
|
app:hintTextColor="@color/text_color_secondary_light">
|
||||||
|
|
||||||
<com.google.android.material.textfield.TextInputEditText
|
<com.google.android.material.textfield.TextInputEditText
|
||||||
android:id="@+id/name_edit_text"
|
android:id="@+id/name_edit_text"
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/bottom_sheet_large_list_item_height"
|
android:layout_height="@dimen/bottom_sheet_large_list_item_height"
|
||||||
|
@ -8,8 +7,8 @@
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:id="@+id/descriptionContainer"
|
android:id="@+id/descriptionContainer"
|
||||||
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/bottom_sheet_large_list_item_height"
|
android:layout_height="@dimen/bottom_sheet_large_list_item_height"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
android:layout_marginLeft="@dimen/content_padding"
|
android:layout_marginLeft="@dimen/content_padding"
|
||||||
android:layout_marginTop="@dimen/content_padding"
|
android:layout_marginTop="@dimen/content_padding"
|
||||||
android:layout_marginRight="@dimen/content_padding"
|
android:layout_marginRight="@dimen/content_padding"
|
||||||
android:src="@drawable/ic_action_sdcard_warning_colored" />
|
app:srcCompat="@drawable/ic_action_sdcard_warning_colored" />
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
|
|
@ -1,21 +1,21 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:id="@+id/scroll_container"
|
android:id="@+id/scroll_container"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:paddingBottom="@dimen/dialog_content_bottom_margin"
|
|
||||||
android:paddingLeft="@dimen/dialog_content_margin"
|
|
||||||
android:paddingRight="@dimen/dialog_content_margin"
|
|
||||||
android:paddingTop="@dimen/dialog_content_bottom_margin"
|
|
||||||
android:paddingStart="@dimen/dialog_content_margin"
|
android:paddingStart="@dimen/dialog_content_margin"
|
||||||
android:paddingEnd="@dimen/dialog_content_margin">
|
android:paddingLeft="@dimen/dialog_content_margin"
|
||||||
|
android:paddingTop="@dimen/dialog_content_bottom_margin"
|
||||||
|
android:paddingEnd="@dimen/dialog_content_margin"
|
||||||
|
android:paddingRight="@dimen/dialog_content_margin"
|
||||||
|
android:paddingBottom="@dimen/dialog_content_bottom_margin">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/list_container"
|
android:id="@+id/list_container"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:osmand="http://schemas.android.com/apk/res-auto"
|
xmlns:osmand="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/card_row_min_height"
|
android:layout_height="@dimen/card_row_min_height"
|
||||||
android:background="?attr/list_background_color"
|
android:background="?attr/list_background_color"
|
||||||
|
@ -27,9 +27,7 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="?attr/selectableItemBackground"
|
android:background="?attr/selectableItemBackground"
|
||||||
android:drawableRight="@drawable/ic_action_markers_list"
|
|
||||||
android:drawablePadding="@dimen/content_padding_small_half"
|
android:drawablePadding="@dimen/content_padding_small_half"
|
||||||
android:drawableTint="?attr/active_color_basic"
|
|
||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
|
@ -39,6 +37,8 @@
|
||||||
android:paddingRight="@dimen/content_padding_half"
|
android:paddingRight="@dimen/content_padding_half"
|
||||||
android:text="@string/shared_string_list"
|
android:text="@string/shared_string_list"
|
||||||
android:textColor="?attr/color_dialog_buttons"
|
android:textColor="?attr/color_dialog_buttons"
|
||||||
|
app:drawableEndCompat="@drawable/ic_action_markers_list"
|
||||||
|
app:drawableTint="?attr/active_color_basic"
|
||||||
osmand:typeface="@string/font_roboto_medium" />
|
osmand:typeface="@string/font_roboto_medium" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
|
@ -193,7 +193,8 @@ final class MapLayerMenuListener extends OnRowItemClick {
|
||||||
adapter.notifyDataSetChanged();
|
adapter.notifyDataSetChanged();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
if (poiFiltersHelper.isShowingAnyPoi(wiki)) {
|
boolean isMultichoose = poiFiltersHelper.getSelectedPoiFilters(wiki).size() > 1;
|
||||||
|
if (isMultichoose) {
|
||||||
mapActivity.getMapLayers().showMultichoicePoiFilterDialog(mapActivity.getMapView(),
|
mapActivity.getMapLayers().showMultichoicePoiFilterDialog(mapActivity.getMapView(),
|
||||||
dismissListener);
|
dismissListener);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -57,7 +57,9 @@ public class SearchHistoryHelper {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addNewItemToHistory(GPXInfo gpxInfo) {
|
public void addNewItemToHistory(GPXInfo gpxInfo) {
|
||||||
addNewItemToHistory(new HistoryEntry(0, 0, createPointDescription(gpxInfo)));
|
if(gpxInfo != null) {
|
||||||
|
addNewItemToHistory(new HistoryEntry(0, 0, createPointDescription(gpxInfo)));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<HistoryEntry> getHistoryEntries(boolean onlyPoints) {
|
public List<HistoryEntry> getHistoryEntries(boolean onlyPoints) {
|
||||||
|
|
|
@ -169,7 +169,6 @@ public class AddNewFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
|
|
||||||
view = UiUtilities.getInflater(app, nightMode).inflate(R.layout.add_new_favorite_category, null);
|
view = UiUtilities.getInflater(app, nightMode).inflate(R.layout.add_new_favorite_category, null);
|
||||||
nameTextBox = view.findViewById(R.id.name_text_box);
|
nameTextBox = view.findViewById(R.id.name_text_box);
|
||||||
nameTextBox.setBoxBackgroundColorResource(nightMode ? R.color.list_background_color_dark : R.color.activity_background_color_light);
|
|
||||||
nameTextBox.setHint(app.getResources().getString(R.string.favorite_category_name));
|
nameTextBox.setHint(app.getResources().getString(R.string.favorite_category_name));
|
||||||
ColorStateList colorStateList = ColorStateList.valueOf(ContextCompat
|
ColorStateList colorStateList = ColorStateList.valueOf(ContextCompat
|
||||||
.getColor(app, nightMode ? R.color.text_color_secondary_dark : R.color.text_color_secondary_light));
|
.getColor(app, nightMode ? R.color.text_color_secondary_dark : R.color.text_color_secondary_light));
|
||||||
|
@ -179,7 +178,6 @@ public class AddNewFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
editText.requestFocus();
|
editText.requestFocus();
|
||||||
AndroidUtils.softKeyboardDelayed(getActivity(), editText);
|
AndroidUtils.softKeyboardDelayed(getActivity(), editText);
|
||||||
nameTextBox.setStartIconTintList(ColorStateList.valueOf(selectedColor));
|
nameTextBox.setStartIconTintList(ColorStateList.valueOf(selectedColor));
|
||||||
nameTextBox.setBoxStrokeColorStateList(ColorStateList.valueOf(selectedColor));
|
|
||||||
|
|
||||||
BaseBottomSheetItem editFolderName = new BaseBottomSheetItem.Builder()
|
BaseBottomSheetItem editFolderName = new BaseBottomSheetItem.Builder()
|
||||||
.setCustomView(view)
|
.setCustomView(view)
|
||||||
|
@ -200,7 +198,6 @@ public class AddNewFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
((TextView) view.findViewById(R.id.color_name)).setText(ColorDialogs.getColorName(color));
|
((TextView) view.findViewById(R.id.color_name)).setText(ColorDialogs.getColorName(color));
|
||||||
selectedColor = color;
|
selectedColor = color;
|
||||||
nameTextBox.setStartIconTintList(ColorStateList.valueOf(selectedColor));
|
nameTextBox.setStartIconTintList(ColorStateList.valueOf(selectedColor));
|
||||||
nameTextBox.setBoxStrokeColorStateList(ColorStateList.valueOf(selectedColor));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -32,7 +32,6 @@ import net.osmand.plus.R;
|
||||||
import net.osmand.plus.UiUtilities;
|
import net.osmand.plus.UiUtilities;
|
||||||
import net.osmand.plus.activities.MapActivity;
|
import net.osmand.plus.activities.MapActivity;
|
||||||
import net.osmand.plus.base.BaseOsmAndFragment;
|
import net.osmand.plus.base.BaseOsmAndFragment;
|
||||||
import net.osmand.plus.base.BottomSheetDialogFragment;
|
|
||||||
import net.osmand.plus.widgets.AutoCompleteTextViewEx;
|
import net.osmand.plus.widgets.AutoCompleteTextViewEx;
|
||||||
import net.osmand.util.Algorithms;
|
import net.osmand.util.Algorithms;
|
||||||
|
|
||||||
|
@ -77,7 +76,7 @@ public abstract class PointEditorFragment extends BaseOsmAndFragment {
|
||||||
dismiss();
|
dismiss();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
int activeColorResId = !editor.isLight() ? R.color.active_color_primary_dark : R.color.active_color_primary_light;
|
int activeColorResId = !editor.isLight() ? R.color.active_color_primary_dark : R.color.active_color_primary_light;
|
||||||
|
|
||||||
Button saveButton = (Button) view.findViewById(R.id.save_button);
|
Button saveButton = (Button) view.findViewById(R.id.save_button);
|
||||||
|
@ -182,7 +181,7 @@ public abstract class PointEditorFragment extends BaseOsmAndFragment {
|
||||||
protected DialogFragment createSelectCategoryDialog() {
|
protected DialogFragment createSelectCategoryDialog() {
|
||||||
PointEditor editor = getEditor();
|
PointEditor editor = getEditor();
|
||||||
if (editor != null) {
|
if (editor != null) {
|
||||||
return SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag());
|
return SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag(), "");
|
||||||
} else {
|
} else {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -364,7 +363,7 @@ public abstract class PointEditorFragment extends BaseOsmAndFragment {
|
||||||
if (isPersonalCategoryDisplayName(requireContext(), name)) {
|
if (isPersonalCategoryDisplayName(requireContext(), name)) {
|
||||||
return PERSONAL_CATEGORY;
|
return PERSONAL_CATEGORY;
|
||||||
}
|
}
|
||||||
if(name.equals(getDefaultCategoryName())) {
|
if (name.equals(getDefaultCategoryName())) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
return name;
|
return name;
|
||||||
|
|
|
@ -739,12 +739,19 @@ public abstract class PointEditorFragmentNew extends BaseOsmAndFragment implemen
|
||||||
protected DialogFragment createSelectCategoryDialog() {
|
protected DialogFragment createSelectCategoryDialog() {
|
||||||
PointEditor editor = getEditor();
|
PointEditor editor = getEditor();
|
||||||
if (editor != null) {
|
if (editor != null) {
|
||||||
return SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag());
|
return SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag(), getSelectedCategory());
|
||||||
} else {
|
} else {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getSelectedCategory() {
|
||||||
|
if (groupListAdapter != null && groupListAdapter.getSelectedItem() != null) {
|
||||||
|
return groupListAdapter.getSelectedItem();
|
||||||
|
}
|
||||||
|
return getCategoryInitValue();
|
||||||
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
protected AddNewFavoriteCategoryBottomSheet createAddCategoryDialog() {
|
protected AddNewFavoriteCategoryBottomSheet createAddCategoryDialog() {
|
||||||
PointEditor editor = getEditor();
|
PointEditor editor = getEditor();
|
||||||
|
|
|
@ -23,7 +23,7 @@ public class RtePtEditorFragment extends WptPtEditorFragment {
|
||||||
@Override
|
@Override
|
||||||
protected DialogFragment createSelectCategoryDialog() {
|
protected DialogFragment createSelectCategoryDialog() {
|
||||||
PointEditor editor = getEditor();
|
PointEditor editor = getEditor();
|
||||||
return editor != null ? SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag()) : null;
|
return editor != null ? SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag(), "") : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void showInstance(final MapActivity mapActivity) {
|
public static void showInstance(final MapActivity mapActivity) {
|
||||||
|
|
|
@ -42,8 +42,10 @@ import java.util.Set;
|
||||||
public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFragment {
|
public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFragment {
|
||||||
|
|
||||||
public static final String TAG = SelectFavoriteCategoryBottomSheet.class.getSimpleName();
|
public static final String TAG = SelectFavoriteCategoryBottomSheet.class.getSimpleName();
|
||||||
private static final String KEY_CTX_SEL_CAT_EDITOR_TAG = "key_ctx_sel_cat_editor_tag";
|
private static final String SELECT_CATEGORY_EDITOR_TAG = "select_category_editor_tag";
|
||||||
|
private static final String SELECT_CURRENT_CATEGORY_EDITOR_TAG = "select_current_category_editor_tag";
|
||||||
private static String editorTag;
|
private static String editorTag;
|
||||||
|
private static String selectedCategory;
|
||||||
private OsmandApplication app;
|
private OsmandApplication app;
|
||||||
private GPXUtilities.GPXFile gpxFile;
|
private GPXUtilities.GPXFile gpxFile;
|
||||||
private Map<String, Integer> gpxCategories;
|
private Map<String, Integer> gpxCategories;
|
||||||
|
@ -60,10 +62,11 @@ public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
return drawable;
|
return drawable;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static SelectFavoriteCategoryBottomSheet createInstance(String editorTag) {
|
public static SelectFavoriteCategoryBottomSheet createInstance(String editorTag, String selectedCategory) {
|
||||||
SelectFavoriteCategoryBottomSheet fragment = new SelectFavoriteCategoryBottomSheet();
|
SelectFavoriteCategoryBottomSheet fragment = new SelectFavoriteCategoryBottomSheet();
|
||||||
Bundle bundle = new Bundle();
|
Bundle bundle = new Bundle();
|
||||||
bundle.putString(KEY_CTX_SEL_CAT_EDITOR_TAG, editorTag);
|
bundle.putString(SELECT_CATEGORY_EDITOR_TAG, editorTag);
|
||||||
|
bundle.putString(SELECT_CURRENT_CATEGORY_EDITOR_TAG, selectedCategory);
|
||||||
fragment.setArguments(bundle);
|
fragment.setArguments(bundle);
|
||||||
fragment.setRetainInstance(true);
|
fragment.setRetainInstance(true);
|
||||||
return fragment;
|
return fragment;
|
||||||
|
@ -136,17 +139,21 @@ public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
|
|
||||||
View favoriteCategoryList = UiUtilities.getInflater(app, nightMode).inflate(R.layout.favorite_categories_dialog, null);
|
View favoriteCategoryList = UiUtilities.getInflater(app, nightMode).inflate(R.layout.favorite_categories_dialog, null);
|
||||||
ScrollView scrollContainer = favoriteCategoryList.findViewById(R.id.scroll_container);
|
ScrollView scrollContainer = favoriteCategoryList.findViewById(R.id.scroll_container);
|
||||||
final int dp16 = AndroidUtils.dpToPx(app, 16f);
|
scrollContainer.setPadding(0, 0, 0, 0);
|
||||||
scrollContainer.setPadding(dp16,0, dp16,0);
|
|
||||||
LinearLayout favoriteCategoryContainer = favoriteCategoryList.findViewById(R.id.list_container);
|
LinearLayout favoriteCategoryContainer = favoriteCategoryList.findViewById(R.id.list_container);
|
||||||
|
|
||||||
final FavouritesDbHelper favoritesHelper = app.getFavorites();
|
final FavouritesDbHelper favoritesHelper = app.getFavorites();
|
||||||
if (gpxFile != null) {
|
if (gpxFile != null) {
|
||||||
if (gpxCategories != null) {
|
if (gpxCategories != null) {
|
||||||
|
Map<String, List<GPXUtilities.WptPt>> pointsCategories = gpxFile.getPointsByCategories();
|
||||||
for (Map.Entry<String, Integer> e : gpxCategories.entrySet()) {
|
for (Map.Entry<String, Integer> e : gpxCategories.entrySet()) {
|
||||||
String categoryName = e.getKey();
|
String favoriteCategoryCount;
|
||||||
String favoriteCategoryCount = String.valueOf(e.getKey().length());
|
if (Algorithms.isEmpty(pointsCategories.get(e.getKey()))) {
|
||||||
favoriteCategoryContainer.addView(createCategoryItem(activity, nightMode, categoryName, e.getValue(), favoriteCategoryCount, false));
|
favoriteCategoryCount = app.getString(R.string.shared_string_empty);
|
||||||
|
} else {
|
||||||
|
favoriteCategoryCount = String.valueOf(pointsCategories.get(e.getKey()).size());
|
||||||
|
}
|
||||||
|
favoriteCategoryContainer.addView(createCategoryItem(activity, nightMode, e.getKey(), e.getValue(), favoriteCategoryCount, false));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -171,19 +178,15 @@ public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
View itemView = UiUtilities.getInflater(activity, nightMode).inflate(R.layout.bottom_sheet_item_with_descr_and_radio_btn, null);
|
View itemView = UiUtilities.getInflater(activity, nightMode).inflate(R.layout.bottom_sheet_item_with_descr_and_radio_btn, null);
|
||||||
final AppCompatImageView button = (AppCompatImageView) itemView.findViewById(R.id.icon);
|
final AppCompatImageView button = (AppCompatImageView) itemView.findViewById(R.id.icon);
|
||||||
final int dp8 = AndroidUtils.dpToPx(app, 8f);
|
final int dp8 = AndroidUtils.dpToPx(app, 8f);
|
||||||
button.setPadding(0,0, dp8,0);
|
final int dp16 = AndroidUtils.dpToPx(app, 16f);
|
||||||
|
button.setPadding(0, 0, dp8, 0);
|
||||||
LinearLayout descriptionContainer = itemView.findViewById(R.id.descriptionContainer);
|
LinearLayout descriptionContainer = itemView.findViewById(R.id.descriptionContainer);
|
||||||
descriptionContainer.setPadding(0, 0, 0, 0);
|
descriptionContainer.setPadding(dp16, 0, dp16, 0);
|
||||||
View divider = itemView.findViewById(R.id.divider_bottom);
|
View divider = itemView.findViewById(R.id.divider_bottom);
|
||||||
divider.setVisibility(View.GONE);
|
divider.setVisibility(View.GONE);
|
||||||
itemView.setPadding(0, 0, 0, 0);
|
itemView.setPadding(0, 0, 0, 0);
|
||||||
final RadioButton compoundButton = itemView.findViewById(R.id.compound_button);
|
|
||||||
int activeColorId = nightMode ?
|
int activeColorId = nightMode ?
|
||||||
R.color.active_color_primary_dark : R.color.active_color_primary_light;
|
R.color.active_color_primary_dark : R.color.active_color_primary_light;
|
||||||
int disableColorId = nightMode ?
|
|
||||||
R.color.icon_color_default_dark : R.color.icon_color_default_light;
|
|
||||||
UiUtilities.setupCompoundButton(nightMode, ContextCompat.getColor(app,
|
|
||||||
nightMode ? activeColorId : disableColorId), compoundButton);
|
|
||||||
|
|
||||||
if (isHidden) {
|
if (isHidden) {
|
||||||
button.setImageResource(R.drawable.ic_action_hide);
|
button.setImageResource(R.drawable.ic_action_hide);
|
||||||
|
@ -195,16 +198,19 @@ public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
gpxFile != null ? R.color.gpx_color_point : R.color.color_favorite)));
|
gpxFile != null ? R.color.gpx_color_point : R.color.color_favorite)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
RadioButton compoundButton = itemView.findViewById(R.id.compound_button);
|
||||||
|
compoundButton.setChecked(Algorithms.stringsEqual(selectedCategory, categoryName));
|
||||||
|
UiUtilities.setupCompoundButton(nightMode, ContextCompat.getColor(app,
|
||||||
|
activeColorId), compoundButton);
|
||||||
String name = categoryName.length() == 0 ? getString(R.string.shared_string_favorites) : categoryName;
|
String name = categoryName.length() == 0 ? getString(R.string.shared_string_favorites) : categoryName;
|
||||||
TextView text = itemView.findViewById(R.id.title);
|
TextView text = itemView.findViewById(R.id.title);
|
||||||
TextView description = itemView.findViewById(R.id.description);
|
TextView description = itemView.findViewById(R.id.description);
|
||||||
text.setText(name);
|
text.setText(name);
|
||||||
description.setText(String.valueOf(categoryPointCount));
|
description.setText(String.valueOf(categoryPointCount));
|
||||||
descriptionContainer.setOnClickListener(new View.OnClickListener() {
|
itemView.setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
FragmentActivity a = getActivity();
|
FragmentActivity a = getActivity();
|
||||||
compoundButton.setSelected(true);
|
|
||||||
if (a instanceof MapActivity) {
|
if (a instanceof MapActivity) {
|
||||||
PointEditor pointEditor = ((MapActivity) a).getContextMenu().getPointEditor(editorTag);
|
PointEditor pointEditor = ((MapActivity) a).getContextMenu().getPointEditor(editorTag);
|
||||||
if (pointEditor != null) {
|
if (pointEditor != null) {
|
||||||
|
@ -221,7 +227,8 @@ public class SelectFavoriteCategoryBottomSheet extends MenuBottomSheetDialogFrag
|
||||||
}
|
}
|
||||||
|
|
||||||
public void restoreState(Bundle bundle) {
|
public void restoreState(Bundle bundle) {
|
||||||
editorTag = bundle.getString(KEY_CTX_SEL_CAT_EDITOR_TAG);
|
editorTag = bundle.getString(SELECT_CATEGORY_EDITOR_TAG);
|
||||||
|
selectedCategory = bundle.getString(SELECT_CURRENT_CATEGORY_EDITOR_TAG);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface CategorySelectionListener {
|
public interface CategorySelectionListener {
|
||||||
|
|
|
@ -67,7 +67,7 @@ public class WptPtEditorFragment extends PointEditorFragment {
|
||||||
protected DialogFragment createSelectCategoryDialog() {
|
protected DialogFragment createSelectCategoryDialog() {
|
||||||
WptPtEditor editor = getWptPtEditor();
|
WptPtEditor editor = getWptPtEditor();
|
||||||
if (editor != null) {
|
if (editor != null) {
|
||||||
SelectFavoriteCategoryBottomSheet selectCategoryDialogFragment = SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag());
|
SelectFavoriteCategoryBottomSheet selectCategoryDialogFragment = SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag(), "");
|
||||||
GPXFile gpx = editor.getGpxFile();
|
GPXFile gpx = editor.getGpxFile();
|
||||||
if (gpx != null) {
|
if (gpx != null) {
|
||||||
selectCategoryDialogFragment.setGpxFile(gpx);
|
selectCategoryDialogFragment.setGpxFile(gpx);
|
||||||
|
|
|
@ -81,7 +81,7 @@ public class WptPtEditorFragmentNew extends PointEditorFragmentNew {
|
||||||
protected DialogFragment createSelectCategoryDialog() {
|
protected DialogFragment createSelectCategoryDialog() {
|
||||||
WptPtEditor editor = getWptPtEditor();
|
WptPtEditor editor = getWptPtEditor();
|
||||||
if (editor != null) {
|
if (editor != null) {
|
||||||
SelectFavoriteCategoryBottomSheet selectCategoryDialogFragment = SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag());
|
SelectFavoriteCategoryBottomSheet selectCategoryDialogFragment = SelectFavoriteCategoryBottomSheet.createInstance(editor.getFragmentTag(), getSelectedCategory());
|
||||||
GPXFile gpx = editor.getGpxFile();
|
GPXFile gpx = editor.getGpxFile();
|
||||||
if (gpx != null) {
|
if (gpx != null) {
|
||||||
selectCategoryDialogFragment.setGpxFile(gpx);
|
selectCategoryDialogFragment.setGpxFile(gpx);
|
||||||
|
|
|
@ -176,7 +176,7 @@ public class FavoriteAction extends QuickAction {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(final View view) {
|
public void onClick(final View view) {
|
||||||
|
|
||||||
SelectFavoriteCategoryBottomSheet dialogFragment = SelectFavoriteCategoryBottomSheet.createInstance("");
|
SelectFavoriteCategoryBottomSheet dialogFragment = SelectFavoriteCategoryBottomSheet.createInstance("", "");
|
||||||
|
|
||||||
dialogFragment.show(
|
dialogFragment.show(
|
||||||
activity.getSupportFragmentManager(),
|
activity.getSupportFragmentManager(),
|
||||||
|
|
|
@ -120,7 +120,7 @@ public class GPXAction extends QuickAction {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(final View view) {
|
public void onClick(final View view) {
|
||||||
|
|
||||||
SelectFavoriteCategoryBottomSheet dialogFragment = SelectFavoriteCategoryBottomSheet.createInstance("");
|
SelectFavoriteCategoryBottomSheet dialogFragment = SelectFavoriteCategoryBottomSheet.createInstance("", "");
|
||||||
|
|
||||||
dialogFragment.show(
|
dialogFragment.show(
|
||||||
activity.getSupportFragmentManager(),
|
activity.getSupportFragmentManager(),
|
||||||
|
|
Loading…
Reference in a new issue