Example #1
0
 /*
  * (non-Javadoc)
  * @see android.widget.AdapterView.OnItemClickListener#onItemClick(android.widget.AdapterView, android.view.View, int, long)
  */
 @Override
 public void onItemClick(AdapterView<?> view, View parent, int pos, long id) {
   if (pos < postsAdapter.getPosts().size()) {
     final Post post = postsAdapter.getPosts().get(pos);
     showPostEditor(post);
   }
 }
Example #2
0
 /*
  * (non-Javadoc)
  * @see android.widget.AdapterView.OnItemLongClickListener#onItemLongClick(android.widget.AdapterView, android.view.View, int, long)
  */
 @Override
 public boolean onItemLongClick(AdapterView<?> view, View parent, int pos, long id) {
   //
   // We may have one extra item in the PostAdapter for
   // our "loading" item, so check that `pos` is valid.
   //
   if (pos < postsAdapter.getPosts().size()) {
     final Post post = postsAdapter.getPosts().get(pos);
     showPostContextMenu(post);
     return true;
   }
   return false;
 }
Example #3
0
  /*
   * (non-Javadoc)
   * @see android.app.Activity#onPause()
   */
  @Override
  protected void onPause() {
    ready = false;

    postsAdapter.setPosts(new ArrayList<Post>());
    postsAdapter.notifyDataSetChanged();

    stopPollThread();

    accessToken = null;

    super.onPause();
  }
Example #4
0
  /*
   * (non-Javadoc)
   * @see android.widget.AbsListView.OnScrollListener#onScroll(android.widget.AbsListView, int, int, int)
   */
  @Override
  public void onScroll(
      AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
    if (ready) {
      final boolean needMore =
          (firstVisibleItem + visibleItemCount >= totalItemCount)
              && !postsAdapter.getEndOfTime()
              && postsAdapter.getPosts().size() < MAX_POSTS;

      if (!postsAdapter.isLoading() && needMore) {
        new PostsBeforeTask(
                stream, postsAdapter, new AppNetClient(accessToken), postsAdapter.getOldestPostId())
            .execute();
      }
    }
  }
Example #5
0
  @Override
  protected void onResume() {
    super.onResume();

    boolean registeredUserChanged =
        mFeed.getUserAcquiredFor() != null
            && (!mFeed.getUserAcquiredFor().equals(Settings.getUserName(this)));

    // We want to reload the feed if a new user logged in
    if (HNCredentials.isInvalidated() || registeredUserChanged) {
      showFeed(new HNFeed(new ArrayList<HNPost>(), null, ""));
      startFeedLoading();
    }

    // refresh if font size changed
    if (refreshFontSizes()) mPostsListAdapter.notifyDataSetChanged();

    // Ramesh kumar coding part for change background color using radio button
    if (refreshBackgroundColor()) mPostsListAdapter.notifyDataSetChanged();

    // ------------- kevin's codes. refresh the setup when changing the setting -----------------
    if (refreshHTMLContent()) {

      if (mCurrentHTMLContent.equals("display")) {

        new Thread(getURLContent_Thread).start();
      } else {
        List<HNPost> mPosts = mFeed.getPosts();
        for (int i = 0; i < mPosts.size(); i++) {

          mPosts.get(i).setContent("");
        }
        showFeed(mFeed);
      }
    }
    // restore vertical scrolling position if applicable
    if (mListState != null) mPostsList.onRestoreInstanceState(mListState);

    mListState = null;
  }
Example #6
0
  @Override
  public void onTaskFinished(int taskCode, TaskResultCode code, HNFeed result, Object tag) {
    if (taskCode == TASKCODE_LOAD_FEED) {
      if (code.equals(TaskResultCode.Success) && mPostsListAdapter != null) {
        showFeed(result);
      } else if (!code.equals(TaskResultCode.Success))
        Toast.makeText(this, getString(R.string.error_unable_to_retrieve_feed), Toast.LENGTH_SHORT)
            .show();

      mActionbarRefreshProgress.setVisibility(View.GONE);
      mActionbarRefresh.setVisibility(View.VISIBLE);
    } else if (taskCode == TASKCODE_LOAD_MORE_POSTS) {
      if (!code.equals(TaskResultCode.Success))
        Toast.makeText(this, getString(R.string.error_unable_to_load_more), Toast.LENGTH_SHORT)
            .show();

      mFeed.appendLoadMoreFeed(result);
      mPostsListAdapter.notifyDataSetChanged();
    }
  }
Example #7
0
 private void showFeed(HNFeed feed) {
   mFeed = feed;
   mPostsListAdapter.notifyDataSetChanged();
 }