diff -r 4feced261c68 -r de822cd3df3a project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/ChatlogAdapter.java --- a/project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/ChatlogAdapter.java Tue Jan 21 22:38:13 2014 +0100 +++ b/project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/ChatlogAdapter.java Tue Jan 21 22:43:06 2014 +0100 @@ -39,14 +39,14 @@ * Since lines with a given ID never change in our chatlog, we can avoid the effort * of TextView.setText in many cases by checking if the view is already set up for the * line with the right ID - but to do that, the view needs to remember the ID it's - * holding the text for. That's what the LoglineView does. + * holding the text for. That's what the LoglineView does. */ class LoglineView extends TextView { - long chatlogId = -1; - - public LoglineView(Context context) { - super(context); - } + long chatlogId = -1; + + public LoglineView(Context context) { + super(context); + } } /** @@ -57,65 +57,65 @@ * the textviews from a messagelog in an efficient way. */ public class ChatlogAdapter extends BaseAdapter implements MessageLog.Listener { - long idOffset = 0; - private List log = new ArrayList(); - private Context context; - - public ChatlogAdapter(Context context) { - this.context = context; - } - - public int getCount() { - return log.size(); - } + long idOffset = 0; + private List log = new ArrayList(); + private Context context; + + public ChatlogAdapter(Context context) { + this.context = context; + } + + public int getCount() { + return log.size(); + } - public Object getItem(int position) { - return log.get(position); - } + public Object getItem(int position) { + return log.get(position); + } + + public long getItemId(int position) { + return position+idOffset; + } - public long getItemId(int position) { - return position+idOffset; - } + public boolean hasStableIds() { + return true; + } - public boolean hasStableIds() { - return true; - } + public void clear() { + idOffset += log.size(); + log.clear(); + notifyDataSetChanged(); + } - public void clear() { - idOffset += log.size(); - log.clear(); - notifyDataSetChanged(); - } - - public void lineAdded(CharSequence text) { - log.add(text); - notifyDataSetChanged(); - } - - public void lineRemoved() { - log.remove(0); - idOffset += 1; - notifyDataSetChanged(); - } - - public void setLog(Collection log) { - idOffset += log.size(); - this.log = new ArrayList(log); - notifyDataSetChanged(); - } - - public View getView(int position, View convertView, ViewGroup parent) { - LoglineView v = (LoglineView)convertView; - if (v == null) { - v = new LoglineView(context); - v.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); - v.setMovementMethod(LinkMovementMethod.getInstance()); - } - long id = getItemId(position); - if(id != v.chatlogId) { - v.setText(log.get(position)); - v.chatlogId = id; - } - return v; - } + public void lineAdded(CharSequence text) { + log.add(text); + notifyDataSetChanged(); + } + + public void lineRemoved() { + log.remove(0); + idOffset += 1; + notifyDataSetChanged(); + } + + public void setLog(Collection log) { + idOffset += log.size(); + this.log = new ArrayList(log); + notifyDataSetChanged(); + } + + public View getView(int position, View convertView, ViewGroup parent) { + LoglineView v = (LoglineView)convertView; + if (v == null) { + v = new LoglineView(context); + v.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); + v.setMovementMethod(LinkMovementMethod.getInstance()); + } + long id = getItemId(position); + if(id != v.chatlogId) { + v.setText(log.get(position)); + v.chatlogId = id; + } + return v; + } } \ No newline at end of file