Loading src/com/android/contacts/ui/widget/ContactEditorView.java +5 −1 Original line number Diff line number Diff line Loading @@ -215,6 +215,7 @@ public class ContactEditorView extends BaseContactEditorView implements OnClickL mReadOnlyName.setVisibility(View.GONE); } boolean anySecondaryFieldFilled = false; // Create editor sections for each possible data kind for (DataKind kind : source.getSortedDataKinds()) { // Skip kind of not editable Loading Loading @@ -246,11 +247,14 @@ public class ContactEditorView extends BaseContactEditorView implements OnClickL final KindSectionView section = (KindSectionView)mInflater.inflate( R.layout.item_kind_section, parent, false); section.setState(kind, state, mIsSourceReadOnly, vig); if (kind.secondary && section.isAnyEditorFilledOut()) { anySecondaryFieldFilled = true; } parent.addView(section); } } setSecondaryVisible(mSecondaryVisible); setSecondaryVisible(anySecondaryFieldFilled); } /** Loading src/com/android/contacts/ui/widget/GenericEditorView.java +12 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.os.Parcelable; import android.telephony.PhoneNumberFormattingTextWatcher; import android.text.Editable; import android.text.InputType; import android.text.TextUtils; import android.text.TextWatcher; import android.util.AttributeSet; import android.view.ContextThemeWrapper; Loading Loading @@ -169,6 +170,17 @@ public class GenericEditorView extends RelativeLayout implements Editor, View.On } } public boolean isAnyFieldFilledOut() { int childCount = mFields.getChildCount(); for (int i = 0; i < childCount; i++) { EditText editorView = (EditText) mFields.getChildAt(i); if (!TextUtils.isEmpty(editorView.getText())) { return true; } } return false; } private void rebuildValues() { setValues(mKind, mEntry, mState, mReadOnly, mViewIdGenerator); } Loading src/com/android/contacts/ui/widget/KindSectionView.java +20 −0 Original line number Diff line number Diff line Loading @@ -114,6 +114,26 @@ public class KindSectionView extends LinearLayout implements OnClickListener, Ed this.updateEditorsVisible(); } public boolean isAnyEditorFilledOut() { if (mState == null) { return false; } if (!mState.hasMimeEntries(mKind.mimeType)) { return false; } int editorCount = mEditors.getChildCount(); for (int i = 0; i < editorCount; i++) { GenericEditorView editorView = (GenericEditorView) mEditors.getChildAt(i); if (editorView.isAnyFieldFilledOut()) { return true; } } return false; } /** * Build editors for all current {@link #mState} rows. */ Loading Loading
src/com/android/contacts/ui/widget/ContactEditorView.java +5 −1 Original line number Diff line number Diff line Loading @@ -215,6 +215,7 @@ public class ContactEditorView extends BaseContactEditorView implements OnClickL mReadOnlyName.setVisibility(View.GONE); } boolean anySecondaryFieldFilled = false; // Create editor sections for each possible data kind for (DataKind kind : source.getSortedDataKinds()) { // Skip kind of not editable Loading Loading @@ -246,11 +247,14 @@ public class ContactEditorView extends BaseContactEditorView implements OnClickL final KindSectionView section = (KindSectionView)mInflater.inflate( R.layout.item_kind_section, parent, false); section.setState(kind, state, mIsSourceReadOnly, vig); if (kind.secondary && section.isAnyEditorFilledOut()) { anySecondaryFieldFilled = true; } parent.addView(section); } } setSecondaryVisible(mSecondaryVisible); setSecondaryVisible(anySecondaryFieldFilled); } /** Loading
src/com/android/contacts/ui/widget/GenericEditorView.java +12 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.os.Parcelable; import android.telephony.PhoneNumberFormattingTextWatcher; import android.text.Editable; import android.text.InputType; import android.text.TextUtils; import android.text.TextWatcher; import android.util.AttributeSet; import android.view.ContextThemeWrapper; Loading Loading @@ -169,6 +170,17 @@ public class GenericEditorView extends RelativeLayout implements Editor, View.On } } public boolean isAnyFieldFilledOut() { int childCount = mFields.getChildCount(); for (int i = 0; i < childCount; i++) { EditText editorView = (EditText) mFields.getChildAt(i); if (!TextUtils.isEmpty(editorView.getText())) { return true; } } return false; } private void rebuildValues() { setValues(mKind, mEntry, mState, mReadOnly, mViewIdGenerator); } Loading
src/com/android/contacts/ui/widget/KindSectionView.java +20 −0 Original line number Diff line number Diff line Loading @@ -114,6 +114,26 @@ public class KindSectionView extends LinearLayout implements OnClickListener, Ed this.updateEditorsVisible(); } public boolean isAnyEditorFilledOut() { if (mState == null) { return false; } if (!mState.hasMimeEntries(mKind.mimeType)) { return false; } int editorCount = mEditors.getChildCount(); for (int i = 0; i < editorCount; i++) { GenericEditorView editorView = (GenericEditorView) mEditors.getChildAt(i); if (editorView.isAnyFieldFilledOut()) { return true; } } return false; } /** * Build editors for all current {@link #mState} rows. */ Loading