Fixed minor contact related issues
This commit is contained in:
parent
92b3832ab8
commit
e550efc094
3 changed files with 21 additions and 18 deletions
|
@ -136,12 +136,15 @@ public class ContactEditorFragment extends Fragment {
|
||||||
if (mIsNewContact) {
|
if (mIsNewContact) {
|
||||||
boolean areAllFielsEmpty = true;
|
boolean areAllFielsEmpty = true;
|
||||||
for (LinphoneNumberOrAddress nounoa : mNumbersAndAddresses) {
|
for (LinphoneNumberOrAddress nounoa : mNumbersAndAddresses) {
|
||||||
if (nounoa.getValue() != null && !nounoa.getValue().equals("")) {
|
String value = nounoa.getValue();
|
||||||
|
if (value != null && !value.trim().isEmpty()) {
|
||||||
areAllFielsEmpty = false;
|
areAllFielsEmpty = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (areAllFielsEmpty) {
|
if (areAllFielsEmpty) {
|
||||||
|
Log.i(
|
||||||
|
"[Contact Editor] All SIP and phone fields are empty, aborting");
|
||||||
getFragmentManager().popBackStackImmediate();
|
getFragmentManager().popBackStackImmediate();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -158,27 +161,24 @@ public class ContactEditorFragment extends Fragment {
|
||||||
}
|
}
|
||||||
|
|
||||||
for (LinphoneNumberOrAddress noa : mNumbersAndAddresses) {
|
for (LinphoneNumberOrAddress noa : mNumbersAndAddresses) {
|
||||||
if (noa.getValue() == null || noa.getValue().isEmpty()) {
|
String value = noa.getValue();
|
||||||
if (noa.getOldValue() != null && !noa.getOldValue().isEmpty()) {
|
String oldValue = noa.getOldValue();
|
||||||
Log.i("[Contact Editor] Removing number " + noa.getOldValue());
|
|
||||||
|
if (value == null || value.trim().isEmpty()) {
|
||||||
|
if (oldValue != null && !oldValue.isEmpty()) {
|
||||||
|
Log.i("[Contact Editor] Removing number " + oldValue);
|
||||||
mContact.removeNumberOrAddress(noa);
|
mContact.removeNumberOrAddress(noa);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (noa.getOldValue() != null
|
if (oldValue != null && oldValue.equals(value)) {
|
||||||
&& noa.getOldValue().equals(noa.getValue())) {
|
Log.i("[Contact Editor] Keeping existing number " + value);
|
||||||
Log.i(
|
|
||||||
"[Contact Editor] Keeping existing number "
|
|
||||||
+ noa.getValue());
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (noa.isSIPAddress()) {
|
if (noa.isSIPAddress()) {
|
||||||
|
noa.setValue(LinphoneUtils.getFullAddressFromUsername(value));
|
||||||
noa.setValue(
|
|
||||||
LinphoneUtils.getFullAddressFromUsername(
|
|
||||||
noa.getValue()));
|
|
||||||
}
|
}
|
||||||
Log.i("[Contact Editor] Adding new number " + noa.getValue());
|
Log.i("[Contact Editor] Adding new number " + value);
|
||||||
|
|
||||||
mContact.addOrUpdateNumberOrAddress(noa);
|
mContact.addOrUpdateNumberOrAddress(noa);
|
||||||
}
|
}
|
||||||
|
|
|
@ -559,7 +559,8 @@ public class LinphoneContact extends AndroidContact
|
||||||
String data3 = c.getString(c.getColumnIndex("data3"));
|
String data3 = c.getString(c.getColumnIndex("data3"));
|
||||||
String data4 = c.getString(c.getColumnIndex("data4"));
|
String data4 = c.getString(c.getColumnIndex("data4"));
|
||||||
|
|
||||||
if (getFullName() == null) {
|
String fullName = getFullName();
|
||||||
|
if (fullName == null || !fullName.equals(displayName)) {
|
||||||
Log.d("[Linphone Contact] Setting display name " + displayName);
|
Log.d("[Linphone Contact] Setting display name " + displayName);
|
||||||
setFullName(displayName);
|
setFullName(displayName);
|
||||||
}
|
}
|
||||||
|
|
|
@ -221,14 +221,15 @@ public class DialerActivity extends MainActivity implements AddressText.AddressC
|
||||||
private void enableVideoPreviewIfTablet(boolean enable) {
|
private void enableVideoPreviewIfTablet(boolean enable) {
|
||||||
Core core = LinphoneManager.getCore();
|
Core core = LinphoneManager.getCore();
|
||||||
TextureView preview = findViewById(R.id.video_preview);
|
TextureView preview = findViewById(R.id.video_preview);
|
||||||
if (preview != null && core != null) {
|
ImageView changeCamera = findViewById(R.id.video_preview_change_camera);
|
||||||
|
|
||||||
|
if (preview != null && changeCamera != null && core != null) {
|
||||||
if (enable && isTablet() && LinphonePreferences.instance().isVideoPreviewEnabled()) {
|
if (enable && isTablet() && LinphonePreferences.instance().isVideoPreviewEnabled()) {
|
||||||
preview.setVisibility(View.VISIBLE);
|
preview.setVisibility(View.VISIBLE);
|
||||||
core.setNativePreviewWindowId(preview);
|
core.setNativePreviewWindowId(preview);
|
||||||
core.enableVideoPreview(true);
|
core.enableVideoPreview(true);
|
||||||
|
|
||||||
ImageView changeCamera = findViewById(R.id.video_preview_change_camera);
|
if (core.getVideoDevicesList().length > 1) {
|
||||||
if (changeCamera != null && core.getVideoDevicesList().length > 1) {
|
|
||||||
changeCamera.setVisibility(View.VISIBLE);
|
changeCamera.setVisibility(View.VISIBLE);
|
||||||
changeCamera.setOnClickListener(
|
changeCamera.setOnClickListener(
|
||||||
new View.OnClickListener() {
|
new View.OnClickListener() {
|
||||||
|
@ -240,6 +241,7 @@ public class DialerActivity extends MainActivity implements AddressText.AddressC
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
preview.setVisibility(View.GONE);
|
preview.setVisibility(View.GONE);
|
||||||
|
changeCamera.setVisibility(View.GONE);
|
||||||
core.setNativePreviewWindowId(null);
|
core.setNativePreviewWindowId(null);
|
||||||
core.enableVideoPreview(false);
|
core.enableVideoPreview(false);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue