diff --git a/src/org/fox/ttrss/ArticleOps.java b/src/org/fox/ttrss/ArticleOps.java index 32d76050..16fa8e7e 100644 --- a/src/org/fox/ttrss/ArticleOps.java +++ b/src/org/fox/ttrss/ArticleOps.java @@ -5,6 +5,7 @@ public interface ArticleOps { public void saveArticleUnread(final Article article); public void saveArticleMarked(final Article article); public void saveArticlePublished(final Article article); + public void onArticleOpened(Article article); public void updateHeadlines(); } diff --git a/src/org/fox/ttrss/HeadlinesFragment.java b/src/org/fox/ttrss/HeadlinesFragment.java index 94701389..ec8216fd 100644 --- a/src/org/fox/ttrss/HeadlinesFragment.java +++ b/src/org/fox/ttrss/HeadlinesFragment.java @@ -46,28 +46,25 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener { private SharedPreferences m_prefs; private Feed m_feed; - private int m_selectedArticleId; + private int m_activeArticleId; private ArticleListAdapter m_adapter; private ArticleList m_articles = new ArticleList(); private ArticleList m_selectedArticles = new ArticleList(); - private OnArticleSelectedListener m_articleSelectedListener; private ArticleOps m_articleOps; - public interface OnArticleSelectedListener { - public void onArticleSelected(Article article); + public ArticleList getSelectedArticles() { + return m_selectedArticles; } - - @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { if (savedInstanceState != null) { m_feed = savedInstanceState.getParcelable("feed"); m_articles = savedInstanceState.getParcelable("articles"); - m_selectedArticleId = savedInstanceState.getInt("selectedArticleId"); + m_activeArticleId = savedInstanceState.getInt("activeArticleId"); m_selectedArticles = savedInstanceState.getParcelable("selectedArticles"); } @@ -104,7 +101,6 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener { super.onAttach(activity); m_prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()); m_feed = ((MainActivity)activity).getActiveFeed(); - m_articleSelectedListener = (OnArticleSelectedListener) activity; m_articleOps = (ArticleOps) activity; } @@ -114,14 +110,14 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener { if (list != null) { Article article = (Article)list.getItemAtPosition(position); - m_articleSelectedListener.onArticleSelected(article); + m_articleOps.onArticleOpened(article); if (article.unread) { article.unread = false; m_articleOps.saveArticleUnread(article); } - m_selectedArticleId = article.id; + m_activeArticleId = article.id; m_adapter.notifyDataSetChanged(); } } @@ -172,7 +168,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener { out.putParcelable("feed", m_feed); out.putParcelable("articles", m_articles); - out.putInt("selectedArticleId", m_selectedArticleId); + out.putInt("activeArticleId", m_activeArticleId); out.putParcelable("selectedArticles", m_selectedArticles); } @@ -279,7 +275,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener { public int getItemViewType(int position) { Article a = items.get(position); - if (a.id == m_selectedArticleId) { + if (a.id == m_activeArticleId) { return VIEW_SELECTED; } else if (a.unread) { return VIEW_UNREAD; diff --git a/src/org/fox/ttrss/MainActivity.java b/src/org/fox/ttrss/MainActivity.java index dc1f0022..0d0fcb99 100644 --- a/src/org/fox/ttrss/MainActivity.java +++ b/src/org/fox/ttrss/MainActivity.java @@ -26,7 +26,7 @@ import android.widget.TextView; import com.google.gson.JsonElement; import com.google.gson.JsonObject; -public class MainActivity extends FragmentActivity implements FeedsFragment.OnFeedSelectedListener, HeadlinesFragment.OnArticleSelectedListener, ArticleOps { +public class MainActivity extends FragmentActivity implements FeedsFragment.OnFeedSelectedListener, ArticleOps { private final String TAG = this.getClass().getSimpleName(); private SharedPreferences m_prefs; @@ -649,7 +649,7 @@ public class MainActivity extends FragmentActivity implements FeedsFragment.OnFe } @Override - public void onArticleSelected(Article article) { + public void onArticleOpened(Article article) { openArticle(article); }