diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java b/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java index 5c3bb9e7b..ef0cd8313 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/EditPeopleControlSet.java @@ -14,6 +14,7 @@ import org.json.JSONObject; import android.app.Activity; import android.app.Dialog; import android.app.ProgressDialog; +import android.content.Context; import android.content.Intent; import android.graphics.Color; import android.text.TextUtils; @@ -21,12 +22,14 @@ import android.util.DisplayMetrics; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; +import android.view.ViewGroup; import android.view.ViewGroup.LayoutParams; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.CheckBox; +import android.widget.CheckedTextView; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.ListView; @@ -267,7 +270,7 @@ public class EditPeopleControlSet extends PopupControlSet { }); } - private class AssignedToUser { + public static class AssignedToUser { public String label; public JSONObject user; @@ -359,9 +362,10 @@ public class EditPeopleControlSet extends PopupControlSet { } final int selected = assignedIndex; - final ArrayAdapter usersAdapter = new ArrayAdapter(activity, - android.R.layout.simple_list_item_single_choice, listValues); +// final ArrayAdapter usersAdapter = new ArrayAdapter(activity, +// android.R.layout.simple_list_item_single_choice, listValues); + final AssignedUserAdapter usersAdapter = new AssignedUserAdapter(activity, listValues); activity.runOnUiThread(new Runnable() { @Override public void run() { @@ -372,6 +376,29 @@ public class EditPeopleControlSet extends PopupControlSet { }); } + private class AssignedUserAdapter extends ArrayAdapter { + + public AssignedUserAdapter(Context context, ArrayList people) { + super(context, R.layout.assigned_adapter_row, people); + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + if(convertView == null) + convertView = activity.getLayoutInflater().inflate(R.layout.assigned_adapter_row, parent, false); + CheckedTextView ctv = (CheckedTextView) convertView.findViewById(android.R.id.text1); + super.getView(position, ctv, parent); + AsyncImageView image = (AsyncImageView) convertView.findViewById(R.id.person_image); + if (position <= 1) { + image.setVisibility(View.GONE); + } else { + image.setVisibility(View.VISIBLE); + image.setUrl(getItem(position).user.optString("picture")); + } + return convertView; + } + } + private void setUpListeners() { final View assignedClear = getView().findViewById(R.id.assigned_clear); diff --git a/astrid/res/layout/assigned_adapter_row.xml b/astrid/res/layout/assigned_adapter_row.xml new file mode 100644 index 000000000..7d7a09139 --- /dev/null +++ b/astrid/res/layout/assigned_adapter_row.xml @@ -0,0 +1,18 @@ + + + + + + + \ No newline at end of file diff --git a/astrid/res/layout/filter_list_activity.xml b/astrid/res/layout/filter_list_activity.xml index e631417c1..9f4bf3141 100644 --- a/astrid/res/layout/filter_list_activity.xml +++ b/astrid/res/layout/filter_list_activity.xml @@ -14,17 +14,6 @@ android:orientation="horizontal" style="@style/Header"> - - + + +