X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/2fad1e1a996c1f6058445ca398a74743b0e93023..c2ee5dbff97aac76fe4fce7069709ac24cdeb0db:/src/com/owncloud/android/ui/activity/FileDisplayActivity.java diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 8560ddbb..a5b324f3 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -25,6 +25,8 @@ import android.accounts.Account; import android.accounts.AccountManager; import android.accounts.AuthenticatorException; import android.accounts.OperationCanceledException; +import android.annotation.SuppressLint; +import android.annotation.TargetApi; import android.app.AlertDialog; import android.app.Dialog; import android.app.ProgressDialog; @@ -41,6 +43,7 @@ import android.content.SyncRequest; import android.content.res.Resources.NotFoundException; import android.database.Cursor; import android.net.Uri; +import android.os.Build; import android.os.Bundle; import android.os.IBinder; import android.preference.PreferenceManager; @@ -88,6 +91,7 @@ import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.services.observer.FileObserverService; import com.owncloud.android.syncadapter.FileSyncAdapter; +import com.owncloud.android.ui.adapter.FileListListAdapter; import com.owncloud.android.ui.dialog.CreateFolderDialogFragment; import com.owncloud.android.ui.dialog.SslUntrustedCertDialog; import com.owncloud.android.ui.dialog.SslUntrustedCertDialog.OnSslUntrustedCertListener; @@ -505,11 +509,11 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener { } case R.id.action_sort: { SharedPreferences appPreferences = PreferenceManager - .getDefaultSharedPreferences(getApplicationContext()); + .getDefaultSharedPreferences(this); // Read sorting order, default to sort by name ascending Integer sortOrder = appPreferences - .getInt("sortOrder", 0); + .getInt("sortOrder", FileListListAdapter.SORT_NAME); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(R.string.actionbar_sort_title) @@ -523,9 +527,11 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener { case 1: sortByDate(false); break; - case 2: - sortBySize(false); - break; + +// TODO re-enable when server-side folder size calculation is available +// case 2: +// sortBySize(false); +// break; } dialog.dismiss(); @@ -590,13 +596,23 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener { /** * Called, when the user selected something for uploading + * */ + @TargetApi(Build.VERSION_CODES.JELLY_BEAN) protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == ACTION_SELECT_CONTENT_FROM_APPS && (resultCode == RESULT_OK || resultCode == UploadFilesActivity.RESULT_OK_AND_MOVE)) { - requestSimpleUpload(data, resultCode); - + //getClipData is only supported on api level 16+ + if (data.getData() == null && Build.VERSION.SDK_INT >= 16){ + for( int i = 0; i < data.getClipData().getItemCount(); i++){ + Intent intent = new Intent(); + intent.setData(data.getClipData().getItemAt(i).getUri()); + requestSimpleUpload(intent, resultCode); + } + }else { + requestSimpleUpload(data, resultCode); + } } else if (requestCode == ACTION_SELECT_MULTIPLE_FILES && (resultCode == RESULT_OK || resultCode == UploadFilesActivity.RESULT_OK_AND_MOVE)) { requestMultipleUpload(data, resultCode); @@ -835,6 +851,10 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener { } else if (item == 1) { Intent action = new Intent(Intent.ACTION_GET_CONTENT); action = action.setType("*/*").addCategory(Intent.CATEGORY_OPENABLE); + //Intent.EXTRA_ALLOW_MULTIPLE is only supported on api level 18+ + if(Build.VERSION.SDK_INT >= 18) { + action.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true); + } startActivityForResult(Intent.createChooser(action, getString(R.string.upload_chooser_title)), ACTION_SELECT_CONTENT_FROM_APPS); }