summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2011-11-23 15:51:15 +0300
committerAndrew Dolgov <[email protected]>2011-11-23 15:51:15 +0300
commitacd27869614a60610a93f59dbf6869059ee5dc81 (patch)
tree7726d8814e0dced0ccf9efcbc3dfba4c8b1bad23 /src
parentfd99cbdd0c087299d5d3aac691d71f782f23d1ba (diff)
implement displaying articlefragment
Diffstat (limited to 'src')
-rw-r--r--src/org/fox/ttrss/ArticleFragment.java12
-rw-r--r--src/org/fox/ttrss/HeadlinesFragment.java29
2 files changed, 38 insertions, 3 deletions
diff --git a/src/org/fox/ttrss/ArticleFragment.java b/src/org/fox/ttrss/ArticleFragment.java
index cdc81dde..b2323fa5 100644
--- a/src/org/fox/ttrss/ArticleFragment.java
+++ b/src/org/fox/ttrss/ArticleFragment.java
@@ -21,12 +21,15 @@ public class ArticleFragment extends Fragment {
private final String TAG = this.getClass().getSimpleName();
protected SharedPreferences m_prefs;
- protected int m_articleId;
+
+ private int m_articleId;
+ private String m_sessionId;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
if (savedInstanceState != null) {
+ m_sessionId = savedInstanceState.getString("sessionId");
m_articleId = savedInstanceState.getInt("articleId");
}
@@ -35,8 +38,12 @@ public class ArticleFragment extends Fragment {
return view;
}
- public void initialize(int articleId) {
+ public void initialize(String sessionId, int articleId, SharedPreferences prefs) {
m_articleId = articleId;
+ m_prefs = prefs;
+ m_sessionId = sessionId;
+
+ Log.d(TAG, "Article: " + articleId);
}
@Override
@@ -48,6 +55,7 @@ public class ArticleFragment extends Fragment {
public void onSaveInstanceState (Bundle out) {
super.onSaveInstanceState(out);
+ out.putString("sessionId", m_sessionId);
out.putInt("articleId", m_articleId);
}
diff --git a/src/org/fox/ttrss/HeadlinesFragment.java b/src/org/fox/ttrss/HeadlinesFragment.java
index 53656517..be7c96eb 100644
--- a/src/org/fox/ttrss/HeadlinesFragment.java
+++ b/src/org/fox/ttrss/HeadlinesFragment.java
@@ -9,6 +9,7 @@ import org.jsoup.Jsoup;
import android.app.Activity;
import android.app.Fragment;
+import android.app.FragmentTransaction;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
@@ -34,6 +35,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener {
private String m_sessionId;
private int m_feedId;
+ private int m_activeArticleId;
private ArticleListAdapter m_adapter;
private List<Article> m_articles = new ArrayList<Article>();
@@ -44,6 +46,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener {
if (savedInstanceState != null) {
m_sessionId = savedInstanceState.getString("sessionId");
m_feedId = savedInstanceState.getInt("feedId");
+ m_activeArticleId = savedInstanceState.getInt("activeArticleId");
}
View view = inflater.inflate(R.layout.headlines_fragment, container, false);
@@ -76,9 +79,32 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener {
@Override
public void onItemClick(AdapterView<?> av, View view, int position, long id) {
-
+ ListView list = (ListView)av;
+
+ if (list != null) {
+ Article article = (Article)list.getItemAtPosition(position);
+
+ viewArticle(article.id);
+ }
}
+ public void viewArticle(int articleId) {
+ ArticleFragment frag = new ArticleFragment();
+ frag.initialize(m_sessionId, articleId, m_prefs);
+
+ if (frag != null) {
+ m_activeArticleId = articleId;
+
+ FragmentTransaction ft = getFragmentManager().beginTransaction();
+ ft.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out);
+ ft.show(getFragmentManager().findFragmentById(R.id.article_fragment));
+ //ft.hide(getFragmentManager().findFragmentById(R.id.feeds_fragment));
+ ft.replace(R.id.article_fragment, frag);
+ ft.commit();
+ }
+
+ }
+
public void initialize(String sessionId, int feedId, SharedPreferences prefs) {
m_sessionId = sessionId;
m_feedId = feedId;
@@ -112,6 +138,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener {
out.putString("sessionId", m_sessionId);
out.putInt("feedId", m_feedId);
+ out.putInt("activeArticleId", m_activeArticleId);
}
private class HeadlinesRequest extends ApiRequest {