From 556196cf6a2044066422cc64c0d64304812747ad Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sun, 16 Sep 2012 23:19:12 +0400 Subject: fix appending new headlines on scroll remove unused stuff from preferences --- res/xml/preferences.xml | 5 ----- 1 file changed, 5 deletions(-) (limited to 'res/xml/preferences.xml') diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml index 291a5ce5..d2bae786 100644 --- a/res/xml/preferences.xml +++ b/res/xml/preferences.xml @@ -94,11 +94,6 @@ android:summary="@string/combined_mode_summary" android:title="@string/combined_mode" /> - - Date: Wed, 19 Sep 2012 16:59:08 +0400 Subject: implement default browsing of articles --- res/menu/category_menu.xml | 4 ++++ res/menu/feed_menu.xml | 8 +++++++ res/values/arrays.xml | 10 ++++++++- res/values/strings.xml | 3 +++ res/xml/preferences.xml | 9 ++++++++ src/org/fox/ttrss/ArticlePager.java | 14 +++++++++++-- src/org/fox/ttrss/FeedCategoriesFragment.java | 19 ++++++++++++++++- src/org/fox/ttrss/FeedsActivity.java | 27 ++++++++++++++++-------- src/org/fox/ttrss/FeedsFragment.java | 30 +++++++++++++++++++++++++-- 9 files changed, 109 insertions(+), 15 deletions(-) (limited to 'res/xml/preferences.xml') diff --git a/res/menu/category_menu.xml b/res/menu/category_menu.xml index a1e5f81b..69f26554 100644 --- a/res/menu/category_menu.xml +++ b/res/menu/category_menu.xml @@ -1,5 +1,9 @@ + + diff --git a/res/menu/feed_menu.xml b/res/menu/feed_menu.xml index ff58a881..df8e4862 100644 --- a/res/menu/feed_menu.xml +++ b/res/menu/feed_menu.xml @@ -1,5 +1,13 @@ + + + + diff --git a/res/values/arrays.xml b/res/values/arrays.xml index ef479753..961bd955 100644 --- a/res/values/arrays.xml +++ b/res/values/arrays.xml @@ -17,5 +17,13 @@ 1 2 - + + @string/category_browse_headlines + @string/category_browse_articles + + + HEADLINES + ARTICLES + + \ No newline at end of file diff --git a/res/values/strings.xml b/res/values/strings.xml index 84fd1ed5..fec2ef4c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -131,4 +131,7 @@ Refresh Share Error: network unavailable + Browse headlines + Default feed view + Which feed view to open by default on smartphones \ No newline at end of file diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml index d2bae786..400d8a6d 100644 --- a/res/xml/preferences.xml +++ b/res/xml/preferences.xml @@ -98,6 +98,15 @@ android:defaultValue="true" android:key="justify_article_text" android:title="@string/justify_article_text" /> + + + diff --git a/src/org/fox/ttrss/ArticlePager.java b/src/org/fox/ttrss/ArticlePager.java index 35779843..0608679b 100644 --- a/src/org/fox/ttrss/ArticlePager.java +++ b/src/org/fox/ttrss/ArticlePager.java @@ -104,10 +104,11 @@ public class ArticlePager extends Fragment { if (article != null) { m_article = article; - if (article.unread) { + /* if (article.unread) { article.unread = false; m_activity.saveArticleUnread(article); - } + } */ + m_listener.onArticleSelected(article, false); //Log.d(TAG, "Page #" + position + "/" + m_adapter.getCount()); @@ -147,6 +148,15 @@ public class ArticlePager extends Fragment { if (result != null) { m_adapter.notifyDataSetChanged(); + + if (m_article.id == 0) { + if (m_articles.size() > 0) { + Log.d(TAG, "blank id on refresh"); + m_article = m_articles.get(0); + m_listener.onArticleSelected(m_article, false); + } + } + } else { if (m_lastError == ApiError.LOGIN_FAILED) { m_activity.login(); diff --git a/src/org/fox/ttrss/FeedCategoriesFragment.java b/src/org/fox/ttrss/FeedCategoriesFragment.java index 64561cf9..ac5c0046 100644 --- a/src/org/fox/ttrss/FeedCategoriesFragment.java +++ b/src/org/fox/ttrss/FeedCategoriesFragment.java @@ -92,6 +92,15 @@ public class FeedCategoriesFragment extends Fragment implements OnItemClickListe switch (item.getItemId()) { case R.id.browse_articles: + if (true) { + FeedCategory cat = getCategoryAtPosition(info.position); + if (cat != null) { + m_activity.openFeedArticles(new Feed(cat.id, cat.title, true)); + //setSelectedCategory(cat); + } + } + return true; + case R.id.browse_headlines: if (true) { FeedCategory cat = getCategoryAtPosition(info.position); if (cat != null) { @@ -392,7 +401,15 @@ public class FeedCategoriesFragment extends Fragment implements OnItemClickListe if (list != null) { FeedCategory cat = (FeedCategory)list.getItemAtPosition(position); - m_activity.onCatSelected(cat); + + if ("ARTICLES".equals(m_prefs.getString("default_view_mode", "HEADLINES")) && + m_prefs.getBoolean("browse_cats_like_feeds", false)) { + + m_activity.openFeedArticles(new Feed(cat.id, cat.title, true)); + + } else { + m_activity.onCatSelected(cat); + } if (!m_activity.isSmallScreen()) m_selectedCat = cat; diff --git a/src/org/fox/ttrss/FeedsActivity.java b/src/org/fox/ttrss/FeedsActivity.java index fd01606c..e1126fe5 100644 --- a/src/org/fox/ttrss/FeedsActivity.java +++ b/src/org/fox/ttrss/FeedsActivity.java @@ -68,7 +68,7 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe ap.setSearchQuery(intent.getStringExtra("searchQuery")); - setTitle(intent.getStringExtra("feedTitle")); + setTitle(feed.title); } else { if (feed != null) { HeadlinesFragment hf = new HeadlinesFragment(feed); @@ -136,20 +136,14 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe } } - public void onFeedSelected(Feed feed) { GlobalState.getInstance().m_loadedArticles.clear(); if (isSmallScreen()) { - Intent intent = new Intent(FeedsActivity.this, FeedsActivity.class); intent.putExtra("feed", feed); - + startActivityForResult(intent, 0); - - //HeadlinesFragment hf = new HeadlinesFragment(feed); - //ft.replace(R.id.feeds_fragment, hf, FRAG_HEADLINES); - //ft.addToBackStack(null); } else { FragmentTransaction ft = getSupportFragmentManager() .beginTransaction(); @@ -240,6 +234,22 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe initMenu(); } + public void openFeedArticles(Feed feed) { + if (isSmallScreen()) { + Intent intent = new Intent(FeedsActivity.this, FeedsActivity.class); + + GlobalState.getInstance().m_activeFeed = feed; + GlobalState.getInstance().m_loadedArticles.clear(); + + intent.putExtra("feed", feed); + intent.putExtra("article", new Article()); + startActivityForResult(intent, 0); + + } else { + + } + } + public void onArticleSelected(Article article, boolean open) { if (article.unread) { article.unread = false; @@ -252,7 +262,6 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe if (isSmallScreen()) { Intent intent = new Intent(FeedsActivity.this, FeedsActivity.class); - intent.putExtra("feedTitle", hf.getFeed().title); intent.putExtra("feed", hf.getFeed()); intent.putExtra("article", article); intent.putExtra("searchQuery", hf.getSearchQuery()); diff --git a/src/org/fox/ttrss/FeedsFragment.java b/src/org/fox/ttrss/FeedsFragment.java index 1a82534f..a8284c76 100644 --- a/src/org/fox/ttrss/FeedsFragment.java +++ b/src/org/fox/ttrss/FeedsFragment.java @@ -20,6 +20,7 @@ import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; +import org.fox.ttrss.types.Article; import org.fox.ttrss.types.Feed; import org.fox.ttrss.types.FeedCategory; import org.fox.ttrss.types.FeedList; @@ -136,6 +137,22 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh AdapterContextMenuInfo info = (AdapterContextMenuInfo) item .getMenuInfo(); switch (item.getItemId()) { + case R.id.browse_articles: + if (true) { + Feed feed = getFeedAtPosition(info.position); + if (feed != null) { + m_activity.openFeedArticles(feed); + } + } + return true; + case R.id.browse_headlines: + if (true) { + Feed feed = getFeedAtPosition(info.position); + if (feed != null) { + m_activity.onFeedSelected(feed); + } + } + return true; case R.id.catchup_feed: if (true) { Feed feed = getFeedAtPosition(info.position); @@ -163,6 +180,11 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh if (feed != null) menu.setHeaderTitle(feed.title); + if (!m_activity.isSmallScreen()) { + menu.findItem(R.id.browse_headlines).setVisible(false); + menu.findItem(R.id.browse_feeds).setVisible(false); + } + super.onCreateContextMenu(menu, v, menuInfo); } @@ -239,8 +261,12 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh cat.title = feed.title; m_activity.onCatSelected(cat); - } else { - m_activity.onFeedSelected(feed); + } else { + if ("ARTICLES".equals(m_prefs.getString("default_view_mode", "HEADLINES"))) { + m_activity.openFeedArticles(feed); + } else { + m_activity.onFeedSelected(feed); + } } if (!m_activity.isSmallScreen()) -- cgit v1.2.3-54-g00ecf From 9479fac206fa461ca3589d060b60e3ca36a5d715 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 19 Sep 2012 22:57:10 +0400 Subject: disable combined mode because of lack of images and performance issues --- res/xml/preferences.xml | 4 ++-- src/org/fox/ttrss/HeadlinesFragment.java | 2 +- src/org/fox/ttrss/OnlineActivity.java | 12 ++++++++++-- src/org/fox/ttrss/PreferencesActivity.java | 4 ++-- src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java | 2 +- 5 files changed, 16 insertions(+), 8 deletions(-) (limited to 'res/xml/preferences.xml') diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml index 400d8a6d..d6b81026 100644 --- a/res/xml/preferences.xml +++ b/res/xml/preferences.xml @@ -88,11 +88,11 @@ android:summary="@string/browse_cats_like_feeds_summary" android:title="@string/browse_cats_like_feeds" /> - + android:title="@string/combined_mode" /> --> pkgs = getPackageManager() + .getInstalledPackages(0); + + for (PackageInfo p : pkgs) { + if ("org.fox.ttrss.key".equals(p.packageName)) { + toast(R.string.donate_thanks); + break; + } + } + finish(); } @@ -879,11 +889,9 @@ public class OnlineActivity extends CommonActivity { if ("org.fox.ttrss.key".equals(p.packageName)) { Log.d(TAG, "license apk found"); menu.findItem(R.id.donate).setVisible(false); - toast(R.string.donate_thanks); break; } } - return true; } diff --git a/src/org/fox/ttrss/PreferencesActivity.java b/src/org/fox/ttrss/PreferencesActivity.java index 0568d813..5a7a28fb 100644 --- a/src/org/fox/ttrss/PreferencesActivity.java +++ b/src/org/fox/ttrss/PreferencesActivity.java @@ -20,12 +20,12 @@ public class PreferencesActivity extends PreferenceActivity { findPreference("justify_article_text").setEnabled(!prefs.getBoolean("combined_mode", false)); - findPreference("combined_mode").setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { + /* findPreference("combined_mode").setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { findPreference("justify_article_text").setEnabled(!newValue.toString().equals("true")); return true; } - }); + }); */ } } diff --git a/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java b/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java index b7817ac6..158e36cd 100644 --- a/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java +++ b/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java @@ -322,7 +322,7 @@ public class OfflineHeadlinesFragment extends Fragment implements OnItemClickLis m_activity = (OfflineActivity) activity; m_prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()); - m_combinedMode = m_prefs.getBoolean("combined_mode", false); + m_combinedMode = false; /* m_prefs.getBoolean("combined_mode", false); */ } @Override -- cgit v1.2.3-54-g00ecf