summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java170
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java16
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/DetailActivity.java7
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java8
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java5
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java6
6 files changed, 8 insertions, 204 deletions
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java
index 3cd73734..eba87ab9 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java
@@ -27,12 +27,8 @@ public class ArticlePager extends androidx.fragment.app.Fragment {
private HeadlinesEventListener m_listener;
private int m_articleId;
private OnlineActivity m_activity;
- private String m_searchQuery = "";
private Feed m_feed;
- private SharedPreferences m_prefs;
private int m_firstId = 0;
- private boolean m_refreshInProgress;
- private boolean m_lazyLoadDisabled;
private ViewPager2 m_pager;
private static class PagerAdapter extends FragmentStateAdapter {
@@ -72,10 +68,6 @@ public class ArticlePager extends androidx.fragment.app.Fragment {
m_feed = feed;
}
- public void setSearchQuery(String searchQuery) {
- m_searchQuery = searchQuery;
- }
-
@Override
public void onSaveInstanceState(Bundle out) {
super.onSaveInstanceState(out);
@@ -124,15 +116,7 @@ public class ArticlePager extends androidx.fragment.app.Fragment {
if (article != null) {
m_articleId = article.id;
- new Handler().postDelayed(() -> m_listener.onArticleSelected(article, false), 250);
-
- //Log.d(TAG, "Page #" + position + "/" + m_adapter.getCount());
-
- if (!m_refreshInProgress && !m_lazyLoadDisabled && (m_activity.isSmallScreen() || m_activity.isPortrait()) && position >= m_adapter.getItemCount() - 5) {
- Log.d(TAG, "loading more articles...");
-
- new Handler().postDelayed(() -> refresh(true), 100);
- }
+ m_listener.onArticleSelected(article, false);
}
}
});
@@ -140,164 +124,12 @@ public class ArticlePager extends androidx.fragment.app.Fragment {
return view;
}
- protected void refresh(final boolean append) {
- //
- }
-
- /* protected void refresh(final boolean append) {
-
- if (!append) {
- m_lazyLoadDisabled = false;
- }
-
- m_refreshInProgress = true;
-
- @SuppressLint("StaticFieldLeak") HeadlinesRequest req = new HeadlinesRequest(getActivity().getApplicationContext(), m_activity, Application.getArticles()) {
- @Override
- protected void onPostExecute(JsonElement result) {
- if (isDetached() || !isAdded()) return;
-
- if (!append) {
- m_pager.setCurrentItem(0, false);
- Application.getArticles().clear();
- }
-
- super.onPostExecute(result);
-
- m_refreshInProgress = false;
-
- if (result != null) {
-
- if (m_firstIdChanged) {
- m_lazyLoadDisabled = true;
- }
-
- if (m_firstIdChanged && !(m_activity instanceof DetailActivity && !m_activity.isPortrait())) {
- //m_activity.toast(R.string.headlines_row_top_changed);
-
- Snackbar.make(getView(), R.string.headlines_row_top_changed, Snackbar.LENGTH_LONG)
- .setAction(R.string.reload, v -> refresh(false)).show();
- }
-
- if (m_amountLoaded < Integer.parseInt(m_prefs.getString("headlines_request_size", "15"))) {
- m_lazyLoadDisabled = true;
- }
-
- ArticlePager.this.m_firstId = m_firstId;
-
- try {
- m_adapter.notifyDataSetChanged();
- } catch (BadParcelableException e) {
- if (getActivity() != null) {
- getActivity().finish();
- return;
- }
- }
-
- if (!Application.getArticles().isEmpty()) {
- if (Application.getArticles().getById(m_articleId) == null) {
- Article article = Application.getArticles().get(0);
-
- m_articleId = article.id;
- m_listener.onArticleSelected(article, false);
- }
- }
-
- } else {
- m_lazyLoadDisabled = true;
-
- if (m_lastError == ApiCommon.ApiError.LOGIN_FAILED) {
- m_activity.login(true);
- } else {
- m_activity.toast(getErrorMessage());
- }
- }
- }
- };
-
- final Feed feed = m_feed;
-
- final String sessionId = m_activity.getSessionId();
- int skip = 0;
-
- if (append) {
- // adaptive, all_articles, marked, published, unread
- String viewMode = m_activity.getViewMode();
- int numUnread = 0;
- int numAll = Application.getArticles().size();
-
- for (Article a : Application.getArticles()) {
- if (a.unread) ++numUnread;
- }
-
- if ("marked".equals(viewMode)) {
- skip = numAll;
- } else if ("published".equals(viewMode)) {
- skip = numAll;
- } else if ("unread".equals(viewMode)) {
- skip = numUnread;
- } else if (m_searchQuery != null && !m_searchQuery.isEmpty()) {
- skip = numAll;
- } else if ("adaptive".equals(viewMode)) {
- skip = numUnread > 0 ? numUnread : numAll;
- } else {
- skip = numAll;
- }
- }
-
- final int fskip = skip;
-
- req.setOffset(skip);
-
- HashMap<String,String> map = new HashMap<>();
- map.put("op", "getHeadlines");
- map.put("sid", sessionId);
- map.put("feed_id", String.valueOf(feed.id));
- map.put("show_excerpt", "true");
- map.put("excerpt_length", String.valueOf(CommonActivity.EXCERPT_MAX_LENGTH));
- map.put("show_content", "true");
- map.put("include_attachments", "true");
- map.put("limit", m_prefs.getString("headlines_request_size", "15"));
- map.put("offset", String.valueOf(0));
- map.put("view_mode", m_activity.getViewMode());
- map.put("skip", String.valueOf(fskip));
- map.put("include_nested", "true");
- map.put("has_sandbox", "true");
- map.put("order_by", m_activity.getSortMode());
-
- if (feed.is_cat) map.put("is_cat", "true");
-
- if (m_searchQuery != null && !m_searchQuery.isEmpty()) {
- map.put("search", m_searchQuery);
- map.put("search_mode", "");
- map.put("match_on", "both");
- }
-
- if (m_firstId > 0) map.put("check_first_id", String.valueOf(m_firstId));
-
- if (m_activity.getApiLevel() >= 12) {
- map.put("include_header", "true");
- }
-
- if (m_prefs.getBoolean("enable_image_downsampling", false)) {
- if (m_prefs.getBoolean("always_downsample_images", false) || !m_activity.isWifiConnected()) {
- map.put("resize_width", String.valueOf(m_activity.getResizeWidth()));
- }
- }
-
- Log.d(TAG, "[AP] request more headlines, firstId=" + m_firstId);
-
- req.execute(map);
- } */
-
@Override
public void onAttach(@NonNull Activity activity) {
super.onAttach(activity);
m_listener = (HeadlinesEventListener)activity;
m_activity = (OnlineActivity)activity;
-
- m_prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext());
}
@SuppressLint("NewApi")
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java
index cdc261b7..5fac1f5b 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java
@@ -330,22 +330,6 @@ public class CommonActivity extends AppCompatActivity implements SharedPreferenc
});
}
- protected void preloadUriIfAllowed(Uri uri) {
- boolean enableCustomTabs = m_prefs.getBoolean("enable_custom_tabs", true);
-
- if (m_customTabClient != null && enableCustomTabs) {
- ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
- NetworkInfo info = cm.getActiveNetworkInfo();
-
- if (info != null && info.isConnected() && info.getType() == ConnectivityManager.TYPE_WIFI) {
- CustomTabsSession session = getCustomTabSession();
- session.mayLaunchUrl(uri, null, null);
-
- //toast("Preloading: " + uri.toString());
- }
- }
- }
-
protected Intent getShareIntent(String text, String subject) {
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/DetailActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/DetailActivity.java
index 048156ce..f0716443 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/DetailActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/DetailActivity.java
@@ -157,7 +157,6 @@ public class DetailActivity extends OnlineActivity implements HeadlinesEventList
ArticlePager ap = new ArticlePager();
ap.initialize(openedArticleId, feed);
- ap.setSearchQuery(searchQuery);
ft.replace(R.id.article_fragment, ap, FRAG_ARTICLE);
@@ -280,12 +279,6 @@ public class DetailActivity extends OnlineActivity implements HeadlinesEventList
saveArticleUnread(article);
}
- try {
- preloadUriIfAllowed(Uri.parse(article.link));
- } catch (Exception e) {
- e.printStackTrace();
- }
-
if (!getSupportActionBar().isShowing()) getSupportActionBar().show();
if (open) {
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
index b98aa6c8..52fe39c9 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
@@ -459,11 +459,11 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements
new Handler().postDelayed(() -> m_activity.refresh(false), 100);
}
- /* int lastVisibleItem = m_layoutManager.findLastVisibleItemPosition();
+ int lastVisibleItem = m_layoutManager.findLastVisibleItemPosition();
if (lastVisibleItem >= Application.getArticles().size() - 5) {
refresh(true);
- } */
+ }
}
}
@@ -493,8 +493,8 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements
}
}
- if (lastVisibleItem >= Application.getArticles().size() - 5)
- new Handler().postDelayed(() -> refresh(true), 1000);
+ /* if (lastVisibleItem >= Application.getArticles().size() - 5)
+ new Handler().postDelayed(() -> refresh(true), 1000); */
}
});
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java
index 911d8ed7..fac3c0c0 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java
@@ -528,14 +528,15 @@ public class MasterActivity extends OnlineActivity implements HeadlinesEventList
HeadlinesFragment hf = (HeadlinesFragment) getSupportFragmentManager().findFragmentByTag(FRAG_HEADLINES);
if (hf != null) {
+
+ // articles might've been changed while in detail activity
hf.notifyUpdated();
// data might be null if detailactivity crashed
- if (data != null && data.getExtras() != null) {
+ if (data != null) {
int activeArticleId = data.getIntExtra("activeArticleId", 0);
Log.d(TAG, "got back from detail activity, scrolling to id=" + activeArticleId);
-
hf.scrollToArticleId(activeArticleId);
}
}
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 ec51cc98..22c23ea1 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
@@ -1190,12 +1190,6 @@ article.score = Integer.parseInt(edit.getText().toString());
if (hf != null) {
hf.refresh(false);
}
-
- ArticlePager af = (ArticlePager) getSupportFragmentManager().findFragmentByTag(FRAG_ARTICLE);
-
- if (af != null) {
- af.refresh(false);
- }
}
}