Fix add number or address to contact from history or dialer

This commit is contained in:
Sylvain Berfini 2012-12-06 16:14:47 +01:00
parent c45e9e6df4
commit e6d9c8bb2b

View file

@ -187,7 +187,7 @@ public class EditContactFragment extends Fragment {
}
}
if (newSipOrNumberToAdd != null) {
View view = displayNumberOrAddress(controls, newSipOrNumberToAdd);
View view = displayNumberOrAddress(controls, newSipOrNumberToAdd, true);
if (view != null)
controls.addView(view);
}
@ -217,6 +217,10 @@ public class EditContactFragment extends Fragment {
}
private View displayNumberOrAddress(final TableLayout controls, String numberOrAddress) {
return displayNumberOrAddress(controls, numberOrAddress, false);
}
private View displayNumberOrAddress(final TableLayout controls, String numberOrAddress, boolean forceAddNumber) {
final boolean isSip = numberOrAddress.startsWith("sip:");
if (isSip) {
if (firstSipAddressIndex == -1) {
@ -228,7 +232,13 @@ public class EditContactFragment extends Fragment {
return null;
}
final NewOrUpdatedNumberOrAddress nounoa = new NewOrUpdatedNumberOrAddress(numberOrAddress, isSip);
NewOrUpdatedNumberOrAddress tempNounoa;
if (forceAddNumber) {
tempNounoa = new NewOrUpdatedNumberOrAddress(isSip);
} else {
tempNounoa = new NewOrUpdatedNumberOrAddress(numberOrAddress, isSip);
}
final NewOrUpdatedNumberOrAddress nounoa = tempNounoa;
numbersAndAddresses.add(nounoa);
final View view = inflater.inflate(R.layout.contact_edit_row, null);
@ -250,6 +260,9 @@ public class EditContactFragment extends Fragment {
public void afterTextChanged(Editable s) {
}
});
if (forceAddNumber) {
nounoa.setNewNumberOrAddress(noa.getText().toString());
}
ImageView delete = (ImageView) view.findViewById(R.id.delete);
delete.setOnClickListener(new OnClickListener() {