private void populateChallengesList() {
    Log.d(TAG, "populating challenger list");
    challenges.moveToFirst();
    Log.d(
        TAG,
        "first challenger: "
            + challenges.getString(challenges.getColumnIndex(CHALLENGE_SOURCE_HANDLE_COL)));
    String[] from = {CHALLENGE_SOURCE_HANDLE_COL};
    int[] to = {R.id.challenger_text_view};

    SimpleCursorAdapter adapter =
        new SimpleCursorAdapter(this, R.layout.challenger_text_view, challenges, from, to);
    ListView lv = (ListView) findViewById(R.id.view_challenges);
    lv.setAdapter(adapter);
    final CursorWrapper c = new CursorWrapper(challenges);

    lv.setOnItemClickListener(
        new OnItemClickListener() {
          public void onItemClick(AdapterView<?> parent, View view, int pos, long id) {
            // Move the cursor to the selected item
            c.moveToPosition(pos);

            int cid = c.getInt(c.getColumnIndex("_id"));
            int sourceId = c.getInt(c.getColumnIndex(CHALLENGE_SOURCE_ID_COL));
            String sourceHandle = c.getString(c.getColumnIndex(CHALLENGE_SOURCE_HANDLE_COL));
            int targetId = c.getInt(c.getColumnIndex(CHALLENGE_TARGET_COL));
            challengeDialog(cid, sourceId, sourceHandle, targetId);
          }
        });
  }