Merge branch 'master' of https://github.com/osmandapp/Osmand
This commit is contained in:
commit
9ee379e816
2 changed files with 33 additions and 2 deletions
|
@ -52,6 +52,7 @@ public class ExploreTabFragment extends BaseOsmAndFragment implements DownloadIn
|
||||||
private TravelDownloadUpdateCard downloadUpdateCard;
|
private TravelDownloadUpdateCard downloadUpdateCard;
|
||||||
private TravelNeededMapsCard neededMapsCard;
|
private TravelNeededMapsCard neededMapsCard;
|
||||||
|
|
||||||
|
private DownloadValidationManager downloadManager;
|
||||||
private IndexItem currentDownloadingIndexItem;
|
private IndexItem currentDownloadingIndexItem;
|
||||||
private IndexItem mainIndexItem;
|
private IndexItem mainIndexItem;
|
||||||
private List<IndexItem> neededIndexItems = new ArrayList<>();
|
private List<IndexItem> neededIndexItems = new ArrayList<>();
|
||||||
|
@ -61,6 +62,7 @@ public class ExploreTabFragment extends BaseOsmAndFragment implements DownloadIn
|
||||||
@Nullable
|
@Nullable
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||||
|
downloadManager = new DownloadValidationManager(getMyApplication());
|
||||||
nightMode = !getMyApplication().getSettings().isLightContent();
|
nightMode = !getMyApplication().getSettings().isLightContent();
|
||||||
|
|
||||||
final View mainView = inflater.inflate(R.layout.fragment_explore_tab, container, false);
|
final View mainView = inflater.inflate(R.layout.fragment_explore_tab, container, false);
|
||||||
|
@ -190,7 +192,7 @@ public class ExploreTabFragment extends BaseOsmAndFragment implements DownloadIn
|
||||||
@Override
|
@Override
|
||||||
public void onPrimaryButtonClick() {
|
public void onPrimaryButtonClick() {
|
||||||
if (mainIndexItem != null) {
|
if (mainIndexItem != null) {
|
||||||
new DownloadValidationManager(app).startDownload(getMyActivity(), mainIndexItem);
|
downloadManager.startDownload(getMyActivity(), mainIndexItem);
|
||||||
adapter.updateDownloadUpdateCard();
|
adapter.updateDownloadUpdateCard();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -227,7 +229,7 @@ public class ExploreTabFragment extends BaseOsmAndFragment implements DownloadIn
|
||||||
@Override
|
@Override
|
||||||
public void onPrimaryButtonClick() {
|
public void onPrimaryButtonClick() {
|
||||||
IndexItem[] items = neededIndexItems.toArray(new IndexItem[neededIndexItems.size()]);
|
IndexItem[] items = neededIndexItems.toArray(new IndexItem[neededIndexItems.size()]);
|
||||||
new DownloadValidationManager(app).startDownload(getMyActivity(), items);
|
downloadManager.startDownload(getMyActivity(), items);
|
||||||
adapter.updateNeededMapsCard();
|
adapter.updateNeededMapsCard();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -240,6 +242,17 @@ public class ExploreTabFragment extends BaseOsmAndFragment implements DownloadIn
|
||||||
removeNeededMapsCard();
|
removeNeededMapsCard();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onIndexItemClick(IndexItem item) {
|
||||||
|
DownloadIndexesThread downloadThread = app.getDownloadThread();
|
||||||
|
if (downloadThread.isDownloading(item)) {
|
||||||
|
downloadThread.cancelDownload(item);
|
||||||
|
} else {
|
||||||
|
downloadManager.startDownload(getMyActivity(), item);
|
||||||
|
}
|
||||||
|
adapter.updateNeededMapsCard();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
adapter.setNeededMapsCard(neededMapsCard);
|
adapter.setNeededMapsCard(neededMapsCard);
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,6 +28,7 @@ public class TravelNeededMapsCard extends BaseTravelCard {
|
||||||
private Drawable cancelIcon;
|
private Drawable cancelIcon;
|
||||||
|
|
||||||
private CardListener listener;
|
private CardListener listener;
|
||||||
|
private View.OnClickListener onItemClickListener;
|
||||||
|
|
||||||
public void setListener(CardListener listener) {
|
public void setListener(CardListener listener) {
|
||||||
this.listener = listener;
|
this.listener = listener;
|
||||||
|
@ -39,6 +40,14 @@ public class TravelNeededMapsCard extends BaseTravelCard {
|
||||||
this.items = items;
|
this.items = items;
|
||||||
downloadIcon = getActiveIcon(R.drawable.ic_action_import);
|
downloadIcon = getActiveIcon(R.drawable.ic_action_import);
|
||||||
cancelIcon = getActiveIcon(R.drawable.ic_action_remove_dark);
|
cancelIcon = getActiveIcon(R.drawable.ic_action_remove_dark);
|
||||||
|
onItemClickListener = new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
if (listener != null) {
|
||||||
|
listener.onIndexItemClick((IndexItem) view.getTag());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -57,6 +66,13 @@ public class TravelNeededMapsCard extends BaseTravelCard {
|
||||||
boolean lastItem = i == items.size() - 1;
|
boolean lastItem = i == items.size() - 1;
|
||||||
View view = holder.itemsContainer.getChildAt(i);
|
View view = holder.itemsContainer.getChildAt(i);
|
||||||
|
|
||||||
|
if (item.isDownloaded()) {
|
||||||
|
view.setOnClickListener(null);
|
||||||
|
} else {
|
||||||
|
view.setTag(item);
|
||||||
|
view.setOnClickListener(onItemClickListener);
|
||||||
|
}
|
||||||
|
|
||||||
((ImageView) view.findViewById(R.id.icon))
|
((ImageView) view.findViewById(R.id.icon))
|
||||||
.setImageDrawable(getActiveIcon(item.getType().getIconResource()));
|
.setImageDrawable(getActiveIcon(item.getType().getIconResource()));
|
||||||
((TextView) view.findViewById(R.id.title))
|
((TextView) view.findViewById(R.id.title))
|
||||||
|
@ -177,6 +193,8 @@ public class TravelNeededMapsCard extends BaseTravelCard {
|
||||||
void onPrimaryButtonClick();
|
void onPrimaryButtonClick();
|
||||||
|
|
||||||
void onSecondaryButtonClick();
|
void onSecondaryButtonClick();
|
||||||
|
|
||||||
|
void onIndexItemClick(IndexItem item);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class NeededMapsVH extends RecyclerView.ViewHolder {
|
public static class NeededMapsVH extends RecyclerView.ViewHolder {
|
||||||
|
|
Loading…
Reference in a new issue