|
@@ -23,6 +23,7 @@
|
|
|
package com.owncloud.android.ui.fragment;
|
|
|
|
|
|
import android.accounts.Account;
|
|
|
+import android.app.Activity;
|
|
|
import android.content.Context;
|
|
|
import android.graphics.Bitmap;
|
|
|
import android.os.Bundle;
|
|
@@ -40,6 +41,7 @@ import android.widget.ProgressBar;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
import com.google.android.material.tabs.TabLayout;
|
|
|
+import com.nextcloud.client.preferences.AppPreferences;
|
|
|
import com.owncloud.android.MainApp;
|
|
|
import com.owncloud.android.R;
|
|
|
import com.owncloud.android.datamodel.FileDataStorageManager;
|
|
@@ -103,7 +105,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
@BindView(R.id.size)
|
|
|
TextView fileSize;
|
|
|
|
|
|
- @BindView(R.id.modified)
|
|
|
+ @BindView(R.id.last_modification_timestamp)
|
|
|
TextView fileModifiedTimestamp;
|
|
|
|
|
|
@BindView(R.id.favorite)
|
|
@@ -139,6 +141,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
private ProgressListener progressListener;
|
|
|
private ToolbarActivity activity;
|
|
|
private int activeTab;
|
|
|
+ private AppPreferences preferences;
|
|
|
|
|
|
/**
|
|
|
* Public factory method to create new FileDetailFragment instances.
|
|
@@ -209,6 +212,12 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
return ((FileDetailTabAdapter) viewPager.getAdapter()).getFileDetailActivitiesFragment();
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void onAttach(Activity activity) {
|
|
|
+ super.onAttach(activity);
|
|
|
+ preferences = PreferenceManager.fromContext(activity);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public void onResume() {
|
|
|
super.onResume();
|
|
@@ -396,11 +405,11 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
}
|
|
|
|
|
|
private void prepareOptionsMenu(Menu menu) {
|
|
|
- if (mContainerActivity.getStorageManager() != null) {
|
|
|
+ if (containerActivity.getStorageManager() != null) {
|
|
|
FileMenuFilter mf = new FileMenuFilter(
|
|
|
getFile(),
|
|
|
- mContainerActivity.getStorageManager().getAccount(),
|
|
|
- mContainerActivity,
|
|
|
+ containerActivity.getStorageManager().getAccount(),
|
|
|
+ containerActivity,
|
|
|
getActivity(),
|
|
|
false
|
|
|
);
|
|
@@ -423,11 +432,11 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
private boolean optionsItemSelected(MenuItem item) {
|
|
|
switch (item.getItemId()) {
|
|
|
case R.id.action_send_file: {
|
|
|
- mContainerActivity.getFileOperationsHelper().sendShareFile(getFile(), true);
|
|
|
+ containerActivity.getFileOperationsHelper().sendShareFile(getFile(), true);
|
|
|
return true;
|
|
|
}
|
|
|
case R.id.action_open_file_with: {
|
|
|
- mContainerActivity.getFileOperationsHelper().openFile(getFile());
|
|
|
+ containerActivity.getFileOperationsHelper().openFile(getFile());
|
|
|
return true;
|
|
|
}
|
|
|
case R.id.action_remove_file: {
|
|
@@ -441,12 +450,12 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
return true;
|
|
|
}
|
|
|
case R.id.action_cancel_sync: {
|
|
|
- ((FileDisplayActivity)mContainerActivity).cancelTransference(getFile());
|
|
|
+ ((FileDisplayActivity) containerActivity).cancelTransference(getFile());
|
|
|
return true;
|
|
|
}
|
|
|
case R.id.action_download_file:
|
|
|
case R.id.action_sync_file: {
|
|
|
- mContainerActivity.getFileOperationsHelper().syncFile(getFile());
|
|
|
+ containerActivity.getFileOperationsHelper().syncFile(getFile());
|
|
|
return true;
|
|
|
}
|
|
|
case R.id.action_encrypted: {
|
|
@@ -466,14 +475,14 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
public void onClick(View v) {
|
|
|
switch (v.getId()) {
|
|
|
case R.id.cancelBtn: {
|
|
|
- ((FileDisplayActivity) mContainerActivity).cancelTransference(getFile());
|
|
|
+ ((FileDisplayActivity) containerActivity).cancelTransference(getFile());
|
|
|
break;
|
|
|
}
|
|
|
case R.id.favorite: {
|
|
|
if (getFile().isFavorite()) {
|
|
|
- mContainerActivity.getFileOperationsHelper().toggleFavoriteFile(getFile(), false);
|
|
|
+ containerActivity.getFileOperationsHelper().toggleFavoriteFile(getFile(), false);
|
|
|
} else {
|
|
|
- mContainerActivity.getFileOperationsHelper().toggleFavoriteFile(getFile(), true);
|
|
|
+ containerActivity.getFileOperationsHelper().toggleFavoriteFile(getFile(), true);
|
|
|
}
|
|
|
setFavoriteIconStatus(!getFile().isFavorite());
|
|
|
break;
|
|
@@ -482,10 +491,10 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
onOverflowIconClicked(v);
|
|
|
break;
|
|
|
}
|
|
|
- case R.id.modified: {
|
|
|
- boolean flag = !PreferenceManager.isShowDetailedTimestamp(getContext());
|
|
|
- PreferenceManager.setShowDetailedTimestamp(getContext(), flag);
|
|
|
- setFileModificationTimestamp(getFile(), flag);
|
|
|
+ case R.id.last_modification_timestamp: {
|
|
|
+ boolean showDetailedTimestamp = !preferences.isShowDetailedTimestampEnabled();
|
|
|
+ preferences.setShowDetailedTimestampEnabled(showDetailedTimestamp);
|
|
|
+ setFileModificationTimestamp(getFile(), showDetailedTimestamp);
|
|
|
}
|
|
|
default:
|
|
|
Log_OC.e(TAG, "Incorrect view clicked!");
|
|
@@ -525,7 +534,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
*/
|
|
|
public void updateFileDetails(boolean transferring, boolean refresh) {
|
|
|
if (readyToShow()) {
|
|
|
- FileDataStorageManager storageManager = mContainerActivity.getStorageManager();
|
|
|
+ FileDataStorageManager storageManager = containerActivity.getStorageManager();
|
|
|
|
|
|
if (storageManager == null) {
|
|
|
return;
|
|
@@ -544,15 +553,15 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
}
|
|
|
fileSize.setText(DisplayUtils.bytesToHumanReadable(file.getFileLength()));
|
|
|
|
|
|
- boolean showDetailedTimestamp = PreferenceManager.isShowDetailedTimestamp(getContext());
|
|
|
+ boolean showDetailedTimestamp = preferences.isShowDetailedTimestampEnabled();
|
|
|
setFileModificationTimestamp(file, showDetailedTimestamp);
|
|
|
|
|
|
setFilePreview(file);
|
|
|
setFavoriteIconStatus(file.isFavorite());
|
|
|
|
|
|
// configure UI for depending upon local state of the file
|
|
|
- FileDownloaderBinder downloaderBinder = mContainerActivity.getFileDownloaderBinder();
|
|
|
- FileUploaderBinder uploaderBinder = mContainerActivity.getFileUploaderBinder();
|
|
|
+ FileDownloaderBinder downloaderBinder = containerActivity.getFileDownloaderBinder();
|
|
|
+ FileUploaderBinder uploaderBinder = containerActivity.getFileUploaderBinder();
|
|
|
if (transferring
|
|
|
|| (downloaderBinder != null && downloaderBinder.isDownloading(account, file))
|
|
|
|| (uploaderBinder != null && uploaderBinder.isUploading(account, file))) {
|
|
@@ -629,12 +638,12 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
|
|
|
// generate new resized image
|
|
|
if (ThumbnailsCacheManager.cancelPotentialThumbnailWork(getFile(), activity.getPreviewImageView()) &&
|
|
|
- mContainerActivity.getStorageManager() != null) {
|
|
|
+ containerActivity.getStorageManager() != null) {
|
|
|
final ThumbnailsCacheManager.ResizedImageGenerationTask task =
|
|
|
new ThumbnailsCacheManager.ResizedImageGenerationTask(this,
|
|
|
activity.getPreviewImageView(),
|
|
|
- mContainerActivity.getStorageManager(),
|
|
|
- mContainerActivity.getStorageManager().getAccount());
|
|
|
+ containerActivity.getStorageManager(),
|
|
|
+ containerActivity.getStorageManager().getAccount());
|
|
|
|
|
|
if (resizedImage == null) {
|
|
|
resizedImage = thumbnail;
|
|
@@ -664,8 +673,8 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
// show the progress bar for the transfer
|
|
|
downloadProgressContainer.setVisibility(View.VISIBLE);
|
|
|
progressText.setVisibility(View.VISIBLE);
|
|
|
- FileDownloaderBinder downloaderBinder = mContainerActivity.getFileDownloaderBinder();
|
|
|
- FileUploaderBinder uploaderBinder = mContainerActivity.getFileUploaderBinder();
|
|
|
+ FileDownloaderBinder downloaderBinder = containerActivity.getFileDownloaderBinder();
|
|
|
+ FileUploaderBinder uploaderBinder = containerActivity.getFileUploaderBinder();
|
|
|
//if (getFile().isDownloading()) {
|
|
|
if (downloaderBinder != null && downloaderBinder.isDownloading(account, getFile())) {
|
|
|
progressText.setText(R.string.downloader_download_in_progress_ticker);
|
|
@@ -700,12 +709,12 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
|
|
|
public void listenForTransferProgress() {
|
|
|
if (progressListener != null) {
|
|
|
- if (mContainerActivity.getFileDownloaderBinder() != null) {
|
|
|
- mContainerActivity.getFileDownloaderBinder().
|
|
|
+ if (containerActivity.getFileDownloaderBinder() != null) {
|
|
|
+ containerActivity.getFileDownloaderBinder().
|
|
|
addDatatransferProgressListener(progressListener, account, getFile());
|
|
|
}
|
|
|
- if (mContainerActivity.getFileUploaderBinder() != null) {
|
|
|
- mContainerActivity.getFileUploaderBinder().
|
|
|
+ if (containerActivity.getFileUploaderBinder() != null) {
|
|
|
+ containerActivity.getFileUploaderBinder().
|
|
|
addDatatransferProgressListener(progressListener, account, getFile());
|
|
|
}
|
|
|
} else {
|
|
@@ -715,12 +724,12 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
|
|
|
|
|
|
private void leaveTransferProgress() {
|
|
|
if (progressListener != null) {
|
|
|
- if (mContainerActivity.getFileDownloaderBinder() != null) {
|
|
|
- mContainerActivity.getFileDownloaderBinder().
|
|
|
+ if (containerActivity.getFileDownloaderBinder() != null) {
|
|
|
+ containerActivity.getFileDownloaderBinder().
|
|
|
removeDatatransferProgressListener(progressListener, account, getFile());
|
|
|
}
|
|
|
- if (mContainerActivity.getFileUploaderBinder() != null) {
|
|
|
- mContainerActivity.getFileUploaderBinder().
|
|
|
+ if (containerActivity.getFileUploaderBinder() != null) {
|
|
|
+ containerActivity.getFileUploaderBinder().
|
|
|
removeDatatransferProgressListener(progressListener, account, getFile());
|
|
|
}
|
|
|
}
|