Merge "Import translations. DO NOT MERGE"
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 0ffb4be..fcbe387 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -1627,6 +1627,7 @@
                 break;
 
             case R.id.find_menu_id:
+                findOnPage();
                 break;
 
             case R.id.save_snapshot_menu_id:
diff --git a/src/com/android/browser/homepages/RequestHandler.java b/src/com/android/browser/homepages/RequestHandler.java
index b3a03b9..13b52e3 100644
--- a/src/com/android/browser/homepages/RequestHandler.java
+++ b/src/com/android/browser/homepages/RequestHandler.java
@@ -37,6 +37,8 @@
 import java.io.OutputStream;

 import java.text.DateFormat;

 import java.text.DecimalFormat;

+import java.util.Arrays;

+import java.util.Comparator;

 import java.util.regex.Matcher;

 import java.util.regex.Pattern;

 

@@ -140,9 +142,20 @@
         t.write(mOutput);

     }

 

+    private static final Comparator<File> sFileComparator = new Comparator<File>() {

+        @Override

+        public int compare(File lhs, File rhs) {

+            if (lhs.isDirectory() != rhs.isDirectory()) {

+                return lhs.isDirectory() ? -1 : 1;

+            }

+            return lhs.getName().compareTo(rhs.getName());

+        }

+    };

+

     void writeFolderIndex() throws IOException {

         File f = new File(mUri.getPath());

         final File[] files = f.listFiles();

+        Arrays.sort(files, sFileComparator);

         Template t = Template.getCachedTemplate(mContext, R.raw.folder_view);

         t.assign("path", mUri.getPath());

         t.assign("parent_url", f.getParent() != null ? f.getParent() : f.getPath());