aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2009-05-30 03:21:29 +0000
committerKenny Root <kenny@the-b.org>2009-05-30 03:21:29 +0000
commitca342459c046211a394ec95b238b15e1fabfeeed (patch)
tree839c5d4fda0d500534308e65a1e7e574bca5c78d /src
parent2e3e025b3f1b9cf3cf643049028de94102d498d3 (diff)
downloadconnectbot-ca342459c046211a394ec95b238b15e1fabfeeed.tar.gz
connectbot-ca342459c046211a394ec95b238b15e1fabfeeed.tar.bz2
connectbot-ca342459c046211a394ec95b238b15e1fabfeeed.zip
Uh, forgot to commit PubkeyListActivity for the ViewHolder change and add some padding to item_portforward
git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@244 df292f66-193f-0410-a5fc-6d59da041ff2
Diffstat (limited to 'src')
-rw-r--r--src/org/connectbot/PubkeyListActivity.java46
1 files changed, 30 insertions, 16 deletions
diff --git a/src/org/connectbot/PubkeyListActivity.java b/src/org/connectbot/PubkeyListActivity.java
index 1569722..076f618 100644
--- a/src/org/connectbot/PubkeyListActivity.java
+++ b/src/org/connectbot/PubkeyListActivity.java
@@ -526,23 +526,37 @@ public class PubkeyListActivity extends ListActivity implements EventListener {
class PubkeyAdapter extends ArrayAdapter<PubkeyBean> {
private List<PubkeyBean> pubkeys;
+ class ViewHolder {
+ public TextView nickname;
+ public TextView caption;
+ public ImageView icon;
+ }
+
public PubkeyAdapter(Context context, List<PubkeyBean> pubkeys) {
super(context, R.layout.item_pubkey, pubkeys);
this.pubkeys = pubkeys;
}
- public View getView(int position, View origView, ViewGroup parent) {
- View view = origView;
- if (view == null)
- view = inflater.inflate(R.layout.item_pubkey, null, false);
+ @Override
+ public View getView(int position, View convertView, ViewGroup parent) {
+ ViewHolder holder;
+
+ if (convertView == null) {
+ convertView = inflater.inflate(R.layout.item_pubkey, null, false);
+
+ holder = new ViewHolder();
+
+ holder.nickname = (TextView) convertView.findViewById(android.R.id.text1);
+ holder.caption = (TextView) convertView.findViewById(android.R.id.text2);
+ holder.icon = (ImageView) convertView.findViewById(android.R.id.icon1);
- TextView nickname = (TextView)view.findViewById(android.R.id.text1);
- TextView caption = (TextView)view.findViewById(android.R.id.text2);
- ImageView icon = (ImageView)view.findViewById(android.R.id.icon1);
+ convertView.setTag(holder);
+ } else
+ holder = (ViewHolder) convertView.getTag();
PubkeyBean pubkey = pubkeys.get(position);
- nickname.setText(pubkey.getNickname());
+ holder.nickname.setText(pubkey.getNickname());
boolean imported = PubkeyDatabase.KEY_TYPE_IMPORTED.equals(pubkey.getType());
@@ -550,32 +564,32 @@ public class PubkeyListActivity extends ListActivity implements EventListener {
try {
PEMStructure struct = PEMDecoder.parsePEM(new String(pubkey.getPrivateKey()).toCharArray());
String type = (struct.pemType == PEMDecoder.PEM_RSA_PRIVATE_KEY) ? "RSA" : "DSA";
- caption.setText(String.format("%s unknown-bit", type));
+ holder.caption.setText(String.format("%s unknown-bit", type));
} catch (IOException e) {
Log.e(TAG, "Error decoding IMPORTED public key at " + pubkey.getId(), e);
}
} else {
try {
PublicKey pub = PubkeyUtils.decodePublic(pubkey.getPublicKey(), pubkey.getType());
- caption.setText(PubkeyUtils.describeKey(pub, pubkey.isEncrypted()));
+ holder.caption.setText(PubkeyUtils.describeKey(pub, pubkey.isEncrypted()));
} catch (Exception e) {
Log.e(TAG, "Error decoding public key at " + pubkey.getId(), e);
- caption.setText(R.string.pubkey_unknown_format);
+ holder.caption.setText(R.string.pubkey_unknown_format);
}
}
if (bound == null) {
- icon.setVisibility(View.GONE);
+ holder.icon.setVisibility(View.GONE);
} else {
- icon.setVisibility(View.VISIBLE);
+ holder.icon.setVisibility(View.VISIBLE);
if (bound.isKeyLoaded(pubkey.getNickname()))
- icon.setImageState(new int[] { android.R.attr.state_checked }, true);
+ holder.icon.setImageState(new int[] { android.R.attr.state_checked }, true);
else
- icon.setImageState(new int[] { }, true);
+ holder.icon.setImageState(new int[] { }, true);
}
- return view;
+ return convertView;
}
}
}