diff --git a/contrib/mobile/Android/src/org/geuz/onelab/Model.java b/contrib/mobile/Android/src/org/geuz/onelab/Model.java
index dfc50a4524558902b0aa1c11ed53af5294489e74..6cdc581448641b37ce8933079cbf5804b4062638 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/Model.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/Model.java
@@ -2,6 +2,7 @@ package org.geuz.onelab;
 
 import java.io.File;
 import android.net.Uri;
+import java.util.Comparator;
 
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
@@ -32,3 +33,10 @@ class Model {
     }
     public void setUrl(Uri url) { _url = url; }
 }
+
+class ModelComp implements Comparator<Model>{
+    @Override
+    public int compare(Model e1, Model e2) {
+        return e1.getName().compareTo(e2.getName());
+    }
+}
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/ModelArrayAdapter.java b/contrib/mobile/Android/src/org/geuz/onelab/ModelArrayAdapter.java
index 60dc9c9987f908e11d85f9b235b7b1dd591e2c1f..ac6fc70ce7dc593e94d112f0e9f4a868820ae66e 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/ModelArrayAdapter.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/ModelArrayAdapter.java
@@ -2,6 +2,7 @@ package org.geuz.onelab;
 
 import java.util.List;
 import java.util.ArrayList;
+import java.util.Collections;
 
 import android.content.Context;
 import android.view.LayoutInflater;
@@ -15,7 +16,7 @@ public class ModelArrayAdapter extends ArrayAdapter<Model> {
     private List<Model> _models;
 
     public ModelArrayAdapter(Context c)
-        {
+    {
         super(c, R.layout.model);
         _models = new ArrayList<Model>();
     }
@@ -27,7 +28,15 @@ public class ModelArrayAdapter extends ArrayAdapter<Model> {
         _models.add(model);
     }
 
-    public Model getModel(int pos) { return _models.get(pos); }
+    public void sortByName()
+    {
+        Collections.sort(_models, new ModelComp());
+    }
+
+    public Model getModel(int pos)
+    {
+        return _models.get(pos);
+    }
 
     @Override
     public View getView(int position, View convertView, final ViewGroup parent)
diff --git a/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java b/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java
index 8d9d9060829193b318acdd90cc365518d6f56c85..74eb4cf65c4b1139ae62b108f4500cd0f15063f8 100644
--- a/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java
+++ b/contrib/mobile/Android/src/org/geuz/onelab/ModelList.java
@@ -65,12 +65,13 @@ public class ModelList extends Activity {
                     CharSequence[] actions;
                     if(m.getUrl() != null) {
                         actions = new CharSequence[2];
-                        actions[0] = "Open this model";
-                        actions[1] = "More information";
+                        actions[0] = "Open model";
+                        actions[1] = "View model website";
+                        // FIXME: add "Remove model" as in iOS
                     }
                     else {
                         actions = new CharSequence[1];
-                        actions[0] = "Open this model";
+                        actions[0] = "Open model";
                     }
                     AlertDialog.Builder builder = new AlertDialog.Builder(parent.getContext());
                     builder.setTitle(m.getName());
@@ -182,6 +183,7 @@ public class ModelList extends Activity {
                 }
             }
         }
+        _modelArrayAdapter.sortByName();
     }
     private void readModel(XmlPullParser parser, String dir) throws XmlPullParserException, IOException
     {