#15046: implement hangUp
#15046: release string pointers in placeCall
Merge branch 'android' of git+ssh://git.sflphone.org/var/repos/sflphone/git/sflphone into android
#14371: Uncomment start capture in opensl
diff --git a/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java b/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java
index 24d3635..6346314 100644
--- a/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java
+++ b/src/com/savoirfairelinux/sflphone/client/ManagerImpl.java
@@ -48,4 +48,5 @@
     public static native String getJniString();
 	public static native void initN(String config_file);
 	public static native void placeCall(String accountID, String callID, String to);
+	public static native void hangUp(String accountID);
 }
diff --git a/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java b/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java
index 1cda915..6abb5e8 100644
--- a/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java
+++ b/src/com/savoirfairelinux/sflphone/client/SFLPhoneHome.java
@@ -52,6 +52,7 @@
 import android.view.ViewGroup;
 import android.widget.EditText;
 import android.widget.TextView;
+import java.util.Random;
 
 import com.savoirfairelinux.sflphone.R;
 
@@ -62,6 +63,8 @@
 	ButtonSectionFragment buttonFragment;
 	Handler callbackHandler;
 	static ManagerImpl managerImpl;
+	/* default callID */
+	static String callID = "007";
 
 	/**
 	 * The {@link ViewPager} that will host the section contents.
@@ -276,13 +279,13 @@
 
 	@Override
     public void onClick(View view)
-    {
+    {		
     	switch (view.getId()) {
     	case R.id.buttonCall:
-    		String callID = "007";
     		TextView textView = (TextView) findViewById(R.id.editAccountID);
     		String accountID = textView.getText().toString();
     		EditText editText;
+    		Random random = new Random();
     		
     		editText = (EditText) findViewById(R.id.editTo);
     		String to = editText.getText().toString();
@@ -291,9 +294,16 @@
             	break;
     		}
     		
+    		/* new random callID */
+    		callID = Integer.toString(random.nextInt());
+    		
     		Log.d(TAG, "ManagerImpl.placeCall(" + accountID + ", " + callID + ", " + to + ");");
     		ManagerImpl.placeCall(accountID, callID, to);
         	break;
+    	case R.id.buttonHangUp:
+    		Log.d(TAG, "ManagerImpl.hangUp(" + callID + ");");
+    		ManagerImpl.hangUp(callID);
+    		break;
     	case R.id.buttonInit:
     		ManagerImpl.initN("");
     		break;