Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/news-android.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Luhmer <david-dev@live.de>2021-03-07 17:53:39 +0300
committerDavid Luhmer <david-dev@live.de>2021-03-07 17:53:39 +0300
commit81efd19855c160baa97699f677091590d7c65a8e (patch)
tree5f68bc9c2a9e432148c1d9bea9fd1aa3511249cf /News-Android-App/src/main/java
parent319ff61db4f501cbb813ae2369ad54a7be26a793 (diff)
parent212134beb1a97afd6f6f90bb797f9dc11242eedd (diff)
Merge branch 'master' of https://github.com/nextcloud/news-android
Diffstat (limited to 'News-Android-App/src/main/java')
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailActivity.java8
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailImageDialogFragment.java2
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsReaderListActivity.java16
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/SyncIntervalSelectorActivity.java9
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/adapter/NewsListRecyclerAdapter.java2
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/AccountGeneral.java14
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/OwnCloudSyncAdapter.java2
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/DownloadImagesService.java4
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/OwnCloudSyncService.java2
-rw-r--r--News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/widget/WidgetNewsViewsFactory.java9
10 files changed, 37 insertions, 31 deletions
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailActivity.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailActivity.java
index cbe00113..c7a5ab95 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailActivity.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailActivity.java
@@ -97,14 +97,6 @@ public class NewsDetailActivity extends PodcastFragmentActivity {
SharedPreferences mPrefs;
private boolean mShowFastActions;
-
- public static SORT_DIRECTION getSortDirectionFromSettings(SharedPreferences prefs) {
- SORT_DIRECTION sDirection = SORT_DIRECTION.asc;
- String sortDirection = prefs.getString(SettingsActivity.SP_SORT_ORDER, "1");
- if ("1".equals(sortDirection))
- sDirection = SORT_DIRECTION.desc;
- return sDirection;
- }
@Override
protected void onCreate(Bundle savedInstanceState) {
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailImageDialogFragment.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailImageDialogFragment.java
index f7f00059..36c61463 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailImageDialogFragment.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsDetailImageDialogFragment.java
@@ -447,7 +447,7 @@ public class NewsDetailImageDialogFragment extends DialogFragment {
//String imagePath = downloadManager.getUriForDownloadedFile(refID).toString();
- String downloadFileLocalUri = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI));
+ String downloadFileLocalUri = cursor.getString(cursor.getColumnIndexOrThrow(DownloadManager.COLUMN_LOCAL_URI));
File image = new File(Uri.parse(downloadFileLocalUri).getPath());
NextcloudNotificationManager.showNotificationDownloadSingleImageComplete(context, image);
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsReaderListActivity.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsReaderListActivity.java
index 1caa0066..573eb86b 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsReaderListActivity.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/NewsReaderListActivity.java
@@ -117,6 +117,7 @@ import io.reactivex.schedulers.Schedulers;
import io.reactivex.subjects.PublishSubject;
import static android.Manifest.permission.ACCESS_FINE_LOCATION;
+import static androidx.annotation.VisibleForTesting.PROTECTED;
import static de.luhmer.owncloudnewsreader.LoginDialogActivity.RESULT_LOGIN;
import static de.luhmer.owncloudnewsreader.LoginDialogActivity.ShowAlertDialog;
@@ -141,9 +142,10 @@ public class NewsReaderListActivity extends PodcastFragmentActivity implements
public static HashSet<Long> stayUnreadItems = new HashSet<>();
- private static MenuItem menuItemDownloadMoreItems;
+ private MenuItem menuItemDownloadMoreItems;
- protected ActivityNewsreaderBinding binding;
+ @VisibleForTesting(otherwise = PROTECTED)
+ public ActivityNewsreaderBinding binding;
//private ServiceConnection mConnection = null;
@@ -383,8 +385,9 @@ public class NewsReaderListActivity extends PodcastFragmentActivity implements
boolean isAccountThere = false;
Account[] accounts = mAccountManager.getAccounts();
+ String accountType = AccountGeneral.getAccountType(this);
for (Account account : accounts) {
- if (account.type.intern().equals(AccountGeneral.ACCOUNT_TYPE)) {
+ if (account.type.intern().equals(accountType)) {
isAccountThere = true;
}
}
@@ -392,7 +395,7 @@ public class NewsReaderListActivity extends PodcastFragmentActivity implements
//If the account is not in the Android Account Manager
if (!isAccountThere) {
//Then add the new account
- Account account = new Account(getString(R.string.app_name), AccountGeneral.ACCOUNT_TYPE);
+ Account account = new Account(getString(R.string.app_name), accountType);
mAccountManager.addAccountExplicitly(account, "", new Bundle());
SyncIntervalSelectorActivity.setAccountSyncInterval(this, mPrefs);
@@ -652,8 +655,9 @@ public class NewsReaderListActivity extends PodcastFragmentActivity implements
AccountManager mAccountManager = AccountManager.get(this);
Account[] accounts = mAccountManager.getAccounts();
for(Account acc : accounts) {
- if (acc.type.equals(AccountGeneral.ACCOUNT_TYPE)) {
- ContentResolver.requestSync(acc, AccountGeneral.ACCOUNT_TYPE, accBundle);
+ String accountType = AccountGeneral.getAccountType(this);
+ if (acc.type.equals(accountType)) {
+ ContentResolver.requestSync(acc, accountType, accBundle);
}
}
//http://stackoverflow.com/questions/5253858/why-does-contentresolver-requestsync-not-trigger-a-sync
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/SyncIntervalSelectorActivity.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/SyncIntervalSelectorActivity.java
index 53bffb53..59cf2b37 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/SyncIntervalSelectorActivity.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/SyncIntervalSelectorActivity.java
@@ -72,21 +72,22 @@ public class SyncIntervalSelectorActivity extends AppCompatActivity {
int minutes = mPrefs.getInt(SYNC_INTERVAL_IN_MINUTES_STRING, SYNC_DEFAULT_INTERVAL);
AccountManager mAccountManager = AccountManager.get(context);
- Account[] accounts = mAccountManager.getAccountsByType(AccountGeneral.ACCOUNT_TYPE);
+ String accountType = AccountGeneral.getAccountType(context);
+ Account[] accounts = mAccountManager.getAccountsByType(accountType);
for (Account account : accounts) {
if (minutes != 0) {
long SYNC_INTERVAL = minutes * SECONDS_PER_MINUTE;
- ContentResolver.setSyncAutomatically(account, AccountGeneral.ACCOUNT_TYPE, true);
+ ContentResolver.setSyncAutomatically(account, accountType, true);
Bundle bundle = new Bundle();
ContentResolver.addPeriodicSync(
account,
- AccountGeneral.ACCOUNT_TYPE,
+ accountType,
bundle,
SYNC_INTERVAL);
} else {
- ContentResolver.setSyncAutomatically(account, AccountGeneral.ACCOUNT_TYPE, false);
+ ContentResolver.setSyncAutomatically(account, accountType, false);
}
}
}
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/adapter/NewsListRecyclerAdapter.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/adapter/NewsListRecyclerAdapter.java
index 10525cd4..d0e9936b 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/adapter/NewsListRecyclerAdapter.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/adapter/NewsListRecyclerAdapter.java
@@ -37,7 +37,7 @@ import de.luhmer.owncloudnewsreader.helper.StopWatch;
import de.luhmer.owncloudnewsreader.interfaces.IPlayPausePodcastClicked;
import de.luhmer.owncloudnewsreader.model.CurrentRssViewDataHolder;
-public class NewsListRecyclerAdapter extends RecyclerView.Adapter {
+public class NewsListRecyclerAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
private static final String TAG = "NewsListRecyclerAdapter";
private final int VIEW_ITEM = 1; // Item
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/AccountGeneral.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/AccountGeneral.java
index 81b3902a..f8d2734d 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/AccountGeneral.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/AccountGeneral.java
@@ -1,10 +1,10 @@
package de.luhmer.owncloudnewsreader.authentication;
+import android.content.Context;
+
+import de.luhmer.owncloudnewsreader.R;
+
public class AccountGeneral {
- /**
- * Account type id
- */
- public static final String ACCOUNT_TYPE = "de.luhmer.owncloudnewsreader";
/**
* Account name
@@ -21,4 +21,10 @@ public class AccountGeneral {
public static final String AUTHTOKEN_TYPE_FULL_ACCESS = "Full access";
public static final String AUTHTOKEN_TYPE_FULL_ACCESS_LABEL = "Full access to an Nextcloud News account";
+ /**
+ * Account type id
+ */
+ public static String getAccountType(Context context) {
+ return context.getString(R.string.account_type);
+ }
}
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/OwnCloudSyncAdapter.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/OwnCloudSyncAdapter.java
index 0ad3dde7..90e42a69 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/OwnCloudSyncAdapter.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/authentication/OwnCloudSyncAdapter.java
@@ -60,7 +60,7 @@ public class OwnCloudSyncAdapter extends AbstractThreadedSyncAdapter {
public OwnCloudSyncAdapter(Context context, boolean autoInitialize) {
super(context, autoInitialize);
- ((NewsReaderApplication) context.getApplicationContext()).getAppComponent().injectService(this);
+ ((NewsReaderApplication) context).getAppComponent().injectService(this);
}
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/DownloadImagesService.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/DownloadImagesService.java
index fdc51be1..c6aec03c 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/DownloadImagesService.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/DownloadImagesService.java
@@ -114,10 +114,10 @@ public class DownloadImagesService extends JobIntentService {
if(downloadMode.equals(DownloadMode.FAVICONS_ONLY)) {
List<Feed> feedList = dbConn.getListOfFeeds();
- FavIconHandler favIconHandler = new FavIconHandler(this);
+ FavIconHandler favIconHandler = new FavIconHandler(getApplicationContext());
for(Feed feed : feedList) {
try {
- favIconHandler.preCacheFavIcon(feed, this);
+ favIconHandler.preCacheFavIcon(feed, getApplicationContext());
} catch(IllegalStateException ex) {
Log.e(TAG, ex.getMessage());
}
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/OwnCloudSyncService.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/OwnCloudSyncService.java
index 8792c3f3..15693a0d 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/OwnCloudSyncService.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/services/OwnCloudSyncService.java
@@ -24,7 +24,7 @@ public class OwnCloudSyncService extends Service {
*/
synchronized (sSyncAdapterLock) {
if (sSyncAdapter == null) {
- sSyncAdapter = new OwnCloudSyncAdapter(this, true);
+ sSyncAdapter = new OwnCloudSyncAdapter(getApplicationContext(), true);
}
}
}
diff --git a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/widget/WidgetNewsViewsFactory.java b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/widget/WidgetNewsViewsFactory.java
index 0c7ef79d..6c7a1218 100644
--- a/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/widget/WidgetNewsViewsFactory.java
+++ b/News-Android-App/src/main/java/de/luhmer/owncloudnewsreader/widget/WidgetNewsViewsFactory.java
@@ -35,8 +35,8 @@ import android.widget.RemoteViewsService;
import java.text.SimpleDateFormat;
import java.util.Date;
-import java.util.List;
+import de.greenrobot.dao.query.LazyList;
import de.luhmer.owncloudnewsreader.Constants;
import de.luhmer.owncloudnewsreader.R;
import de.luhmer.owncloudnewsreader.database.DatabaseConnectionOrm;
@@ -47,7 +47,7 @@ public class WidgetNewsViewsFactory implements RemoteViewsService.RemoteViewsFac
private static final String TAG = WidgetNewsViewsFactory.class.getCanonicalName();
private DatabaseConnectionOrm dbConn;
- private List<RssItem> rssItems;
+ private LazyList<RssItem> rssItems;
private Context context;
private int appWidgetId;
@@ -70,6 +70,7 @@ public class WidgetNewsViewsFactory implements RemoteViewsService.RemoteViewsFac
@Override
public void onDestroy() {
+ rssItems.close();
}
@Override
@@ -186,11 +187,13 @@ public class WidgetNewsViewsFactory implements RemoteViewsService.RemoteViewsFac
return(true);
}
- @SuppressWarnings("deprecation")
@Override
public void onDataSetChanged() {
Log.v(TAG, "DataSetChanged - WidgetID: " + appWidgetId);
+ if (rssItems != null && !rssItems.isClosed()) {
+ rssItems.close();
+ }
rssItems = dbConn.getAllUnreadRssItemsForWidget();
Log.v(TAG, "DataSetChanged finished!");