diff --git a/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java index 9c0ed1400..43ad8eef8 100644 --- a/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java +++ b/astrid/plugin-src/com/todoroo/astrid/subtasks/SubtasksFragmentHelper.java @@ -11,10 +11,13 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicReference; import android.app.Activity; +import android.content.Context; import android.database.Cursor; import android.util.DisplayMetrics; import android.util.TypedValue; import android.view.View; +import android.view.ViewGroup; +import android.view.ViewGroup.MarginLayoutParams; import android.widget.ListView; import com.commonsware.cwac.tlv.TouchListView.DropListener; @@ -176,11 +179,29 @@ public class SubtasksFragmentHelper { return (ViewHolder)((View)v.getParent()).getTag(); } + @Override + public View newView(Context context, Cursor cursor, ViewGroup parent) { + View view = super.newView(context, cursor, parent); + view.getLayoutParams().height = Math.round(45 * metrics.density); + + ViewHolder vh = (ViewHolder) view.getTag(); + + MarginLayoutParams rowParams = (MarginLayoutParams) vh.rowBody.getLayoutParams(); + rowParams.topMargin = rowParams.bottomMargin = 0; + + ViewGroup.LayoutParams pictureParams = vh.picture.getLayoutParams(); + pictureParams.width = pictureParams.height = Math.round(38 * metrics.density); + + pictureParams = vh.pictureBorder.getLayoutParams(); + pictureParams.width = pictureParams.height = Math.round(38 * metrics.density); + + return view; + } + @Override public synchronized void setFieldContentsAndVisibility(View view) { super.setFieldContentsAndVisibility(view); - view.getLayoutParams().height = Math.round(45 * metrics.density); ViewHolder vh = (ViewHolder) view.getTag(); int indent = vh.task.getValue(SubtasksMetadata.INDENT); vh.rowBody.setPadding(Math.round(indent * 20 * metrics.density), 0, 0, 0);