From b726a7b0c81f57eacd9f2d4a89a1a9a41a69fe15 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 14 Mar 2012 10:35:52 +0100 Subject: [PATCH] Use ShareMyCamera settings when video call --- src/org/linphone/IncallActivity.java | 2 +- src/org/linphone/LinphoneManager.java | 10 ++++++++++ src/org/linphone/VideoCallActivity.java | 8 ++++++-- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/org/linphone/IncallActivity.java b/src/org/linphone/IncallActivity.java index 18a636c44..f188c74f7 100644 --- a/src/org/linphone/IncallActivity.java +++ b/src/org/linphone/IncallActivity.java @@ -115,6 +115,7 @@ public class IncallActivity extends AbstractCalleesActivity implements } setContentView(R.layout.incall_layout); instance = this; + LinphoneManager.getInstance().setVideoInitiator(false); mAllowTransfers = getResources().getBoolean(R.bool.allow_transfers); @@ -217,7 +218,6 @@ public class IncallActivity extends AbstractCalleesActivity implements } @Override - //FIXME : Store texts into resources protected Dialog onCreateDialog(final int id) { switch (id) { case promptVideoId: diff --git a/src/org/linphone/LinphoneManager.java b/src/org/linphone/LinphoneManager.java index 695685817..dc9e3df0a 100644 --- a/src/org/linphone/LinphoneManager.java +++ b/src/org/linphone/LinphoneManager.java @@ -136,6 +136,7 @@ public final class LinphoneManager implements LinphoneCoreListener { private String lastLcStatusMessage; private String basePath; private static boolean sExited; + private boolean videoInitiator = false; private WakeLock mIncallWakeLock; @@ -148,6 +149,14 @@ public final class LinphoneManager implements LinphoneCoreListener { public static void removeListener(LinphoneSimpleListener listener) { simpleListeners.remove(listener); } + + public boolean isVideoInitiator() { + return videoInitiator; + } + + public void setVideoInitiator(boolean b) { + videoInitiator = b; + } private LinphoneManager(final Context c, LinphoneServiceListener listener) { @@ -1155,6 +1164,7 @@ public final class LinphoneManager implements LinphoneCoreListener { public boolean addVideo() { LinphoneCall call = mLc.getCurrentCall(); enableCamera(call, true); + setVideoInitiator(true); return reinviteWithVideo(); } diff --git a/src/org/linphone/VideoCallActivity.java b/src/org/linphone/VideoCallActivity.java index ce6b307c3..05d7cc123 100755 --- a/src/org/linphone/VideoCallActivity.java +++ b/src/org/linphone/VideoCallActivity.java @@ -106,12 +106,16 @@ public class VideoCallActivity extends Activity implements LinphoneOnCallStateCh }); androidVideoWindowImpl.init(); - + videoCall = LinphoneManager.getLc().getCurrentCall(); if (videoCall != null) { + LinphoneManager lm = LinphoneManager.getInstance(); + if (!lm.shareMyCamera() && !lm.isVideoInitiator() && videoCall.cameraEnabled()) { + lm.sendStaticImage(true); + } + updatePreview(videoCall.cameraEnabled()); } - PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK|PowerManager.ON_AFTER_RELEASE,Log.TAG);