X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/e8ae33b62889ca0ae97abb813f08e6aad4d9b4c2..6cfa24f55ab605770df08a6bed889bfccf0c0888:/src/com/owncloud/android/ui/fragment/FileDetailFragment.java diff --git a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java index 85312b93..0ee824d2 100644 --- a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java +++ b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java @@ -29,7 +29,6 @@ import org.apache.commons.httpclient.params.HttpConnectionManagerParams; import org.apache.http.HttpStatus; import org.apache.http.NameValuePair; import org.apache.http.client.utils.URLEncodedUtils; -import org.apache.http.entity.FileEntity; import org.apache.http.message.BasicNameValuePair; import org.apache.http.protocol.HTTP; import org.apache.jackrabbit.webdav.client.methods.PropFindMethod; @@ -37,7 +36,6 @@ import org.json.JSONObject; import android.accounts.Account; import android.accounts.AccountManager; -import android.annotation.SuppressLint; import android.app.Activity; import android.content.ActivityNotFoundException; import android.content.BroadcastReceiver; @@ -46,27 +44,17 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.ServiceConnection; -import android.graphics.Bitmap; -import android.graphics.BitmapFactory; -import android.graphics.BitmapFactory.Options; -import android.graphics.Point; import android.net.Uri; -import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; import android.os.IBinder; -import android.support.v4.app.DialogFragment; import android.support.v4.app.FragmentTransaction; import android.util.Log; -import android.view.Display; import android.view.LayoutInflater; -import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; -import android.view.View.OnTouchListener; import android.view.ViewGroup; import android.webkit.MimeTypeMap; -import android.webkit.WebView.FindListener; import android.widget.Button; import android.widget.CheckBox; import android.widget.ImageView; @@ -74,7 +62,6 @@ import android.widget.MediaController; import android.widget.ProgressBar; import android.widget.TextView; import android.widget.Toast; -import android.widget.VideoView; import com.actionbarsherlock.app.SherlockFragment; import com.owncloud.android.AccountUtils; @@ -82,7 +69,6 @@ import com.owncloud.android.DisplayUtils; import com.owncloud.android.authenticator.AccountAuthenticator; 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.FileObserverService; import com.owncloud.android.files.services.FileUploader; import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder; @@ -100,9 +86,7 @@ import com.owncloud.android.operations.SynchronizeFileOperation; import com.owncloud.android.ui.activity.ConflictsResolveActivity; import com.owncloud.android.ui.activity.FileDetailActivity; import com.owncloud.android.ui.activity.FileDisplayActivity; -import com.owncloud.android.ui.OnSwipeTouchListener; -import com.owncloud.android.ui.activity.TransferServiceGetter; -import com.owncloud.android.ui.activity.VideoActivity; +import com.owncloud.android.ui.activity.PreviewVideoActivity; import com.owncloud.android.ui.dialog.EditNameDialog; import com.owncloud.android.ui.dialog.EditNameDialog.EditNameDialogListener; import com.owncloud.android.utils.OwnCloudVersion; @@ -135,7 +119,7 @@ public class FileDetailFragment extends SherlockFragment implements private Account mAccount; private FileDataStorageManager mStorageManager; - private DownloadFinishReceiver mDownloadFinishReceiver; + //private DownloadFinishReceiver mDownloadFinishReceiver; private UploadFinishReceiver mUploadFinishReceiver; public ProgressListener mProgressListener; @@ -218,7 +202,7 @@ public class FileDetailFragment extends SherlockFragment implements mProgressListener = new ProgressListener(progressBar); } - updateFileDetails(false); + updateFileDetails(false, false); return view; } @@ -245,8 +229,7 @@ public class FileDetailFragment extends SherlockFragment implements public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); if (mAccount != null) { - mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver());; - mView.setOnTouchListener(new OnSwipeTouchListener(getActivity())); + mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver()); } } @@ -271,13 +254,15 @@ public class FileDetailFragment extends SherlockFragment implements public void onResume() { super.onResume(); + /* mDownloadFinishReceiver = new DownloadFinishReceiver(); IntentFilter filter = new IntentFilter( FileDownloader.DOWNLOAD_FINISH_MESSAGE); getActivity().registerReceiver(mDownloadFinishReceiver, filter); + */ mUploadFinishReceiver = new UploadFinishReceiver(); - filter = new IntentFilter(FileUploader.UPLOAD_FINISH_MESSAGE); + IntentFilter filter = new IntentFilter(FileUploader.UPLOAD_FINISH_MESSAGE); getActivity().registerReceiver(mUploadFinishReceiver, filter); } @@ -287,11 +272,17 @@ public class FileDetailFragment extends SherlockFragment implements public void onPause() { super.onPause(); - getActivity().unregisterReceiver(mDownloadFinishReceiver); - mDownloadFinishReceiver = null; + /* + if (mDownloadFinishReceiver != null) { + getActivity().unregisterReceiver(mDownloadFinishReceiver); + mDownloadFinishReceiver = null; + } + */ - getActivity().unregisterReceiver(mUploadFinishReceiver); - mUploadFinishReceiver = null; + if (mUploadFinishReceiver != null) { + getActivity().unregisterReceiver(mUploadFinishReceiver); + mUploadFinishReceiver = null; + } } @@ -312,7 +303,7 @@ public class FileDetailFragment extends SherlockFragment implements } leaveTransferProgress(); } - + @Override public View getView() { @@ -420,9 +411,9 @@ public class FileDetailFragment extends SherlockFragment implements private void startVideoActivity() { - Intent i = new Intent(getActivity(), VideoActivity.class); - i.putExtra(VideoActivity.EXTRA_FILE, mFile); - i.putExtra(VideoActivity.EXTRA_ACCOUNT, mAccount); + Intent i = new Intent(getActivity(), PreviewVideoActivity.class); + i.putExtra(PreviewVideoActivity.EXTRA_FILE, mFile); + i.putExtra(PreviewVideoActivity.EXTRA_ACCOUNT, mAccount); startActivity(i); } @@ -599,7 +590,7 @@ public class FileDetailFragment extends SherlockFragment implements mStorageManager = new FileDataStorageManager(ocAccount, getActivity().getApplicationContext().getContentResolver()); } mAccount = ocAccount; - updateFileDetails(false); + updateFileDetails(false, false); } @@ -613,12 +604,17 @@ public class FileDetailFragment extends SherlockFragment implements * @param transferring Flag signaling if the file should be considered as downloading or uploading, * although {@link FileDownloaderBinder#isDownloading(Account, OCFile)} and * {@link FileUploaderBinder#isUploading(Account, OCFile)} return false. - * + * + * @param refresh If 'true', try to refresh the hold file from the database */ - public void updateFileDetails(boolean transferring) { + public void updateFileDetails(boolean transferring, boolean refresh) { if (readyToShow()) { + if (refresh && mStorageManager != null) { + mFile = mStorageManager.getFileByPath(mFile.getRemotePath()); + } + // set file details setFilename(mFile.getFileName()); setFiletype(mFile.getMimetype()); @@ -819,29 +815,6 @@ public class FileDetailFragment extends SherlockFragment implements /** - * Once the file download has finished -> update view - * @author Bartek Przybylski - */ - private class DownloadFinishReceiver extends BroadcastReceiver { - @Override - public void onReceive(Context context, Intent intent) { - String accountName = intent.getStringExtra(FileDownloader.ACCOUNT_NAME); - - if (!isEmpty() && accountName.equals(mAccount.name)) { - boolean downloadWasFine = intent.getBooleanExtra(FileDownloader.EXTRA_DOWNLOAD_RESULT, false); - String downloadedRemotePath = intent.getStringExtra(FileDownloader.EXTRA_REMOTE_PATH); - if (mFile.getRemotePath().equals(downloadedRemotePath)) { - if (downloadWasFine) { - mFile = mStorageManager.getFileByPath(downloadedRemotePath); - } - updateFileDetails(false); // it updates the buttons; must be called although !downloadWasFine - } - } - } - } - - - /** * Once the file upload has finished -> update view * * Being notified about the finish of an upload is necessary for the next sequence: @@ -871,7 +844,7 @@ public class FileDetailFragment extends SherlockFragment implements msg.show(); } getSherlockActivity().removeStickyBroadcast(intent); // not the best place to do this; a small refactorization of BroadcastReceivers should be done - updateFileDetails(false); // it updates the buttons; must be called although !uploadWasFine; interrupted uploads still leave an incomplete file in the server + updateFileDetails(false, false); // it updates the buttons; must be called although !uploadWasFine; interrupted uploads still leave an incomplete file in the server } } }