From 523ee4bcd149674062243d3cad604d7334fa9527 Mon Sep 17 00:00:00 2001
From: Maxime Graulich <maxime.graulich@gmail.com>
Date: Tue, 17 Sep 2013 08:11:49 +0000
Subject: [PATCH] Android: do not hide ActionBar + fixes

---
 contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java     | 2 +-
 .../mobile/Android/src/org/geuz/onelab/MainActivity.java | 2 +-
 .../Android/src/org/geuz/onelab/ModelFragment.java       | 6 +++---
 .../mobile/Android/src/org/geuz/onelab/ModelList.java    | 9 ++++++++-
 .../src/org/geuz/onelab/OptionsDisplayFragment.java      | 2 +-
 5 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java b/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java
index 00d4d8e66d..2e1e04fda1 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/Gmsh.java
@@ -30,7 +30,7 @@ public class Gmsh implements Parcelable {
 	public native String[] getPView(); // get a list of PViews
 	public native void setPView(int position, int intervalsType,int visible,int nbIso, float raisez); // Change options for a PView
 	public native int onelabCB(String action); // Call onelab
-	
+
 	public native void animationNext();
 	public native void animationPrev();
 	
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java b/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java
index 6203d2aaaf..2a3a8f85b5 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/MainActivity.java
@@ -264,7 +264,7 @@ public class MainActivity extends Activity{
 			notifyEndComputing("The computing had to stop because your device ran out of memory");
 			_notify = false;
 		}
-		else if(level == Activity.TRIM_MEMORY_COMPLETE) {
+		else if(level == Activity.TRIM_MEMORY_MODERATE) {
 			notifyComputing("Computing in progress - low memory", true);
 		}
 		super.onTrimMemory(level);
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/ModelFragment.java b/contrib/mobile/Android/src/org/geuz/onelab/ModelFragment.java
index 38d91dd4b6..bb4e2c7fd3 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/ModelFragment.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/ModelFragment.java
@@ -136,7 +136,7 @@ public class ModelFragment extends Fragment{
 					((ImageButton)v).setImageResource(android.R.drawable.ic_media_play);
 					_animation.cancel();
 					prevButton.setEnabled(true);
-		    		nextButton.setEnabled(true);
+					nextButton.setEnabled(true);
 				}
 			}
 		});
@@ -171,7 +171,7 @@ public class ModelFragment extends Fragment{
 	public void showControlBar() {
 		if(getActivity() == null) return;
 		this.postDelay();
-		getActivity().getActionBar().show();
+		//getActivity().getActionBar().show();
 		Animation bottomUp = AnimationUtils.loadAnimation(getActivity(), android.R.anim.fade_in);
 		_controlBarLayout.setVisibility(View.VISIBLE);
 		_controlBarLayout.startAnimation(bottomUp);
@@ -179,7 +179,7 @@ public class ModelFragment extends Fragment{
 	public void hideControlBar() {
 		if(getActivity() == null) return;
 		_hideDelay.removeCallbacks(hideControlsRunnable);
-		getActivity().getActionBar().hide();
+		//getActivity().getActionBar().hide();
 		Animation bottomDown = AnimationUtils.loadAnimation(getActivity(), android.R.anim.fade_out);
 		_controlBarLayout.startAnimation(bottomDown);
 		_controlBarLayout.setVisibility(View.INVISIBLE);
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java b/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java
index 4ebcf15199..e5b10f527f 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java
@@ -10,6 +10,7 @@ import org.xmlpull.v1.XmlPullParserException;
 
 import android.app.Activity;
 import android.app.AlertDialog;
+import android.content.ActivityNotFoundException;
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.database.Cursor;
@@ -24,6 +25,7 @@ import android.view.View;
 import android.widget.AdapterView;
 import android.widget.LinearLayout;
 import android.widget.ListView;
+import android.widget.Toast;
 
 public class ModelList extends Activity {
 	
@@ -113,7 +115,12 @@ public class ModelList extends Activity {
 			Intent fileBrowserIntent = new Intent();
 			fileBrowserIntent.setAction(Intent.ACTION_GET_CONTENT);
 			fileBrowserIntent.setType("file/*");
-			startActivityForResult(fileBrowserIntent, 1);
+			try {
+				startActivityForResult(fileBrowserIntent, 1);
+			}
+			catch(ActivityNotFoundException e) {
+				Toast.makeText(this, "No application found on your device to open the files.", Toast.LENGTH_LONG).show();
+			}
 		}
 		return super.onMenuItemSelected(featureId, item);
 	}
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/OptionsDisplayFragment.java b/contrib/mobile/Android/src/org/geuz/onelab/OptionsDisplayFragment.java
index fe8d78e63d..707bbf50a0 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/OptionsDisplayFragment.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/OptionsDisplayFragment.java
@@ -131,7 +131,7 @@ public class OptionsDisplayFragment extends Fragment{
 					if(mListener != null) mListener.OnModelOptionsChanged();
 				}
 			});
-        	button.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
+        	button.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
         	button.setBackgroundColor(Color.TRANSPARENT);
         	button.setGravity(Gravity.RIGHT);
 			layout.addView(checkbox);
-- 
GitLab