X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/c3d88a0594e32043b2599a37789b7ada4a9ac85a..0e4c56f3161cefc49c0eb91eea2a84a02e2775a3:/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 aec61859..4aba76bf 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -21,6 +21,7 @@ package com.owncloud.android.ui.activity; import java.io.File; import android.accounts.Account; +import android.accounts.AccountManager; import android.app.AlertDialog; import android.app.Dialog; import android.app.ProgressDialog; @@ -68,10 +69,12 @@ import com.owncloud.android.files.services.FileUploader; import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder; import com.owncloud.android.files.services.FileUploader.FileUploaderBinder; import com.owncloud.android.operations.CreateFolderOperation; +import com.owncloud.android.oc_framework.accounts.OwnCloudAccount; import com.owncloud.android.oc_framework.operations.OnRemoteOperationListener; import com.owncloud.android.oc_framework.operations.RemoteOperation; import com.owncloud.android.oc_framework.operations.RemoteOperationResult; import com.owncloud.android.oc_framework.operations.RemoteOperationResult.ResultCode; +import com.owncloud.android.operations.GetSharedFilesOperation; import com.owncloud.android.operations.RemoveFileOperation; import com.owncloud.android.operations.RenameFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; @@ -162,6 +165,8 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa // PIN CODE request ; best location is to decide, let's try this first if (getIntent().getAction() != null && getIntent().getAction().equals(Intent.ACTION_MAIN) && savedInstanceState == null) { requestPinCode(); + } else if (getIntent().getAction() == null && savedInstanceState == null) { + requestPinCode(); } /// file observer @@ -221,7 +226,7 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa protected void onAccountSet(boolean stateWasRecovered) { if (getAccount() != null) { mStorageManager = new FileDataStorageManager(getAccount(), getContentResolver()); - + /// Check whether the 'main' OCFile handled by the Activity is contained in the current Account OCFile file = getFile(); // get parent from path @@ -243,6 +248,12 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa } setFile(file); setNavigationListWithFolder(file); + + /// get the shared files + if (isSharedSupported()) { + startGetSharedFiles(); + } + if (!stateWasRecovered) { Log_OC.e(TAG, "Initializing Fragments in onAccountChanged.."); initFragmentsWithFile(); @@ -1276,10 +1287,24 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa } else if (operation instanceof CreateFolderOperation) { onCreateFolderOperationFinish((CreateFolderOperation)operation, result); - } + } else if (operation instanceof GetSharedFilesOperation) { + onGetSharedFilesOperationFinish((GetSharedFilesOperation) operation, result); + } } + /** Updates the data about shared files + * + * @param operation Get Shared Files + * @param result Result of the operation + */ + private void onGetSharedFilesOperationFinish(GetSharedFilesOperation operation, RemoteOperationResult result) { + // TODO + // Refresh the filelist with the information + refeshListOfFilesFragment(); + + } + /** * Updates the view associated to the activity after the finish of an operation trying to remove a * file. @@ -1489,6 +1514,16 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa } + private void startGetSharedFiles() { + // Get shared files/folders + AccountManager accountMngr = AccountManager.get(this); + String urlServer = accountMngr.getUserData(getAccount(), OwnCloudAccount.Constants.KEY_OC_BASE_URL); + + RemoteOperation getSharedFiles = new GetSharedFilesOperation(urlServer, mStorageManager); + getSharedFiles.execute(getAccount(), this, null, null, this); + + } + // public void enableDisableViewGroup(ViewGroup viewGroup, boolean enabled) { // int childCount = viewGroup.getChildCount(); // for (int i = 0; i < childCount; i++) {