diff --git a/CHANGELOG.md b/CHANGELOG.md index 421130aa..ccf880b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +# v1.1.4 + +- Fix app crash when using an account url without http scheme #55 +- Fix FreshRSS folder name parsing #61 +- Fix feeds being deleted when adding a new feed with a NC News account #59 + # v1.1.3 - Fix crash for API < 24 #51 diff --git a/app/src/main/java/com/readrops/app/activities/AddAccountActivity.java b/app/src/main/java/com/readrops/app/activities/AddAccountActivity.java index d503933d..28cf8d26 100644 --- a/app/src/main/java/com/readrops/app/activities/AddAccountActivity.java +++ b/app/src/main/java/com/readrops/app/activities/AddAccountActivity.java @@ -83,6 +83,9 @@ public class AddAccountActivity extends AppCompatActivity { String login = binding.addAccountLogin.getText().toString().trim(); String password = binding.addAccountPassword.getText().toString().trim(); + if (!(url.toLowerCase().contains(Utils.HTTP_PREFIX) || url.toLowerCase().contains(Utils.HTTPS_PREFIX))) { + url = Utils.HTTPS_PREFIX + url; + } if (editAccount) { accountToEdit.setUrl(url); diff --git a/app/src/main/java/com/readrops/app/repositories/NextNewsRepository.java b/app/src/main/java/com/readrops/app/repositories/NextNewsRepository.java index ce8cb6d0..1b9c92e0 100644 --- a/app/src/main/java/com/readrops/app/repositories/NextNewsRepository.java +++ b/app/src/main/java/com/readrops/app/repositories/NextNewsRepository.java @@ -108,7 +108,7 @@ public class NextNewsRepository extends ARepository { insertFolders(syncResult.getFolders()); timings.addSplit("insert folders"); - insertFeeds(syncResult.getFeeds()); + insertFeeds(syncResult.getFeeds(), false); timings.addSplit("insert feeds"); insertItems(syncResult.getItems(), syncType == SyncType.INITIAL_SYNC); @@ -144,7 +144,7 @@ public class NextNewsRepository extends ARepository { List nextNewsFeeds = api.createFeed(result.getUrl(), 0); if (nextNewsFeeds != null) { - List newFeeds = insertFeeds(nextNewsFeeds); + List newFeeds = insertFeeds(nextNewsFeeds, true); // there is always only one object in the list, see nextcloud news api doc insertionResult.setFeed(newFeeds.get(0)); } else @@ -259,12 +259,17 @@ public class NextNewsRepository extends ARepository { }).andThen(super.deleteFolder(folder)); } - private List insertFeeds(List nextNewsFeeds) { + private List insertFeeds(List nextNewsFeeds, boolean newFeeds) { for (Feed nextNewsFeed : nextNewsFeeds) { nextNewsFeed.setAccountId(account.getId()); } - List insertedFeedsIds = database.feedDao().feedsUpsert(nextNewsFeeds, account); + List insertedFeedsIds; + if (newFeeds) { + insertedFeedsIds = database.feedDao().insert(nextNewsFeeds); + } else { + insertedFeedsIds = database.feedDao().feedsUpsert(nextNewsFeeds, account); + } List insertedFeeds = new ArrayList<>(); if (!insertedFeedsIds.isEmpty()) { diff --git a/fastlane/metadata/android/en-US/changelogs/10.txt b/fastlane/metadata/android/en-US/changelogs/10.txt new file mode 100644 index 00000000..81931c05 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/10.txt @@ -0,0 +1,6 @@ +
    +
  • Fix app crash when using an account url without http scheme
  • +
  • Fix FreshRSS folder name parsing
  • +
  • Fix feeds being deleted when adding a new feed with a NC News account
  • +
+