@Override public void onLoadFinished( final Loader<Set<Transaction>> loader, final Set<Transaction> transactions) { BlockListFragment.this.transactions = transactions; adapter.notifyDataSetChanged(); }
@Override public void onLoaderReset(final Loader<Set<Transaction>> loader) { BlockListFragment.this.transactions.clear(); // be nice BlockListFragment.this.transactions = null; adapter.notifyDataSetChanged(); }
@Override public void onLoadFinished( final Loader<List<StoredBlock>> loader, final List<StoredBlock> blocks) { adapter.replace(blocks); final Loader<Set<Transaction>> transactionLoader = loaderManager.getLoader(ID_TRANSACTION_LOADER); if (transactionLoader != null && transactionLoader.isStarted()) transactionLoader.forceLoad(); }
@Override public void onResume() { super.onResume(); activity.registerReceiver(tickReceiver, new IntentFilter(Intent.ACTION_TIME_TICK)); loaderManager.initLoader(ID_TRANSACTION_LOADER, null, transactionLoaderCallbacks); adapter.notifyDataSetChanged(); }
@Override public void onListItemClick(final ListView l, final View v, final int position, final long id) { final StoredBlock storedBlock = adapter.getItem(position); activity.startActionMode( new ActionMode.Callback() { @Override public boolean onCreateActionMode(final ActionMode mode, final Menu menu) { final MenuInflater inflater = mode.getMenuInflater(); inflater.inflate(R.menu.blocks_context, menu); return true; } @Override public boolean onPrepareActionMode(final ActionMode mode, final Menu menu) { mode.setTitle(Integer.toString(storedBlock.getHeight())); mode.setSubtitle(storedBlock.getHeader().getHashAsString()); return true; } @Override public boolean onActionItemClicked(final ActionMode mode, final MenuItem item) { switch (item.getItemId()) { case R.id.blocks_context_browse: startActivity( new Intent( Intent.ACTION_VIEW, Uri.parse( Constants.EXPLORE_BASE_URL + "block/" + storedBlock.getHeader().getHashAsString()))); mode.finish(); return true; } return false; } @Override public void onDestroyActionMode(final ActionMode mode) {} }); }
private void renderBlockList() { ListAdapter listAdapter = mListView.getAdapter(); if (listAdapter instanceof BlockListAdapter) { ((BlockListAdapter) listAdapter).notifyDataSetChanged(); } else { BlockListAdapter adapter = new BlockListAdapter(); mListView.setAdapter(adapter); mListView.setOnItemClickListener( new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { mBlockStartTime = mBlockEntries.get(position).timeStart; updateUi(); } }); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { invalidateOptionsMenu(); ActionBar actionBar = getActionBar(); if (actionBar != null) { actionBar.setDisplayHomeAsUpEnabled(false); } } setTitle(getString(R.string.block_canary_block_list_title, getPackageName())); mActionButton.setText(R.string.block_canary_delete_all); mActionButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { LogWriter.deleteLogFiles(); mBlockEntries = Collections.emptyList(); updateUi(); } }); } mActionButton.setVisibility(mBlockEntries.size() == 0 ? GONE : VISIBLE); }
@Override public void onLoaderReset(final Loader<List<StoredBlock>> loader) { adapter.clear(); }
@Override public void onReceive(final Context context, final Intent intent) { adapter.notifyDataSetChanged(); }