Fix video call activity not finishing on call end.

This commit is contained in:
Guillaume Beraudo 2011-04-14 10:15:00 +02:00
parent 7c0cdb7036
commit 78146cc571
2 changed files with 22 additions and 6 deletions

View file

@ -278,14 +278,14 @@ public class DialerActivity extends Activity implements LinphoneGuiListener, New
updateIncallVideoCallButton(); updateIncallVideoCallButton();
mSpeaker.setSpeakerOn(false); mSpeaker.setSpeakerOn(false);
} }
mAddressLayout.setVisibility(View.VISIBLE); mAddressLayout.setVisibility(View.VISIBLE);
mHangup.setEnabled(false); mHangup.setEnabled(false);
if (useVideoActivity && LinphoneManager.getLc().isVideoEnabled()) { if (useVideoActivity && LinphoneManager.getLc().isVideoEnabled()) {
finishActivity(LinphoneActivity.VIDEO_VIEW_ACTIVITY); LinphoneActivity.instance().finishVideoActivity();
BandwidthManager.getInstance().setUserRestriction(false); BandwidthManager.getInstance().setUserRestriction(false);
LinphoneManager.getInstance().resetCameraFromPreferences(); LinphoneManager.getInstance().resetCameraFromPreferences();
} }

View file

@ -46,6 +46,7 @@ import android.hardware.SensorEventListener;
import android.hardware.SensorManager; import android.hardware.SensorManager;
import android.media.AudioManager; import android.media.AudioManager;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler;
import android.preference.PreferenceManager; import android.preference.PreferenceManager;
import android.text.Html; import android.text.Html;
import android.util.Log; import android.util.Log;
@ -63,7 +64,7 @@ import android.widget.TabHost.TabSpec;
public class LinphoneActivity extends TabActivity { public class LinphoneActivity extends TabActivity {
public static final String DIALER_TAB = "dialer"; public static final String DIALER_TAB = "dialer";
public static final String PREF_FIRST_LAUNCH = "pref_first_launch"; public static final String PREF_FIRST_LAUNCH = "pref_first_launch";
static final int VIDEO_VIEW_ACTIVITY = 100; private static final int video_activity = 100;
static final int FIRST_LOGIN_ACTIVITY = 101; static final int FIRST_LOGIN_ACTIVITY = 101;
static final int INCALL_ACTIVITY = 102; static final int INCALL_ACTIVITY = 102;
static final int INCOMING_CALL_ACTIVITY = 103; static final int INCOMING_CALL_ACTIVITY = 103;
@ -80,6 +81,7 @@ public class LinphoneActivity extends TabActivity {
private static String TAG = LinphoneManager.TAG; private static String TAG = LinphoneManager.TAG;
private static final String SCREEN_IS_HIDDEN = "screen_is_hidden"; private static final String SCREEN_IS_HIDDEN = "screen_is_hidden";
private Handler mHandler = new Handler();
// Customization // Customization
@ -491,9 +493,23 @@ public class LinphoneActivity extends TabActivity {
public void startVideoActivity() { public void startVideoActivity() {
startActivityForResult( mHandler.post(new Runnable() {
new Intent().setClass(this, VideoCallActivity.class), public void run() {
LinphoneActivity.VIDEO_VIEW_ACTIVITY); startActivityForResult(new Intent().setClass(
LinphoneActivity.this,
VideoCallActivity.class),
video_activity);
}
});
}
public void finishVideoActivity() {
mHandler.post(new Runnable() {
public void run() {
finishActivity(video_activity);
}
});
} }
} }