Procházet zdrojové kódy

Merge branch 'master' into develop

masensio před 9 roky
rodič
revize
629cff2d3f
65 změnil soubory, kde provedl 97 přidání a 60 odebrání
  1. 3 3
      AndroidManifest.xml
  2. 11 0
      CHANGELOG.md
  3. 2 2
      oc_jb_workaround/AndroidManifest.xml
  4. 1 1
      owncloud-android-library
  5. binární
      res/drawable-hdpi/file.png
  6. binární
      res/drawable-hdpi/file_doc.png
  7. binární
      res/drawable-hdpi/file_image.png
  8. binární
      res/drawable-hdpi/file_movie.png
  9. binární
      res/drawable-hdpi/file_pdf.png
  10. binární
      res/drawable-hdpi/file_ppt.png
  11. binární
      res/drawable-hdpi/file_sound.png
  12. binární
      res/drawable-hdpi/file_xls.png
  13. binární
      res/drawable-hdpi/file_zip.png
  14. binární
      res/drawable-hdpi/folder_public.png
  15. binární
      res/drawable-hdpi/ic_menu_archive.png
  16. binární
      res/drawable-hdpi/shared_with_me_folder.png
  17. binární
      res/drawable-ldpi/file_sound.png
  18. binární
      res/drawable-ldpi/file_xls.png
  19. binární
      res/drawable-ldpi/file_zip.png
  20. binární
      res/drawable-ldpi/ic_menu_archive.png
  21. binární
      res/drawable-mdpi/file.png
  22. binární
      res/drawable-mdpi/file_doc.png
  23. binární
      res/drawable-mdpi/file_image.png
  24. binární
      res/drawable-mdpi/file_movie.png
  25. binární
      res/drawable-mdpi/file_pdf.png
  26. binární
      res/drawable-mdpi/file_ppt.png
  27. binární
      res/drawable-mdpi/file_sound.png
  28. binární
      res/drawable-mdpi/file_xls.png
  29. binární
      res/drawable-mdpi/file_zip.png
  30. binární
      res/drawable-mdpi/folder_public.png
  31. binární
      res/drawable-mdpi/ic_menu_archive.png
  32. binární
      res/drawable-mdpi/shared_with_me_folder.png
  33. binární
      res/drawable-xhdpi/file.png
  34. binární
      res/drawable-xhdpi/file_doc.png
  35. binární
      res/drawable-xhdpi/file_image.png
  36. binární
      res/drawable-xhdpi/file_movie.png
  37. binární
      res/drawable-xhdpi/file_pdf.png
  38. binární
      res/drawable-xhdpi/file_ppt.png
  39. binární
      res/drawable-xhdpi/file_sound.png
  40. binární
      res/drawable-xhdpi/file_xls.png
  41. binární
      res/drawable-xhdpi/file_zip.png
  42. binární
      res/drawable-xhdpi/folder_public.png
  43. binární
      res/drawable-xhdpi/ic_menu_archive.png
  44. binární
      res/drawable-xhdpi/shared_with_me_folder.png
  45. binární
      res/drawable-xxhdpi/file.png
  46. binární
      res/drawable-xxhdpi/file_doc.png
  47. binární
      res/drawable-xxhdpi/file_image.png
  48. binární
      res/drawable-xxhdpi/file_movie.png
  49. binární
      res/drawable-xxhdpi/file_pdf.png
  50. binární
      res/drawable-xxhdpi/file_ppt.png
  51. binární
      res/drawable-xxhdpi/file_sound.png
  52. binární
      res/drawable-xxhdpi/file_xls.png
  53. binární
      res/drawable-xxhdpi/file_zip.png
  54. binární
      res/drawable-xxhdpi/folder_public.png
  55. binární
      res/drawable-xxhdpi/ic_menu_archive.png
  56. binární
      res/drawable-xxhdpi/shared_with_me_folder.png
  57. binární
      res/drawable/ic_menu_archive.png
  58. 21 8
      res/layout/uploader_layout.xml
  59. 1 1
      res/layout/uploader_list_item_layout.xml
  60. 0 10
      res/values-tzl/strings.xml
  61. 12 6
      res/values/strings.xml
  62. 7 12
      src/com/owncloud/android/ui/activity/FileActivity.java
  63. 3 1
      src/com/owncloud/android/ui/activity/FileDisplayActivity.java
  64. 2 1
      src/com/owncloud/android/ui/activity/Uploader.java
  65. 34 15
      src/com/owncloud/android/ui/fragment/OCFileListFragment.java

+ 3 - 3
AndroidManifest.xml

@@ -18,8 +18,8 @@
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
  -->
 <manifest package="com.owncloud.android"
