From 608578d3ff23e3df99c3c8e27c875447894ceb26 Mon Sep 17 00:00:00 2001
From: Maxime Graulich <maxime.graulich@gmail.com>
Date: Mon, 21 Oct 2013 09:01:37 +0000
Subject: [PATCH] Android: allow portrait

---
 contrib/mobile/Android/AndroidManifest.xml    |  10 +++++-----
 contrib/mobile/Android/res/raw/models.zip     | Bin 3480515 -> 3480741 bytes
 .../src/org/geuz/onelab/MainActivity.java     |  17 ++++++++++++++---
 .../src/org/geuz/onelab/OptionsActivity.java  |   2 +-
 .../src/org/geuz/onelab/OptionsFragment.java  |   4 ++--
 contrib/mobile/utils/onelab_android.sh        |   2 --
 6 files changed, 22 insertions(+), 13 deletions(-)

diff --git a/contrib/mobile/Android/AndroidManifest.xml b/contrib/mobile/Android/AndroidManifest.xml
index b430e252b5..497f806555 100644
--- a/contrib/mobile/Android/AndroidManifest.xml
+++ b/contrib/mobile/Android/AndroidManifest.xml
@@ -5,12 +5,12 @@
     android:installLocation="auto"
     >
 
-    <uses-feature android:glEsVersion="0x00010000" android:required="true"></uses-feature>
     <uses-sdk
         android:targetSdkVersion="17"
         android:minSdkVersion="14" />
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
     <uses-permission android:name="android.permission.VIBRATE"/>
+    <uses-feature android:glEsVersion="0x00010000" android:required="true" />
 
     <application
         android:icon="@drawable/ic_launcher"
@@ -32,7 +32,7 @@
         <activity
             android:name=".MainActivity"
             android:label="@string/title_activity_main"
-            android:screenOrientation="landscape" >
+            >
             <intent-filter>
 				<action android:name="android.intent.action.VIEW" />
 				<category android:name="android.intent.category.DEFAULT" />
@@ -44,11 +44,11 @@
          <activity
             android:name=".PostProcessingActivity"
             android:label="@string/title_activity_main"
-            android:screenOrientation="landscape" />
+             />
         <activity 
             android:name=".OptionsActivity"
             android:label="@string/title_activity_options"
-            android:screenOrientation="landscape" />
+             />
     </application>
 
-</manifest>
\ No newline at end of file
+</manifest>
diff --git a/contrib/mobile/Android/res/raw/models.zip b/contrib/mobile/Android/res/raw/models.zip
index c97774202966cc557d8262faa482cd0965fb3340..c0c8cc6619ce865707060cc8b78f0dd01eb01489 100644
GIT binary patch
delta 8838
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

delta 8470
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

diff --git a/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java b/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java
index e835b8bc55..0234b3796b 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java
@@ -15,6 +15,7 @@ import android.app.PendingIntent;
 import android.content.Context;
 import android.content.DialogInterface;
 import android.content.Intent;
+import android.database.Cursor;
 import android.graphics.Color;
 import android.graphics.drawable.ColorDrawable;
 import android.net.Uri;
@@ -22,6 +23,7 @@ import android.os.AsyncTask;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Parcelable;
+import android.provider.MediaStore;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.Window;
@@ -61,7 +63,8 @@ public class MainActivity extends Activity{
     		_gmsh.load(tmp);
     	}  		
     	else if(extras != null) {
-    		//extras.getString("name");
+    		String name = extras.getString("name");
+    		this.getActionBar().setTitle(name);
     		String tmp = extras.getString("file");
     		_gmsh.load(tmp);
     	}
@@ -69,10 +72,10 @@ public class MainActivity extends Activity{
     		this.finish();
     	_twoPane = (findViewById(R.id.parameter_fragment) != null);
     	_modelFragment = ModelFragment.newInstance(_gmsh);
-		getFragmentManager().beginTransaction().add(R.id.model_fragment, _modelFragment).commit();
+		getFragmentManager().beginTransaction().replace(R.id.model_fragment, _modelFragment).commit();
     	if(_twoPane) {
     		_optionsFragment = OptionsFragment.newInstance(_gmsh);
-    		getFragmentManager().beginTransaction().add(R.id.parameter_fragment, _optionsFragment).commit();
+    		getFragmentManager().beginTransaction().replace(R.id.parameter_fragment, _optionsFragment).commit();
     		_optionsFragment.setOnOptionsChangedListener(new OptionsFragment.OnOptionsChangedListener() {
     			
     			public void OnOptionsChanged() {
@@ -178,6 +181,14 @@ public class MainActivity extends Activity{
 		}
 	}
 	
+	public String getRealPathFromURI(Uri contentUri) {
+        String[] proj = { MediaStore.Images.Media.DATA };
+        Cursor cursor = managedQuery(contentUri, proj, null, null, null);
+        int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
+        cursor.moveToFirst();
+        return cursor.getString(column_index);
+    }
+	
 	private class Run extends AsyncTask<Void, Void, Integer[]> {
 
     	@Override
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/OptionsActivity.java b/contrib/mobile/Android/src/org/geuz/onelab/OptionsActivity.java
index 6ba536201e..73e3f349d8 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/OptionsActivity.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/OptionsActivity.java
@@ -22,7 +22,7 @@ public class OptionsActivity extends Activity {
 		getActionBar().setDisplayHomeAsUpEnabled(true);
 		getActionBar().setTitle(R.string.title_activity_options);
 		OptionsFragment optionsFragment = OptionsFragment.newInstance(gmsh);
-		getFragmentManager().beginTransaction().add(R.id.model_fragment, optionsFragment).commit();
+		getFragmentManager().beginTransaction().replace(R.id.model_fragment, optionsFragment).commit();
 	}
 	
 	@Override
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/OptionsFragment.java b/contrib/mobile/Android/src/org/geuz/onelab/OptionsFragment.java
index 0a17bc687b..bcf1f3b9dc 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/OptionsFragment.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/OptionsFragment.java
@@ -57,12 +57,12 @@ public class OptionsFragment extends Fragment{
 		if(_viewN == 0) {
 			optionDisplay.setEnabled(true);
 			optionModel.setEnabled(false);
-			getFragmentManager().beginTransaction().add(R.id.options_fragment, _optionModelFragment).commit();
+			getFragmentManager().beginTransaction().replace(R.id.options_fragment, _optionModelFragment).commit();
 		}
 		else {
 			optionDisplay.setEnabled(false);
 			optionModel.setEnabled(true);
-			getFragmentManager().beginTransaction().add(R.id.options_fragment, _optionDisplayFragment).commit();
+			getFragmentManager().beginTransaction().replace(R.id.options_fragment, _optionDisplayFragment).commit();
 		}
 		optionModel.setOnClickListener(new View.OnClickListener() {
 			
diff --git a/contrib/mobile/utils/onelab_android.sh b/contrib/mobile/utils/onelab_android.sh
index 5a3684cb7d..b3cadeafbb 100644
--- a/contrib/mobile/utils/onelab_android.sh
+++ b/contrib/mobile/utils/onelab_android.sh
@@ -63,8 +63,6 @@ checkError $? "make Android project fail (Onelab)"
 echo -e "\033[1m[+] Build Android application (java)\033[0m"
 cd Onelab/
 if [ ! -d "libs/armeabi-v7a/" ]; then mkdir -p libs/armeabi-v7a/; fi
-cp $ANDROID_SDK/extras/android/support/v4/android-support-v4.jar libs/
-checkError $? "Copy android support v4 fail (Android)"
 target=1
 count=0
 while read line; do
-- 
GitLab