summaryrefslogtreecommitdiff
path: root/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java')
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java62
1 files changed, 61 insertions, 1 deletions
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
index e8559d3e..bac7042b 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
@@ -31,6 +31,8 @@ import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
+import com.github.javiersantos.appupdater.AppUpdater;
+import com.github.javiersantos.appupdater.enums.UpdateFrom;
import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
@@ -256,11 +258,20 @@ public class OnlineActivity extends CommonActivity {
switchOfflineSuccess();
} else {
checkTrial(false);
+ checkUpdates();
m_headlinesActionModeCallback = new HeadlinesActionModeCallback();
}
}
+ protected void checkUpdates() {
+ if (BuildConfig.DEBUG || BuildConfig.ENABLE_UPDATER) {
+ new AppUpdater(this)
+ .setUpdateFrom(UpdateFrom.JSON)
+ .setUpdateJSON(String.format("https://srv.tt-rss.org/fdroid/updates/%1$s.json", this.getPackageName()))
+ .start();
+ }
+ }
protected void switchOffline() {
AlertDialog.Builder builder = new AlertDialog.Builder(this)
@@ -1208,6 +1219,27 @@ public class OnlineActivity extends CommonActivity {
req.execute(map);
}
+ public void saveArticleScore(final Article article) {
+ ApiRequest req = new ApiRequest(getApplicationContext()) {
+ protected void onPostExecute(JsonElement result) {
+ //toast(article.marked ? R.string.notify_article_marked : R.string.notify_article_unmarked);
+ invalidateOptionsMenu();
+ }
+ };
+
+ HashMap<String, String> map = new HashMap<String, String>() {
+ {
+ put("sid", getSessionId());
+ put("op", "updateArticle");
+ put("article_ids", String.valueOf(article.id));
+ put("data", String.valueOf(article.score));
+ put("field", "4");
+ }
+ };
+
+ req.execute(map);
+ }
+
public void saveArticleMarked(final Article article) {
ApiRequest req = new ApiRequest(getApplicationContext()) {
protected void onPostExecute(JsonElement result) {
@@ -1291,8 +1323,36 @@ public class OnlineActivity extends CommonActivity {
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
+ ArticlePager ap = (ArticlePager) getSupportFragmentManager().findFragmentByTag(FRAG_ARTICLE);
+ HeadlinesFragment hf = (HeadlinesFragment) getSupportFragmentManager().findFragmentByTag(FRAG_HEADLINES);
+
+ switch (keyCode) {
+ case KeyEvent.KEYCODE_DPAD_LEFT:
+ if (ap != null && ap.isAdded()) {
+ ap.selectArticle(false);
+ return true;
+ }
+ break;
+ case KeyEvent.KEYCODE_DPAD_RIGHT:
+ if (ap != null && ap.isAdded()) {
+ ap.selectArticle(true);
+ return true;
+ }
+ break;
+ case KeyEvent.KEYCODE_ESCAPE:
+ moveTaskToBack(true);
+ return true;
+ case KeyEvent.KEYCODE_U:
+ if (ap != null && ap.getSelectedArticle() != null) {
+ Article a = ap.getSelectedArticle();
+ a.unread = !a.unread;
+ saveArticleUnread(a);
+ if (hf != null) hf.notifyUpdated();
+ }
+ return true;
+ }
+
if (m_prefs.getBoolean("use_volume_keys", false)) {
- ArticlePager ap = (ArticlePager) getSupportFragmentManager().findFragmentByTag(FRAG_ARTICLE);
if (ap != null && ap.isAdded()) {
switch (keyCode) {