Skip to content

Commit

Permalink
Changes to fix pending issues with upload flow
Browse files Browse the repository at this point in the history
  • Loading branch information
maskara committed Nov 5, 2018
1 parent 63609b7 commit b3348a6
Show file tree
Hide file tree
Showing 18 changed files with 298 additions and 485 deletions.

This file was deleted.

28 changes: 15 additions & 13 deletions app/src/main/java/fr/free/nrw/commons/category/CategoriesModel.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@ public class CategoriesModel implements CategoryClickedListener {

@Inject GpsCategoryModel gpsCategoryModel;
@Inject
public CategoriesModel(MediaWikiApi mwApi, CategoryDao categoryDao,
public CategoriesModel(MediaWikiApi mwApi,
CategoryDao categoryDao,
@Named("default_preferences") SharedPreferences prefs,
@Named("direct_nearby_upload_prefs") SharedPreferences directPrefs) {
this.mwApi = mwApi;
Expand Down Expand Up @@ -97,11 +98,11 @@ boolean cacheContainsKey(String term) {
//endregion

//region Category searching
public Observable<CategoryItem> searchAll(String term) {
public Observable<CategoryItem> searchAll(String term, List<String> imageTitleList) {
//If user hasn't typed anything in yet, get GPS and recent items
if (TextUtils.isEmpty(term)) {
return gpsCategories()
.concatWith(titleCategories())
.concatWith(titleCategories(imageTitleList))
.concatWith(recentCategories());
}

Expand All @@ -117,11 +118,11 @@ public Observable<CategoryItem> searchAll(String term) {
.map(name -> new CategoryItem(name, false));
}

public Observable<CategoryItem> searchCategories(String term) {
public Observable<CategoryItem> searchCategories(String term, List<String> imageTitleList) {
//If user hasn't typed anything in yet, get GPS and recent items
if (TextUtils.isEmpty(term)) {
return gpsCategories()
.concatWith(titleCategories())
.concatWith(titleCategories(imageTitleList))
.concatWith(recentCategories());
}

Expand All @@ -134,18 +135,18 @@ private ArrayList<String> getCachedCategories(String term) {
return categoriesCache.get(term);
}

public Observable<CategoryItem> defaultCategories() {
public Observable<CategoryItem> defaultCategories(List<String> titleList) {
Observable<CategoryItem> directCat = directCategories();
if (hasDirectCategories()) {
Timber.d("Image has direct Cat");
return directCat
.concatWith(gpsCategories())
.concatWith(titleCategories())
.concatWith(titleCategories(titleList))
.concatWith(recentCategories());
} else {
Timber.d("Image has no direct Cat");
return gpsCategories()
.concatWith(titleCategories())
.concatWith(titleCategories(titleList))
.concatWith(recentCategories());
}
}
Expand All @@ -171,12 +172,13 @@ Observable<CategoryItem> gpsCategories() {
.map(name -> new CategoryItem(name, false));
}

private Observable<CategoryItem> titleCategories() {
//Retrieve the title that was saved when user tapped submit icon
String title = prefs.getString("Title", "");
private Observable<CategoryItem> titleCategories(List<String> titleList) {
return Observable.fromIterable(titleList)
.concatMap(this::getTitleCategories);
}

return mwApi
.searchTitles(title, SEARCH_CATS_LIMIT)
private Observable<CategoryItem> getTitleCategories(String title) {
return mwApi.searchTitles(title, SEARCH_CATS_LIMIT)
.map(name -> new CategoryItem(name, false));
}

Expand Down

This file was deleted.

Loading

0 comments on commit b3348a6

Please sign in to comment.