Polish notes layout

pull/14/head
Sam Bosley 13 years ago
parent a3198b9084
commit 1ad51e122b

@ -14,10 +14,10 @@
<LinearLayout <LinearLayout
android:id="@+id/notes_body" android:id="@+id/notes_body"
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_height="fill_parent"
android:gravity="center_vertical" android:gravity="center_vertical"
android:minHeight="50dip" android:minHeight="50dip"
android:orientation="horizontal" android:orientation="vertical"
android:paddingLeft="10dip" android:paddingLeft="10dip"
android:paddingRight="10dip" > android:paddingRight="10dip" >
@ -26,17 +26,17 @@
style="@style/TextAppearance.GEN_EditLabel" style="@style/TextAppearance.GEN_EditLabel"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginRight="15dip" android:paddingTop="4dip"
android:paddingBottom="4dip"
android:text="@string/TEA_note_label" /> android:text="@string/TEA_note_label" />
<com.todoroo.astrid.ui.TextViewWithMeasureListener <TextView
android:id="@+id/display_row_edit" android:id="@+id/display_row_edit"
style="@style/TextAppearance.EditRowDisplay" style="@style/TextAppearance.EditRowDisplay"
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:paddingBottom="4dip"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:gravity="left" />
android:gravity="left"
android:paddingLeft="10dip" />
</LinearLayout> </LinearLayout>
<View <View

@ -10,22 +10,19 @@ import android.content.Context;
import android.graphics.Color; import android.graphics.Color;
import android.text.TextUtils; import android.text.TextUtils;
import android.text.util.Linkify; import android.text.util.Linkify;
import android.util.DisplayMetrics; import android.view.View;
import android.view.Gravity;
import android.view.WindowManager; import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager; import android.view.inputmethod.InputMethodManager;
import android.widget.EditText; import android.widget.EditText;
import android.widget.LinearLayout; import android.widget.TextView;
import com.timsu.astrid.R; import com.timsu.astrid.R;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.ui.TextViewWithMeasureListener.OnTextMeasureListener;
public class EditNotesControlSet extends PopupControlSet { public class EditNotesControlSet extends PopupControlSet {
protected EditText editText; protected EditText editText;
protected TextViewWithMeasureListener notesPreview; protected TextView notesPreview;
private LinearLayout notesBody;
public EditNotesControlSet(Activity activity, int viewLayout, int displayViewLayout) { public EditNotesControlSet(Activity activity, int viewLayout, int displayViewLayout) {
super(activity, viewLayout, displayViewLayout, R.string.TEA_note_label); super(activity, viewLayout, displayViewLayout, R.string.TEA_note_label);
@ -40,7 +37,7 @@ public class EditNotesControlSet extends PopupControlSet {
textToUse = model.getValue(Task.NOTES); textToUse = model.getValue(Task.NOTES);
notesPreview.setText(textToUse); notesPreview.setText(textToUse);
setupGravity(); notesPreview.setVisibility(TextUtils.isEmpty(textToUse) ? View.GONE : View.VISIBLE);
linkifyDisplayView(); linkifyDisplayView();
} }
@ -54,14 +51,7 @@ public class EditNotesControlSet extends PopupControlSet {
@Override @Override
protected void afterInflate() { protected void afterInflate() {
editText = (EditText) getView().findViewById(R.id.notes); editText = (EditText) getView().findViewById(R.id.notes);
notesPreview = (TextViewWithMeasureListener) getDisplayView().findViewById(R.id.display_row_edit); notesPreview = (TextView) getDisplayView().findViewById(R.id.display_row_edit);
notesBody = (LinearLayout) getDisplayView().findViewById(R.id.notes_body);
notesPreview.setOnTextSizeChangedListener(new OnTextMeasureListener() {
@Override
public void onTextSizeChanged() {
setupGravity();
}
});
} }
@Override @Override
@ -103,17 +93,4 @@ public class EditNotesControlSet extends PopupControlSet {
return !TextUtils.isEmpty(editText.getText()); return !TextUtils.isEmpty(editText.getText());
} }
private void setupGravity() {
DisplayMetrics metrics = activity.getResources().getDisplayMetrics();
if (hasNotes() && notesPreview.getLineCount() > 2) {
notesBody.setGravity(Gravity.TOP);
notesBody.setPadding( notesBody.getPaddingLeft(), (int) (metrics.density * 8), notesBody.getPaddingRight(), (int) (metrics.density * 8));
notesPreview.setGravity(Gravity.LEFT);
} else {
notesBody.setGravity(Gravity.CENTER_VERTICAL);
notesBody.setPadding( notesBody.getPaddingLeft(), 0, notesBody.getPaddingRight(), 0);
notesPreview.setGravity(Gravity.RIGHT);
}
}
} }

Loading…
Cancel
Save