import com.actionbarsherlock.app.ActionBar.OnNavigationListener;
import com.actionbarsherlock.view.MenuItem;
import com.owncloud.android.R;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment;
import com.owncloud.android.ui.dialog.IndeterminateProgressDialog;
-import com.owncloud.android.ui.fragment.ConfirmationDialogFragment;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
import com.owncloud.android.ui.fragment.LocalFileListFragment;
-import com.owncloud.android.ui.fragment.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
import com.owncloud.android.utils.DisplayUtils;
import com.owncloud.android.utils.FileStorageUtils;
import com.owncloud.android.utils.Log_OC;
--- /dev/null
+/* ownCloud Android client application
+ * Copyright (C) 2012 Bartek Przybylski
+ * Copyright (C) 2012-2013 ownCloud Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+package com.owncloud.android.ui.dialog;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.DialogInterface;
+import android.os.Bundle;
+
+import com.actionbarsherlock.app.SherlockDialogFragment;
+import com.owncloud.android.utils.Log_OC;
+
+
+public class ConfirmationDialogFragment extends SherlockDialogFragment {
+
+ public final static String ARG_CONF_RESOURCE_ID = "resource_id";
+ public final static String ARG_CONF_ARGUMENTS = "string_array";
+
+ public final static String ARG_POSITIVE_BTN_RES = "positive_btn_res";
+ public final static String ARG_NEUTRAL_BTN_RES = "neutral_btn_res";
+ public final static String ARG_NEGATIVE_BTN_RES = "negative_btn_res";
+
+ public static final String FTAG_CONFIRMATION = "CONFIRMATION_FRAGMENT";
+
+ private ConfirmationDialogFragmentListener mListener;
+
+ /**
+ * Public factory method to create new ConfirmationDialogFragment instances.
+ *
+ * @param string_id Resource id for a message to show in the dialog.
+ * @param arguments Arguments to complete the message, if it's a format string.
+ * @param posBtn Resource id for the text of the positive button.
+ * @param neuBtn Resource id for the text of the neutral button.
+ * @param negBtn Resource id for the text of the negative button.
+ * @return Dialog ready to show.
+ */
+ public static ConfirmationDialogFragment newInstance(int string_id, String[] arguments, int posBtn, int neuBtn, int negBtn) {
+ ConfirmationDialogFragment frag = new ConfirmationDialogFragment();
+ Bundle args = new Bundle();
+ args.putInt(ARG_CONF_RESOURCE_ID, string_id);
+ args.putStringArray(ARG_CONF_ARGUMENTS, arguments);
+ args.putInt(ARG_POSITIVE_BTN_RES, posBtn);
+ args.putInt(ARG_NEUTRAL_BTN_RES, neuBtn);
+ args.putInt(ARG_NEGATIVE_BTN_RES, negBtn);
+ frag.setArguments(args);
+ return frag;
+ }
+
+ public void setOnConfirmationListener(ConfirmationDialogFragmentListener listener) {
+ mListener = listener;
+ }
+
+ @Override
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ Object[] confirmationTarget = getArguments().getStringArray(ARG_CONF_ARGUMENTS);
+ int resourceId = getArguments().getInt(ARG_CONF_RESOURCE_ID, -1);
+ int posBtn = getArguments().getInt(ARG_POSITIVE_BTN_RES, -1);
+ int neuBtn = getArguments().getInt(ARG_NEUTRAL_BTN_RES, -1);
+ int negBtn = getArguments().getInt(ARG_NEGATIVE_BTN_RES, -1);
+
+ if (confirmationTarget == null || resourceId == -1) {
+ Log_OC.wtf(getTag(), "Calling confirmation dialog without resource or arguments");
+ return null;
+ }
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(getActivity())
+ .setIcon(android.R.drawable.ic_dialog_alert)
+ .setMessage(String.format(getString(resourceId), confirmationTarget))
+ .setTitle(android.R.string.dialog_alert_title);
+ if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
+ builder.setIconAttribute(android.R.attr.alertDialogIcon);
+ }
+
+ if (posBtn != -1)
+ builder.setPositiveButton(posBtn,
+ new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int whichButton) {
+ mListener.onConfirmation(getTag());
+ dialog.dismiss();
+ }
+ });
+ if (neuBtn != -1)
+ builder.setNeutralButton(neuBtn,
+ new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int whichButton) {
+ mListener.onNeutral(getTag());
+ dialog.dismiss();
+ }
+ });
+ if (negBtn != -1)
+ builder.setNegativeButton(negBtn,
+ new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ mListener.onCancel(getTag());
+ dialog.dismiss();
+ }
+ });
+ return builder.create();
+ }
+
+
+ public interface ConfirmationDialogFragmentListener {
+ public void onConfirmation(String callerTag);
+ public void onNeutral(String callerTag);
+ public void onCancel(String callerTag);
+ }
+
+}
+
+++ /dev/null
-/* ownCloud Android client application
- * Copyright (C) 2012 Bartek Przybylski
- * Copyright (C) 2012-2013 ownCloud Inc.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2,
- * as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-package com.owncloud.android.ui.fragment;
-
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.content.DialogInterface;
-import android.os.Bundle;
-
-import com.actionbarsherlock.app.SherlockDialogFragment;
-import com.owncloud.android.utils.Log_OC;
-
-
-public class ConfirmationDialogFragment extends SherlockDialogFragment {
-
- public final static String ARG_CONF_RESOURCE_ID = "resource_id";
- public final static String ARG_CONF_ARGUMENTS = "string_array";
-
- public final static String ARG_POSITIVE_BTN_RES = "positive_btn_res";
- public final static String ARG_NEUTRAL_BTN_RES = "neutral_btn_res";
- public final static String ARG_NEGATIVE_BTN_RES = "negative_btn_res";
-
- public static final String FTAG_CONFIRMATION = "CONFIRMATION_FRAGMENT";
-
- private ConfirmationDialogFragmentListener mListener;
-
- /**
- * Public factory method to create new ConfirmationDialogFragment instances.
- *
- * @param string_id Resource id for a message to show in the dialog.
- * @param arguments Arguments to complete the message, if it's a format string.
- * @param posBtn Resource id for the text of the positive button.
- * @param neuBtn Resource id for the text of the neutral button.
- * @param negBtn Resource id for the text of the negative button.
- * @return Dialog ready to show.
- */
- public static ConfirmationDialogFragment newInstance(int string_id, String[] arguments, int posBtn, int neuBtn, int negBtn) {
- ConfirmationDialogFragment frag = new ConfirmationDialogFragment();
- Bundle args = new Bundle();
- args.putInt(ARG_CONF_RESOURCE_ID, string_id);
- args.putStringArray(ARG_CONF_ARGUMENTS, arguments);
- args.putInt(ARG_POSITIVE_BTN_RES, posBtn);
- args.putInt(ARG_NEUTRAL_BTN_RES, neuBtn);
- args.putInt(ARG_NEGATIVE_BTN_RES, negBtn);
- frag.setArguments(args);
- return frag;
- }
-
- public void setOnConfirmationListener(ConfirmationDialogFragmentListener listener) {
- mListener = listener;
- }
-
- @Override
- public Dialog onCreateDialog(Bundle savedInstanceState) {
- Object[] confirmationTarget = getArguments().getStringArray(ARG_CONF_ARGUMENTS);
- int resourceId = getArguments().getInt(ARG_CONF_RESOURCE_ID, -1);
- int posBtn = getArguments().getInt(ARG_POSITIVE_BTN_RES, -1);
- int neuBtn = getArguments().getInt(ARG_NEUTRAL_BTN_RES, -1);
- int negBtn = getArguments().getInt(ARG_NEGATIVE_BTN_RES, -1);
-
- if (confirmationTarget == null || resourceId == -1) {
- Log_OC.wtf(getTag(), "Calling confirmation dialog without resource or arguments");
- return null;
- }
-
- AlertDialog.Builder builder = new AlertDialog.Builder(getActivity())
- .setIcon(android.R.drawable.ic_dialog_alert)
- .setMessage(String.format(getString(resourceId), confirmationTarget))
- .setTitle(android.R.string.dialog_alert_title);
- if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
- builder.setIconAttribute(android.R.attr.alertDialogIcon);
- }
-
- if (posBtn != -1)
- builder.setPositiveButton(posBtn,
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int whichButton) {
- mListener.onConfirmation(getTag());
- dialog.dismiss();
- }
- });
- if (neuBtn != -1)
- builder.setNeutralButton(neuBtn,
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int whichButton) {
- mListener.onNeutral(getTag());
- dialog.dismiss();
- }
- });
- if (negBtn != -1)
- builder.setNegativeButton(negBtn,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- mListener.onCancel(getTag());
- dialog.dismiss();
- }
- });
- return builder.create();
- }
-
-
- public interface ConfirmationDialogFragmentListener {
- public void onConfirmation(String callerTag);
- public void onNeutral(String callerTag);
- public void onCancel(String callerTag);
- }
-
-}
-
import com.owncloud.android.ui.activity.ConflictsResolveActivity;
import com.owncloud.android.ui.activity.FileActivity;
import com.owncloud.android.ui.activity.FileDisplayActivity;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment;
import com.owncloud.android.ui.dialog.EditNameDialog;
import com.owncloud.android.ui.dialog.EditNameDialog.EditNameDialogListener;
import com.owncloud.android.ui.preview.PreviewImageFragment;
private int mLayout;
private View mView;
private Account mAccount;
- private FileDataStorageManager mStorageManager;
private UploadFinishReceiver mUploadFinishReceiver;
public ProgressListener mProgressListener;
public FileDetailFragment() {
super();
mAccount = null;
- mStorageManager = null;
mLayout = R.layout.file_details_empty;
mProgressListener = null;
}
public FileDetailFragment(OCFile fileToDetail, Account ocAccount) {
super(fileToDetail);
mAccount = ocAccount;
- mStorageManager = null; // we need a context to init this; the container activity is not available yet at this moment
mLayout = R.layout.file_details_empty;
mProgressListener = null;
}
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (mAccount != null) {
- mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver());
- OCFile file = mStorageManager.getFileByPath(getFile().getRemotePath());
+ OCFile file = ((FileActivity)getActivity()).getStorageManager().
+ getFileByPath(getFile().getRemotePath());
if (file != null) {
setFile(file);
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_share_file: {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().shareFileWithLink(getFile(), activity);
return true;
}
case R.id.action_unshare_file: {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().unshareFileWithLink(getFile(), activity);
return true;
}
case R.id.action_open_file_with: {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().openFile(getFile(), activity);
return true;
}
CheckBox cb = (CheckBox) getView().findViewById(R.id.fdKeepInSync);
OCFile file = getFile();
file.setKeepInSync(cb.isChecked());
- mStorageManager.saveFile(file);
+ ((FileActivity)getActivity()).getStorageManager().saveFile(file);
/// register the OCFile instance in the observer service to monitor local updates;
/// if necessary, the file is download
}
} else {
- mLastRemoteOperation = new SynchronizeFileOperation(file, null, mStorageManager, mAccount, true, getActivity());
+ mLastRemoteOperation = new SynchronizeFileOperation(
+ file,
+ null,
+ ((FileActivity)getActivity()).getStorageManager(),
+ mAccount,
+ true,
+ getActivity());
mLastRemoteOperation.execute(mAccount, getSherlockActivity(), this, mHandler, getSherlockActivity());
// update ui
- ((FileDisplayActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getActivity()).showLoadingDialog();
}
}
public void onConfirmation(String callerTag) {
OCFile file = getFile();
if (callerTag.equals(FTAG_CONFIRMATION)) {
- if (mStorageManager.getFileById(file.getFileId()) != null) {
+ FileDataStorageManager storageManager =
+ ((FileActivity)getActivity()).getStorageManager();
+ if (storageManager.getFileById(file.getFileId()) != null) {
mLastRemoteOperation = new RemoveFileOperation( file,
true,
- mStorageManager);
+ storageManager);
mLastRemoteOperation.execute(mAccount, getSherlockActivity(), this, mHandler, getSherlockActivity());
- ((FileDisplayActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getActivity()).showLoadingDialog();
}
}
}
@Override
public void onNeutral(String callerTag) {
OCFile file = getFile();
- mStorageManager.removeFile(file, false, true); // TODO perform in background task / new thread
+ ((FileActivity)getActivity()).getStorageManager().removeFile(file, false, true); // TODO perform in background task / new thread
if (file.getStoragePath() != null) {
file.setStoragePath(null);
updateFileDetails(file, mAccount);
*/
public void updateFileDetails(OCFile file, Account ocAccount) {
setFile(file);
+ FileDataStorageManager storageManager = ((FileActivity)getActivity()).getStorageManager();
if (ocAccount != null && (
- mStorageManager == null ||
+ storageManager == null ||
(mAccount != null && !mAccount.equals(ocAccount))
)) {
- mStorageManager = new FileDataStorageManager(ocAccount, getActivity().getApplicationContext().getContentResolver());
+ storageManager = new FileDataStorageManager(ocAccount, getActivity().getApplicationContext().getContentResolver());
}
mAccount = ocAccount;
updateFileDetails(false, false);
public void updateFileDetails(boolean transferring, boolean refresh) {
if (readyToShow()) {
-
- if (refresh && mStorageManager != null) {
- setFile(mStorageManager.getFileByPath(getFile().getRemotePath()));
+ FileDataStorageManager storageManager =
+ ((FileActivity)getActivity()).getStorageManager();
+ if (refresh && storageManager != null) {
+ setFile(storageManager.getFileByPath(getFile().getRemotePath()));
}
OCFile file = getFile();
if (getFile().getRemotePath().equals(uploadRemotePath) ||
renamedInUpload) {
if (uploadWasFine) {
- setFile(mStorageManager.getFileByPath(uploadRemotePath));
+ setFile(((FileActivity)getActivity()).getStorageManager().getFileByPath(uploadRemotePath));
}
if (renamedInUpload) {
String newName = (new File(uploadRemotePath)).getName();
newFilename,
new FileDataStorageManager(mAccount, getActivity().getContentResolver()));
mLastRemoteOperation.execute(mAccount, getSherlockActivity(), this, mHandler, getSherlockActivity());
- ((FileDisplayActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getActivity()).showLoadingDialog();
}
}
private void onRemoveFileOperationFinish(RemoveFileOperation operation, RemoteOperationResult result) {
- ((FileDisplayActivity) getActivity()).dismissLoadingDialog();
+ ((FileActivity) getActivity()).dismissLoadingDialog();
if (result.isSuccess()) {
Toast msg = Toast.makeText(getActivity().getApplicationContext(), R.string.remove_success_msg, Toast.LENGTH_LONG);
msg.show();
}
private void onRenameFileOperationFinish(RenameFileOperation operation, RemoteOperationResult result) {
- ((FileDisplayActivity) getActivity()).dismissLoadingDialog();
+ ((FileActivity) getActivity()).dismissLoadingDialog();
if (result.isSuccess()) {
updateFileDetails(((RenameFileOperation)operation).getFile(), mAccount);
}
private void onSynchronizeFileOperationFinish(SynchronizeFileOperation operation, RemoteOperationResult result) {
- ((FileDisplayActivity) getActivity()).dismissLoadingDialog();
+ ((FileActivity) getActivity()).dismissLoadingDialog();
OCFile file = getFile();
if (!result.isSuccess()) {
if (result.getCode() == ResultCode.SYNC_CONFLICT) {
import com.owncloud.android.operations.RemoveFileOperation;
import com.owncloud.android.operations.RenameFileOperation;
import com.owncloud.android.operations.SynchronizeFileOperation;
-import com.owncloud.android.ui.activity.FileDisplayActivity;
+import com.owncloud.android.ui.activity.FileActivity;
import com.owncloud.android.ui.activity.TransferServiceGetter;
import com.owncloud.android.ui.adapter.FileListListAdapter;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment;
import com.owncloud.android.ui.dialog.EditNameDialog;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
import com.owncloud.android.ui.dialog.EditNameDialog.EditNameDialogListener;
-import com.owncloud.android.ui.fragment.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
import com.owncloud.android.ui.preview.PreviewImageFragment;
import com.owncloud.android.ui.preview.PreviewMediaFragment;
import com.owncloud.android.utils.Log_OC;
super.onActivityCreated(savedInstanceState);
Log_OC.e(TAG, "onActivityCreated() start");
- mAdapter = new FileListListAdapter(getActivity(), mContainerActivity);
+ mAdapter = new FileListListAdapter(getSherlockActivity(), mContainerActivity);
if (savedInstanceState != null) {
mFile = savedInstanceState.getParcelable(EXTRA_FILE);
int moveCount = 0;
if(mFile != null){
- FileDataStorageManager storageManager = mContainerActivity.getStorageManager();
+ FileDataStorageManager storageManager =
+ ((FileActivity)getSherlockActivity()).getStorageManager();
String parentPath = null;
if (mFile.getParentId() != FileDataStorageManager.ROOT_PARENT_ID) {
@Override
public void onItemClick(AdapterView<?> l, View v, int position, long id) {
- OCFile file = mContainerActivity.getStorageManager().createFileInstance(
+ OCFile file = ((FileActivity)getSherlockActivity()).getStorageManager().createFileInstance(
(Cursor) mAdapter.getItem(position));
if (file != null) {
if (file.isFolder()) {
// media preview
mContainerActivity.startMediaPreview(file, 0, true);
} else {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().openFile(file, activity);
}
@Override
public void onCreateContextMenu (ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
- MenuInflater inflater = getActivity().getMenuInflater();
+ MenuInflater inflater = getSherlockActivity().getMenuInflater();
inflater.inflate(R.menu.file_actions_menu, menu);
AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
- OCFile targetFile = mContainerActivity.getStorageManager().createFileInstance(
+ OCFile targetFile = ((FileActivity)getSherlockActivity()).getStorageManager().createFileInstance(
(Cursor) mAdapter.getItem(info.position));
List<Integer> toHide = new ArrayList<Integer>();
List<Integer> toDisable = new ArrayList<Integer>();
toHide.add(R.id.action_sync_file);
toHide.add(R.id.action_see_details);
toHide.add(R.id.action_send_file);
- if ( mContainerActivity.getFileDownloaderBinder().isDownloading(AccountUtils.getCurrentOwnCloudAccount(getActivity()), targetFile) ||
- mContainerActivity.getFileUploaderBinder().isUploading(AccountUtils.getCurrentOwnCloudAccount(getActivity()), targetFile) ) {
+ if ( mContainerActivity.getFileDownloaderBinder().isDownloading(AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()), targetFile) ||
+ mContainerActivity.getFileUploaderBinder().isUploading(AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()), targetFile) ) {
toDisable.add(R.id.action_rename_file);
toDisable.add(R.id.action_remove_file);
} else {
toHide.add(R.id.action_sync_file);
}
- if ( mContainerActivity.getFileDownloaderBinder().isDownloading(AccountUtils.getCurrentOwnCloudAccount(getActivity()), targetFile)) {
+ if ( mContainerActivity.getFileDownloaderBinder().isDownloading(AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()), targetFile)) {
toHide.add(R.id.action_cancel_upload);
toDisable.add(R.id.action_rename_file);
toDisable.add(R.id.action_remove_file);
- } else if ( mContainerActivity.getFileUploaderBinder().isUploading(AccountUtils.getCurrentOwnCloudAccount(getActivity()), targetFile)) {
+ } else if ( mContainerActivity.getFileUploaderBinder().isUploading(AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()), targetFile)) {
toHide.add(R.id.action_cancel_download);
toDisable.add(R.id.action_rename_file);
toDisable.add(R.id.action_remove_file);
@Override
public boolean onContextItemSelected (MenuItem item) {
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
- mTargetFile = mContainerActivity.getStorageManager().createFileInstance(
+ mTargetFile = ((FileActivity)getSherlockActivity()).getStorageManager().createFileInstance(
(Cursor) mAdapter.getItem(info.position));
switch (item.getItemId()) {
case R.id.action_share_file: {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().shareFileWithLink(mTargetFile, activity);
return true;
}
case R.id.action_unshare_file: {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().unshareFileWithLink(mTargetFile, activity);
return true;
}
}
case R.id.action_sync_file: {
Account account = AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity());
- RemoteOperation operation = new SynchronizeFileOperation(mTargetFile, null, mContainerActivity.getStorageManager(), account, true, getSherlockActivity());
+ RemoteOperation operation = new SynchronizeFileOperation(
+ mTargetFile,
+ null,
+ ((FileActivity)getSherlockActivity()).getStorageManager(),
+ account,
+ true,
+ getSherlockActivity());
operation.execute(account, getSherlockActivity(), mContainerActivity, mHandler, getSherlockActivity());
- ((FileDisplayActivity) getSherlockActivity()).showLoadingDialog();
+ ((FileActivity) getSherlockActivity()).showLoadingDialog();
return true;
}
case R.id.action_cancel_download: {
FileDownloaderBinder downloaderBinder = mContainerActivity.getFileDownloaderBinder();
- Account account = AccountUtils.getCurrentOwnCloudAccount(getActivity());
+ Account account = AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity());
if (downloaderBinder != null && downloaderBinder.isDownloading(account, mTargetFile)) {
downloaderBinder.cancel(account, mTargetFile);
listDirectory();
}
case R.id.action_cancel_upload: {
FileUploaderBinder uploaderBinder = mContainerActivity.getFileUploaderBinder();
- Account account = AccountUtils.getCurrentOwnCloudAccount(getActivity());
+ Account account = AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity());
if (uploaderBinder != null && uploaderBinder.isUploading(account, mTargetFile)) {
uploaderBinder.cancel(account, mTargetFile);
listDirectory();
return true;
}
case R.id.action_see_details: {
- ((FileFragment.ContainerActivity)getActivity()).showDetails(mTargetFile);
+ ((FileFragment.ContainerActivity)getSherlockActivity()).showDetails(mTargetFile);
return true;
}
case R.id.action_send_file: {
} else {
- FileDisplayActivity activity = (FileDisplayActivity) getSherlockActivity();
+ FileActivity activity = (FileActivity) getSherlockActivity();
activity.getFileOperationsHelper().sendDownloadedFile(mTargetFile, activity);
}
return true;
* @param directory File to be listed
*/
public void listDirectory(OCFile directory) {
- FileDataStorageManager storageManager = mContainerActivity.getStorageManager();
+ FileDataStorageManager storageManager = ((FileActivity)getSherlockActivity()).getStorageManager();
if (storageManager != null) {
// Check input parameters for null
public void startSyncFolderOperation(OCFile folder);
/**
- * Getter for the current DataStorageManager in the container activity
- */
- public FileDataStorageManager getStorageManager();
-
-
- /**
* Callback method invoked when a the 'transfer state' of a file changes.
*
* This happens when a download or upload is started or ended for a file.
*/
public void onTransferStateChanged(OCFile file, boolean downloading, boolean uploading);
- void startDownloadForSending(OCFile file);
+ public void startDownloadForSending(OCFile file);
}
if (dialog.getResult()) {
String newFilename = dialog.getNewFilename();
Log_OC.d(TAG, "name edit dialog dismissed with new name " + newFilename);
- RemoteOperation operation = new RenameFileOperation(mTargetFile,
- AccountUtils.getCurrentOwnCloudAccount(getActivity()),
- newFilename,
- mContainerActivity.getStorageManager());
+ RemoteOperation operation =
+ new RenameFileOperation(
+ mTargetFile,
+ AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()),
+ newFilename,
+ ((FileActivity)getSherlockActivity()).getStorageManager());
operation.execute(AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()), getSherlockActivity(), mContainerActivity, mHandler, getSherlockActivity());
- ((FileDisplayActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getSherlockActivity()).showLoadingDialog();
}
}
@Override
public void onConfirmation(String callerTag) {
if (callerTag.equals(FileDetailFragment.FTAG_CONFIRMATION)) {
- if (mContainerActivity.getStorageManager().getFileById(mTargetFile.getFileId()) != null) {
+ FileDataStorageManager storageManager =
+ ((FileActivity)getSherlockActivity()).getStorageManager();
+ if (storageManager.getFileById(mTargetFile.getFileId()) != null) {
RemoteOperation operation = new RemoveFileOperation( mTargetFile,
true,
- mContainerActivity.getStorageManager());
+ storageManager);
operation.execute(AccountUtils.getCurrentOwnCloudAccount(getSherlockActivity()), getSherlockActivity(), mContainerActivity, mHandler, getSherlockActivity());
- ((FileDisplayActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getSherlockActivity()).showLoadingDialog();
}
}
}
@Override
public void onNeutral(String callerTag) {
- mContainerActivity.getStorageManager().removeFile(mTargetFile, false, true); // TODO perform in background task / new thread
+ ((FileActivity)getSherlockActivity()).getStorageManager().removeFile(mTargetFile, false, true); // TODO perform in background task / new thread
listDirectory();
mContainerActivity.onTransferStateChanged(mTargetFile, false, false);
}
}
- /**
- * {@inheritDoc}
- */
- @Override
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
- if (mAccount != null) {
- //mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver());;
- }
- }
-
-
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
import android.os.Bundle;
import android.os.IBinder;
import android.preference.PreferenceManager;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;
import android.view.MotionEvent;
import android.view.View;
import com.owncloud.android.ui.activity.FileActivity;
import com.owncloud.android.ui.activity.FileDisplayActivity;
import com.owncloud.android.ui.activity.PinCodeActivity;
-import com.owncloud.android.ui.dialog.LoadingDialog;
import com.owncloud.android.ui.fragment.FileFragment;
import com.owncloud.android.utils.DisplayUtils;
import com.owncloud.android.utils.Log_OC;
public static final String KEY_WAITING_TO_PREVIEW = "WAITING_TO_PREVIEW";
private static final String KEY_WAITING_FOR_BINDER = "WAITING_FOR_BINDER";
- private static final String DIALOG_WAIT_TAG = "DIALOG_WAIT";
-
private ViewPager mViewPager;
private PreviewImagePagerAdapter mPreviewImagePagerAdapter;
}
/**
- * Show loading dialog
- */
- public void showLoadingDialog() {
- // Construct dialog
- LoadingDialog loading = new LoadingDialog(getResources().getString(R.string.wait_a_moment));
- FragmentManager fm = getSupportFragmentManager();
- FragmentTransaction ft = fm.beginTransaction();
- loading.show(ft, DIALOG_WAIT_TAG);
-
- }
-
- /**
- * Dismiss loading dialog
- */
- public void dismissLoadingDialog(){
- Fragment frag = getSupportFragmentManager().findFragmentByTag(DIALOG_WAIT_TAG);
- if (frag != null) {
- LoadingDialog loading = (LoadingDialog) frag;
- loading.dismiss();
- }
- }
-
- /**
* {@inheritDoc}
*/
@Override
import com.owncloud.android.lib.common.operations.RemoteOperationResult;
import com.owncloud.android.operations.RemoveFileOperation;
import com.owncloud.android.ui.activity.FileActivity;
-import com.owncloud.android.ui.fragment.ConfirmationDialogFragment;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment;
import com.owncloud.android.ui.fragment.FileFragment;
import com.owncloud.android.utils.Log_OC;
private View mView;
private Account mAccount;
- private FileDataStorageManager mStorageManager;
private ImageView mImageView;
private TextView mMessageView;
private ProgressBar mProgressWheel;
public PreviewImageFragment(OCFile fileToDetail, Account ocAccount, boolean ignoreFirstSavedState) {
super(fileToDetail);
mAccount = ocAccount;
- mStorageManager = null; // we need a context to init this; the container activity is not available yet at this moment
mIgnoreFirstSavedState = ignoreFirstSavedState;
}
public PreviewImageFragment() {
super();
mAccount = null;
- mStorageManager = null;
mIgnoreFirstSavedState = false;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
- mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver());
if (savedInstanceState != null) {
if (!mIgnoreFirstSavedState) {
OCFile file = (OCFile)savedInstanceState.getParcelable(PreviewImageFragment.EXTRA_FILE);
// Update the file
if (mAccount!= null) {
- mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver());
- OCFile updatedFile = mStorageManager.getFileByPath(file.getRemotePath());
+ OCFile updatedFile = ((FileActivity)getSherlockActivity()).
+ getStorageManager().getFileByPath(file.getRemotePath());
if (updatedFile != null) {
setFile(updatedFile);
} else {
*/
@Override
public void onConfirmation(String callerTag) {
- if (mStorageManager.getFileById(getFile().getFileId()) != null) { // check that the file is still there;
+ FileDataStorageManager storageManager =
+ ((FileActivity)getSherlockActivity()).getStorageManager();
+ if (storageManager.getFileById(getFile().getFileId()) != null) { // check that the file is still there;
mLastRemoteOperation = new RemoveFileOperation( getFile(), // TODO we need to review the interface with RemoteOperations, and use OCFile IDs instead of OCFile objects as parameters
true,
- mStorageManager);
+ storageManager);
mLastRemoteOperation.execute(mAccount, getSherlockActivity(), this, mHandler, getSherlockActivity());
- ((PreviewImageActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getActivity()).showLoadingDialog();
}
}
@Override
public void onNeutral(String callerTag) {
OCFile file = getFile();
- mStorageManager.removeFile(file, false, true); // TODO perform in background task / new thread
+ ((FileActivity)getSherlockActivity()).getStorageManager().removeFile(file, false, true); // TODO perform in background task / new thread
finish();
}
}
private void onRemoveFileOperationFinish(RemoveFileOperation operation, RemoteOperationResult result) {
- ((PreviewImageActivity) getActivity()).dismissLoadingDialog();
+ ((FileActivity) getActivity()).dismissLoadingDialog();
if (result.isSuccess()) {
Toast msg = Toast.makeText(getActivity().getApplicationContext(), R.string.remove_success_msg, Toast.LENGTH_LONG);
import com.owncloud.android.lib.common.operations.RemoteOperationResult;
import com.owncloud.android.operations.RemoveFileOperation;
import com.owncloud.android.ui.activity.FileActivity;
-import com.owncloud.android.ui.activity.FileDisplayActivity;
-import com.owncloud.android.ui.fragment.ConfirmationDialogFragment;
+import com.owncloud.android.ui.dialog.ConfirmationDialogFragment;
import com.owncloud.android.ui.fragment.FileFragment;
import com.owncloud.android.utils.Log_OC;
private View mView;
private Account mAccount;
- private FileDataStorageManager mStorageManager;
private ImageView mImagePreview;
private VideoView mVideoPreview;
private int mSavedPlaybackPosition;
super(fileToDetail);
mAccount = ocAccount;
mSavedPlaybackPosition = startPlaybackPosition;
- mStorageManager = null; // we need a context to init this; the container activity is not available yet at this moment
mAutoplay = autoplay;
}
super();
mAccount = null;
mSavedPlaybackPosition = 0;
- mStorageManager = null;
mAutoplay = true;
}
super.onActivityCreated(savedInstanceState);
Log_OC.e(TAG, "onActivityCreated");
- mStorageManager = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver());
if (savedInstanceState != null) {
setFile((OCFile)savedInstanceState.getParcelable(PreviewMediaFragment.EXTRA_FILE));
mAccount = savedInstanceState.getParcelable(PreviewMediaFragment.EXTRA_ACCOUNT);
private void unshareFileWithLink() {
stopPreview(false);
- FileActivity activity = (FileActivity)((FileFragment.ContainerActivity)getActivity());
+ FileActivity activity = (FileActivity)getSherlockActivity();
activity.getFileOperationsHelper().unshareFileWithLink(getFile(), activity);
}
private void shareFileWithLink() {
stopPreview(false);
- FileActivity activity = (FileActivity)((FileFragment.ContainerActivity)getActivity());
+ FileActivity activity = (FileActivity)getSherlockActivity();
activity.getFileOperationsHelper().shareFileWithLink(getFile(), activity);
}
private void sendFile() {
stopPreview(false);
- FileActivity activity = (FileActivity)((FileFragment.ContainerActivity)getActivity());
+ FileActivity activity = (FileActivity)getSherlockActivity();
activity.getFileOperationsHelper().sendDownloadedFile(getFile(), activity);
}
private void seeDetails() {
stopPreview(false);
- ((FileFragment.ContainerActivity)getActivity()).showDetails(getFile());
+ ((FileFragment.ContainerActivity)getSherlockActivity()).showDetails(getFile());
}
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
if (mVideoPreview.getWindowToken() != null) {
- String message = MediaService.getMessageForMediaError(getActivity(), what, extra);
- new AlertDialog.Builder(getActivity())
+ String message = MediaService.getMessageForMediaError(getSherlockActivity(), what, extra);
+ new AlertDialog.Builder(getSherlockActivity())
.setMessage(message)
.setPositiveButton(android.R.string.VideoView_error_button,
new DialogInterface.OnClickListener() {
if (mMediaServiceBinder != null && mMediaController != null) {
mMediaServiceBinder.unregisterMediaController(mMediaController);
}
- getActivity().unbindService(mMediaServiceConnection);
+ getSherlockActivity().unbindService(mMediaServiceConnection);
mMediaServiceConnection = null;
mMediaServiceBinder = null;
}
private void startFullScreenVideo() {
- Intent i = new Intent(getActivity(), PreviewVideoActivity.class);
+ Intent i = new Intent(getSherlockActivity(), PreviewVideoActivity.class);
i.putExtra(FileActivity.EXTRA_ACCOUNT, mAccount);
i.putExtra(FileActivity.EXTRA_FILE, getFile());
i.putExtra(PreviewVideoActivity.EXTRA_AUTOPLAY, mVideoPreview.isPlaying());
if (mMediaServiceConnection == null) {
mMediaServiceConnection = new MediaServiceConnection();
}
- getActivity().bindService( new Intent(getActivity(),
+ getSherlockActivity().bindService( new Intent(getSherlockActivity(),
MediaService.class),
mMediaServiceConnection,
Context.BIND_AUTO_CREATE);
@Override
public void onServiceConnected(ComponentName component, IBinder service) {
- if (getActivity() != null) {
- if (component.equals(new ComponentName(getActivity(), MediaService.class))) {
+ if (getSherlockActivity() != null) {
+ if (component.equals(new ComponentName(getSherlockActivity(), MediaService.class))) {
Log_OC.d(TAG, "Media service connected");
mMediaServiceBinder = (MediaServiceBinder) service;
if (mMediaServiceBinder != null) {
@Override
public void onServiceDisconnected(ComponentName component) {
- if (component.equals(new ComponentName(getActivity(), MediaService.class))) {
+ if (component.equals(new ComponentName(getSherlockActivity(), MediaService.class))) {
Log_OC.e(TAG, "Media service suddenly disconnected");
if (mMediaController != null) {
mMediaController.setMediaPlayer(null);
} else {
- Toast.makeText(getActivity(), "No media controller to release when disconnected from media service", Toast.LENGTH_SHORT).show();
+ Toast.makeText(getSherlockActivity(), "No media controller to release when disconnected from media service", Toast.LENGTH_SHORT).show();
}
mMediaServiceBinder = null;
mMediaServiceConnection = null;
} finally {
if (toastIt) {
- Toast.makeText(getActivity(), "There is no application to handle file " + file.getFileName(), Toast.LENGTH_SHORT).show();
+ Toast.makeText(getSherlockActivity(), "There is no application to handle file " + file.getFileName(), Toast.LENGTH_SHORT).show();
}
}
@Override
public void onConfirmation(String callerTag) {
OCFile file = getFile();
- if (mStorageManager.getFileById(file.getFileId()) != null) { // check that the file is still there;
+ FileDataStorageManager storageManager =
+ ((FileActivity)getSherlockActivity()).getStorageManager();
+ if (storageManager.getFileById(file.getFileId()) != null) { // check that the file is still there;
stopPreview(true);
mLastRemoteOperation = new RemoveFileOperation( file, // TODO we need to review the interface with RemoteOperations, and use OCFile IDs instead of OCFile objects as parameters
true,
- mStorageManager);
+ storageManager);
mLastRemoteOperation.execute(mAccount, getSherlockActivity(), this, mHandler, getSherlockActivity());
- ((FileDisplayActivity) getActivity()).showLoadingDialog();
+ ((FileActivity) getSherlockActivity()).showLoadingDialog();
}
}
public void onNeutral(String callerTag) {
OCFile file = getFile();
stopPreview(true);
- mStorageManager.removeFile(file, false, true); // TODO perform in background task / new thread
+ ((FileActivity)getSherlockActivity()).getStorageManager().removeFile(file, false, true); // TODO perform in background task / new thread
finish();
}
}
private void onRemoveFileOperationFinish(RemoveFileOperation operation, RemoteOperationResult result) {
- ((FileDisplayActivity) getActivity()).dismissLoadingDialog();
+ ((FileActivity) getSherlockActivity()).dismissLoadingDialog();
if (result.isSuccess()) {
- Toast msg = Toast.makeText(getActivity().getApplicationContext(), R.string.remove_success_msg, Toast.LENGTH_LONG);
+ Toast msg = Toast.makeText(getSherlockActivity().getApplicationContext(), R.string.remove_success_msg, Toast.LENGTH_LONG);
msg.show();
finish();
} else {
- Toast msg = Toast.makeText(getActivity(), R.string.remove_fail_msg, Toast.LENGTH_LONG);
+ Toast msg = Toast.makeText(getSherlockActivity(), R.string.remove_fail_msg, Toast.LENGTH_LONG);
msg.show();
if (result.isSslRecoverableException()) {
// TODO show the SSL warning dialog
* Finishes the preview
*/
private void finish() {
- getActivity().onBackPressed();
+ getSherlockActivity().onBackPressed();
}