-    android:versionCode="10700100"
-    android:versionName="1.7.1" xmlns:android="http://schemas.android.com/apk/res/android">
+    android:versionCode="10700200"
+    android:versionName="1.7.2" xmlns:android="http://schemas.android.com/apk/res/android">
 
     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
@@ -36,7 +36,7 @@
     <uses-permission android:name="android.permission.WAKE_LOCK"/>
     
     <uses-sdk
-        android:minSdkVersion="8"
+        android:minSdkVersion="14"
         android:targetSdkVersion="19" />
 
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" >

+ 11 - 0
CHANGELOG.md

@@ -1,3 +1,14 @@
+## 1.7.2 (July 2015)
+- New navigation drawer
+- Improved Passcode
+- Automatic grid view just for folders full of images
+- More characters allowed in file names
+- Support for servers in same domain, different path
+- Bugs fixed:
+  + Frequent crashes in folder with several images
+  + Sync error in servers with huge quota and external storage enable
+  + Share by link error 
+  + Some other crashes and minor bugs
 
 ## 1.7.1 (April 2015)
 

+ 2 - 2
oc_jb_workaround/AndroidManifest.xml

@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.owncloud.android.workaround.accounts"
-    android:versionCode="0100023"
-    android:versionName="1.0.23" >
+    android:versionCode="0100024"
+    android:versionName="1.0.24" >
 
     <uses-sdk
         android:minSdkVersion="16"

+ 1 - 1
owncloud-android-library

@@ -1 +1 @@
-Subproject commit f5fbca24becbb01660abe2a7013c1b536ea8a301
+Subproject commit 02c24c8a3bd87382590ece0e0744ad430718b51a

binární
res/drawable-hdpi/file.png


binární
res/drawable-hdpi/file_doc.png


binární
res/drawable-hdpi/file_image.png


binární
res/drawable-hdpi/file_movie.png


binární
res/drawable-hdpi/file_pdf.png


binární
res/drawable-hdpi/file_ppt.png


binární
res/drawable-hdpi/file_sound.png


binární
res/drawable-hdpi/file_xls.png


binární
res/drawable-hdpi/file_zip.png


binární
res/drawable-hdpi/folder_public.png


binární
res/drawable-hdpi/ic_menu_archive.png


binární
res/drawable-hdpi/shared_with_me_folder.png


binární
res/drawable-ldpi/file_sound.png


binární
res/drawable-ldpi/file_xls.png


binární
res/drawable-ldpi/file_zip.png


binární
res/drawable-ldpi/ic_menu_archive.png


binární
res/drawable-mdpi/file.png


binární
res/drawable-mdpi/file_doc.png


binární
res/drawable-mdpi/file_image.png


binární
res/drawable-mdpi/file_movie.png


binární
res/drawable-mdpi/file_pdf.png


binární
res/drawable-mdpi/file_ppt.png


binární
res/drawable-mdpi/file_sound.png


binární
res/drawable-mdpi/file_xls.png


binární
res/drawable-mdpi/file_zip.png


binární
res/drawable-mdpi/folder_public.png


binární
res/drawable-mdpi/ic_menu_archive.png


binární
res/drawable-mdpi/shared_with_me_folder.png


binární
res/drawable-xhdpi/file.png


binární
res/drawable-xhdpi/file_doc.png


binární
res/drawable-xhdpi/file_image.png


binární
res/drawable-xhdpi/file_movie.png


binární
res/drawable-xhdpi/file_pdf.png


binární
res/drawable-xhdpi/file_ppt.png


binární
res/drawable-xhdpi/file_sound.png


binární
res/drawable-xhdpi/file_xls.png


binární
res/drawable-xhdpi/file_zip.png


binární
res/drawable-xhdpi/folder_public.png


binární
res/drawable-xhdpi/ic_menu_archive.png


binární
res/drawable-xhdpi/shared_with_me_folder.png


binární
res/drawable-xxhdpi/file.png


binární
res/drawable-xxhdpi/file_doc.png


binární
res/drawable-xxhdpi/file_image.png


binární
res/drawable-xxhdpi/file_movie.png


binární
res/drawable-xxhdpi/file_pdf.png


binární
res/drawable-xxhdpi/file_ppt.png


binární
res/drawable-xxhdpi/file_sound.png


binární
res/drawable-xxhdpi/file_xls.png


binární
res/drawable-xxhdpi/file_zip.png


binární
res/drawable-xxhdpi/folder_public.png


binární
res/drawable-xxhdpi/ic_menu_archive.png


binární
res/drawable-xxhdpi/shared_with_me_folder.png


binární
res/drawable/ic_menu_archive.png


+ 21 - 8
res/layout/uploader_layout.xml

