diff --git a/src/org/linphone/LinphoneActivity.java b/src/org/linphone/LinphoneActivity.java index c7e63a0ef..0cb9efd7f 100644 --- a/src/org/linphone/LinphoneActivity.java +++ b/src/org/linphone/LinphoneActivity.java @@ -276,6 +276,18 @@ public class LinphoneActivity extends TabActivity implements SensorEventListener menu.findItem(R.id.menu_about).setVisible(useMenuAbout); return true; } + + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + LinphoneCore lc = LinphoneManager.getLcIfManagerNotDestroyedOrNull(); + if (lc == null) + return true; + // hide settings menu when in call + // otherwise, exiting the 'setting' menu will cause exosip deletion/recreation... + menu.findItem(R.id.menu_settings).setVisible(!lc.isIncall()); + + return super.onPrepareOptionsMenu(menu); + } @Override public boolean onOptionsItemSelected(MenuItem item) { diff --git a/src/org/linphone/LinphonePreferencesActivity.java b/src/org/linphone/LinphonePreferencesActivity.java index f69baa1b9..1745b3404 100644 --- a/src/org/linphone/LinphonePreferencesActivity.java +++ b/src/org/linphone/LinphonePreferencesActivity.java @@ -32,6 +32,7 @@ import java.util.Arrays; import java.util.List; import org.linphone.LinphoneManager.EcCalibrationListener; +import org.linphone.core.LinphoneCore; import org.linphone.core.LinphoneCoreException; import org.linphone.core.Log; import org.linphone.core.LinphoneCore.EcCalibratorStatus; @@ -229,6 +230,12 @@ public class LinphonePreferencesActivity extends PreferenceActivity implements E if (!isFinishing()) return; + LinphoneCore lc = LinphoneManager.getLcIfManagerNotDestroyedOrNull(); + + if (lc != null && (lc.isInComingInvitePending() || lc.isIncall())) { + Log.w("Call in progress => settings not applied"); + return; + } try { LinphoneManager.getInstance().initFromConf(getApplicationContext()); diff --git a/submodules/msx264 b/submodules/msx264 index 2e10820e9..b78cec7a5 160000 --- a/submodules/msx264 +++ b/submodules/msx264 @@ -1 +1 @@ -Subproject commit 2e10820e9c32fe75f049308d69e4164b46bc0d1a +Subproject commit b78cec7a59e04aff2a9884feed11addb9000b0ba