implement marking articles as unread
do not notify server to catchup article if it isn't unread when selecting
This commit is contained in:
parent
45b7bff423
commit
6b32c5153c
@ -47,6 +47,10 @@
|
|||||||
android:title="@string/toggle_marked"
|
android:title="@string/toggle_marked"
|
||||||
android:showAsAction=""/>
|
android:showAsAction=""/>
|
||||||
|
|
||||||
|
<item android:id="@+id/set_unread"
|
||||||
|
android:title="@string/set_unread"
|
||||||
|
android:showAsAction=""/>
|
||||||
|
|
||||||
<item android:id="@+id/toggle_published"
|
<item android:id="@+id/toggle_published"
|
||||||
android:icon="@drawable/ic_menu_rss"
|
android:icon="@drawable/ic_menu_rss"
|
||||||
android:title="@string/toggle_published"
|
android:title="@string/toggle_published"
|
||||||
|
@ -47,4 +47,5 @@
|
|||||||
<string name="transport_debugging">Log sent and received data</string>
|
<string name="transport_debugging">Log sent and received data</string>
|
||||||
<string name="toggle_marked">Toggle starred</string>
|
<string name="toggle_marked">Toggle starred</string>
|
||||||
<string name="toggle_published">Toggle published</string>
|
<string name="toggle_published">Toggle published</string>
|
||||||
|
<string name="set_unread">Mark unread</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
@ -116,11 +116,13 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener {
|
|||||||
Article article = (Article)list.getItemAtPosition(position);
|
Article article = (Article)list.getItemAtPosition(position);
|
||||||
m_articleSelectedListener.onArticleSelected(article);
|
m_articleSelectedListener.onArticleSelected(article);
|
||||||
|
|
||||||
article.unread = false;
|
if (article.unread) {
|
||||||
|
article.unread = false;
|
||||||
|
m_articleOps.saveArticleUnread(article);
|
||||||
|
}
|
||||||
|
|
||||||
m_selectedArticleId = article.id;
|
m_selectedArticleId = article.id;
|
||||||
m_adapter.notifyDataSetChanged();
|
m_adapter.notifyDataSetChanged();
|
||||||
|
|
||||||
m_articleOps.saveArticleUnread(article);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@ public class MainActivity extends FragmentActivity implements FeedsFragment.OnFe
|
|||||||
put("sid", m_sessionId);
|
put("sid", m_sessionId);
|
||||||
put("op", "updateArticle");
|
put("op", "updateArticle");
|
||||||
put("article_ids", String.valueOf(article.id));
|
put("article_ids", String.valueOf(article.id));
|
||||||
put("mode", "0");
|
put("mode", article.unread ? "1" : "0");
|
||||||
put("field", "2");
|
put("field", "2");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -387,6 +387,13 @@ public class MainActivity extends FragmentActivity implements FeedsFragment.OnFe
|
|||||||
updateHeadlines();
|
updateHeadlines();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
case R.id.set_unread:
|
||||||
|
if (m_selectedArticle != null) {
|
||||||
|
m_selectedArticle.unread = true;
|
||||||
|
saveArticleUnread(m_selectedArticle);
|
||||||
|
updateHeadlines();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
case R.id.show_feeds:
|
case R.id.show_feeds:
|
||||||
setUnreadOnly(!getUnreadOnly());
|
setUnreadOnly(!getUnreadOnly());
|
||||||
|
|
||||||
@ -460,6 +467,7 @@ public class MainActivity extends FragmentActivity implements FeedsFragment.OnFe
|
|||||||
m_menu.findItem(R.id.share_article).setVisible(true);
|
m_menu.findItem(R.id.share_article).setVisible(true);
|
||||||
m_menu.findItem(R.id.toggle_marked).setVisible(true);
|
m_menu.findItem(R.id.toggle_marked).setVisible(true);
|
||||||
m_menu.findItem(R.id.toggle_published).setVisible(true);
|
m_menu.findItem(R.id.toggle_published).setVisible(true);
|
||||||
|
m_menu.findItem(R.id.set_unread).setVisible(true);
|
||||||
|
|
||||||
m_menu.findItem(R.id.update_feeds).setVisible(false);
|
m_menu.findItem(R.id.update_feeds).setVisible(false);
|
||||||
m_menu.findItem(R.id.show_feeds).setVisible(false);
|
m_menu.findItem(R.id.show_feeds).setVisible(false);
|
||||||
@ -468,6 +476,7 @@ public class MainActivity extends FragmentActivity implements FeedsFragment.OnFe
|
|||||||
m_menu.findItem(R.id.share_article).setVisible(false);
|
m_menu.findItem(R.id.share_article).setVisible(false);
|
||||||
m_menu.findItem(R.id.toggle_marked).setVisible(false);
|
m_menu.findItem(R.id.toggle_marked).setVisible(false);
|
||||||
m_menu.findItem(R.id.toggle_published).setVisible(false);
|
m_menu.findItem(R.id.toggle_published).setVisible(false);
|
||||||
|
m_menu.findItem(R.id.set_unread).setVisible(false);
|
||||||
|
|
||||||
if (!m_smallScreenMode || m_activeFeed == null) {
|
if (!m_smallScreenMode || m_activeFeed == null) {
|
||||||
m_menu.findItem(R.id.show_feeds).setVisible(true);
|
m_menu.findItem(R.id.show_feeds).setVisible(true);
|
||||||
|
Loading…
Reference in New Issue
Block a user