@@ -21,15 +21,28 @@
 	android:layout_height="wrap_content" android:orientation="vertical"
 	android:layout_width="wrap_content" android:background="#fefefe"
 	android:gravity="center">
-	<TextView android:layout_width="fill_parent" android:text="@string/uploader_top_message"
-		android:layout_height="wrap_content" android:id="@+id/drawer_username" android:textColor="@android:color/black"
-		android:gravity="center_horizontal"></TextView>
+
+	<TextView android:layout_width="fill_parent"
+		android:text="@string/uploader_top_message"
+		android:layout_height="wrap_content"
+		android:id="@+id/drawer_username"
+		android:textColor="@android:color/black"
+		android:gravity="center_horizontal">
+	</TextView>
+
 	<FrameLayout android:layout_height="fill_parent"
-		android:layout_width="fill_parent" android:id="@+id/frameLayout1"
-		android:layout_below="@+id/drawer_username" android:layout_above="@+id/linearLayout1">
-		<ListView android:id="@android:id/list" android:layout_width="fill_parent"
-			android:layout_height="fill_parent" android:divider="@drawable/uploader_list_separator"
-			android:dividerHeight="1dip"></ListView>
+		android:layout_width="fill_parent"
+		android:id="@+id/frameLayout1"
+		android:layout_below="@+id/drawer_username"
+		android:layout_above="@+id/linearLayout1">
+
+		<ListView android:id="@android:id/list"
+			android:layout_width="fill_parent"
+			android:layout_height="fill_parent"
+			android:divider="@drawable/uploader_list_separator"
+			android:dividerHeight="1dip">
+		</ListView>
+
 	</FrameLayout>
 
 	<LinearLayout

+ 1 - 1
res/layout/uploader_list_item_layout.xml

@@ -35,7 +35,7 @@
     <TextView 
         android:text="TextView" 
         android:layout_width="fill_parent" 
-        android:id="@+id/drawer_username" 
+        android:id="@+id/filename"
         android:layout_height="wrap_content" 
         android:textColor="@android:color/black"
 		android:layout_gravity="center_vertical"

+ 0 - 10
res/values-tzl/strings.xml

@@ -1,10 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<resources>
-  <!--TODO re-enable when server-side folder size calculation is available   
-    	<item>Biggest - Smallest</item>-->
-  <!--TODO re-enable when "Accounts" is available in Navigation Drawer-->
-  <!--<string name="drawer_item_accounts">Accounts</string>-->
-  <!--TODO re-enable when "On Device" is available
-    <string name="drawer_item_on_device">On device</string>-->
-  <string name="empty"></string>
-</resources>

+ 12 - 6
res/values/strings.xml

@@ -72,12 +72,8 @@
     <string name="uploader_info_uploading">Uploading</string>
     <string name="file_list_seconds_ago">seconds ago</string>
     <string name="file_list_empty">Nothing in here. Upload something!</string>
-    <string name="file_list_loading">Loading...</string>
+    <string name="file_list_loading">Loading&#8230;</string>
     <string name="local_file_list_empty">There are no files in this folder.</string>
-    <string name="file_list_folder">folder</string>
-    <string name="file_list_folders">folders</string>
-    <string name="file_list_file">file</string>
-    <string name="file_list_files">files</string>
     <string name="filedetails_select_file">Tap on a file to display additional information.</string>
     <string name="filedetails_size">Size:</string>
     <string name="filedetails_type">Type:</string>
@@ -301,7 +297,7 @@
 	<string name="network_error_connect_timeout_exception">An error occurred while waiting for the server, the operation couldn\'t have been done</string>
 	<string name="network_host_not_available">The operation couldn\'t be completed, server is unavailable</string>
 
-	<string name="empty"></string>
+	<string name="empty" />
 	
 	<string name="forbidden_permissions">You do not have permission %s</string>
 	<string name="forbidden_permissions_rename">to rename this file</string>
@@ -350,4 +346,14 @@
     <string name="common_error_out_memory">Not enough memory</string>
 
     <string name="username">Username</string>
+
+    <string name="file_list__footer__folder">1 folder</string>
+    <string name="file_list__footer__folders">%1$d folders</string>
+    <string name="file_list__footer__file">1 file</string>
+    <string name="file_list__footer__file_and_folder">1 file, 1 folder</string>
+    <string name="file_list__footer__file_and_folders">1 file, %1$d folders</string>
+    <string name="file_list__footer__files">%1$d files</string>
+    <string name="file_list__footer__files_and_folder">%1$d files, 1 folder</string>
+    <string name="file_list__footer__files_and_folders">%1$d files, %2$d folders</string>
+
 </resources>

+ 7 - 12
src/com/owncloud/android/ui/activity/FileActivity.java

