X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/b83064eb8326c38d7c7e4a154abb1becbda72d48..7239b9eb9dd2a4fd9d254f3ea7aad181f86ced37:/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 47e75d37..5197d67e 100644 --- a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java +++ b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java @@ -50,6 +50,7 @@ import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; +import android.support.v4.app.DialogFragment; import android.support.v4.app.FragmentTransaction; import android.util.Log; import android.view.Display; @@ -121,6 +122,7 @@ public class FileDetailFragment extends SherlockFragment implements private Handler mHandler; private RemoteOperation mLastRemoteOperation; + private DialogFragment mCurrentDialog; private static final String TAG = FileDetailFragment.class.getSimpleName(); public static final String FTAG = "FileDetails"; @@ -353,7 +355,8 @@ public class FileDetailFragment extends SherlockFragment implements mFile.isDown() ? R.string.confirmation_remove_local : -1, R.string.common_cancel); confDialog.setOnConfirmationListener(this); - confDialog.show(getFragmentManager(), FTAG_CONFIRMATION); + mCurrentDialog = confDialog; + mCurrentDialog.show(getFragmentManager(), FTAG_CONFIRMATION); break; } case R.id.fdOpenBtn: { @@ -427,6 +430,8 @@ public class FileDetailFragment extends SherlockFragment implements getActivity().showDialog((inDisplayActivity)? FileDisplayActivity.DIALOG_SHORT_WAIT : FileDetailActivity.DIALOG_SHORT_WAIT); } } + mCurrentDialog.dismiss(); + mCurrentDialog = null; } @Override @@ -438,11 +443,15 @@ public class FileDetailFragment extends SherlockFragment implements mStorageManager.saveFile(mFile); updateFileDetails(mFile, mAccount); } + mCurrentDialog.dismiss(); + mCurrentDialog = null; } @Override public void onCancel(String callerTag) { Log.d(TAG, "REMOVAL CANCELED"); + mCurrentDialog.dismiss(); + mCurrentDialog = null; } @@ -733,6 +742,7 @@ public class FileDetailFragment extends SherlockFragment implements String newName = (new File(uploadRemotePath)).getName(); Toast msg = Toast.makeText(getActivity().getApplicationContext(), String.format(getString(R.string.filedetails_renamed_in_upload_msg), newName), Toast.LENGTH_LONG); 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 }