@@ -405,19 +405,14 @@ public class FileActivity extends ActionBarActivity
 
         /// choose the appropiate title
         if (chosenFile == null) {
-            // mFile determines the title
-            inRoot = (mFile == null || mFile.getParentId() == 0);
-            if (!inRoot) {
-                title = mFile.getFileName();
-            }
-
-        } else if (chosenFile.getParentId() != 0){
-            // chosenFile determines the title, instead of mFile
+            chosenFile = mFile;     // if no file is passed, current file decides
+        }
+        inRoot = (
+                chosenFile == null ||
+                (chosenFile.isFolder() && chosenFile.getParentId() == FileDataStorageManager.ROOT_PARENT_ID)
+        );
+        if (!inRoot) {
             title = chosenFile.getFileName();
-            inRoot = false;
-
-        } else{
-            inRoot = true;
         }
 
         /// set the chosen title

+ 3 - 1
src/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -58,6 +58,7 @@ import android.widget.Toast;
 
 import com.owncloud.android.MainApp;
 import com.owncloud.android.R;
+import com.owncloud.android.datamodel.FileDataStorageManager;
 import com.owncloud.android.datamodel.OCFile;
 import com.owncloud.android.files.services.FileDownloader;
 import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder;
@@ -729,7 +730,8 @@ public class FileDisplayActivity extends HookActivity
     public void onBackPressed() {
         OCFileListFragment listOfFiles = getListOfFilesFragment(); 
         if (mDualPane || getSecondFragment() == null) {
-            if (getFile() != null && getFile().getParentId() == 0) {
+            OCFile currentDir = getCurrentDir();
+            if (currentDir == null || currentDir.getParentId() == FileDataStorageManager.ROOT_PARENT_ID) {
                 finish();
                 return;
             }

+ 2 - 1
src/com/owncloud/android/ui/activity/Uploader.java

@@ -426,7 +426,7 @@ public class Uploader extends FileActivity
                                                 data,
                                                 R.layout.uploader_list_item_layout,
                                                 new String[] {"dirname"},
-                                                new int[] {R.id.textView1});
+                                                new int[] {R.id.filename});
             
             mListView.setAdapter(sa);
             Button btnChooseFolder = (Button) findViewById(R.id.uploader_choose_folder);
@@ -638,6 +638,7 @@ public class Uploader extends FileActivity
             mParents.add("");
         } else{
             String[] dir_names = last_path.split("/");
+            mParents.clear();
             for (String dir : dir_names)
                 mParents.add(dir);
         }

+ 34 - 15
src/com/owncloud/android/ui/fragment/OCFileListFragment.java

@@ -442,23 +442,42 @@ public class OCFileListFragment extends ExtendedListFragment {
     }
 
     private String generateFooterText(int filesCount, int foldersCount) {
-        String output = "";
-        if (filesCount > 0){
-            if (filesCount == 1) {
-                output = output + filesCount + " " + getResources().getString(R.string.file_list_file);
-            } else {
-                output = output + filesCount + " " + getResources().getString(R.string.file_list_files);
+        String output;
+        if (filesCount <= 0) {
+            if (foldersCount <= 0) {
+                output = "";
+
+            } else if (foldersCount == 1) {
+                output = getResources().getString(R.string.file_list__footer__folder);
+
+            } else { // foldersCount > 1
+                output = getResources().getString(R.string.file_list__footer__folders, foldersCount);
             }
-        }
-        if (foldersCount > 0 && filesCount > 0){
-            output = output + ", ";
-        }
-        if (foldersCount == 1) {
-            output = output + foldersCount + " " + getResources().getString(R.string.file_list_folder);
-        } else if (foldersCount > 1) {
-            output = output + foldersCount + " " + getResources().getString(R.string.file_list_folders);
-        }
 
+        } else if (filesCount == 1) {
+            if (foldersCount <= 0) {
+                output = getResources().getString(R.string.file_list__footer__file);
+
+            } else if (foldersCount == 1) {
+                output = getResources().getString(R.string.file_list__footer__file_and_folder);
+
+            } else { // foldersCount > 1
+                output = getResources().getString(R.string.file_list__footer__file_and_folders, foldersCount);
+            }
+        } else {    // filesCount > 1
+            if (foldersCount <= 0) {
+                output = getResources().getString(R.string.file_list__footer__files, filesCount);
+
+            } else if (foldersCount == 1) {
+                output = getResources().getString(R.string.file_list__footer__files_and_folder, filesCount);
+
+            } else { // foldersCount > 1
+                output = getResources().getString(
+                        R.string.file_list__footer__files_and_folders, filesCount, foldersCount
+                );
+
+            }
+        }
         return output;
     }