From: tobiasKaminsky Date: Mon, 24 Nov 2014 19:15:57 +0000 (+0100) Subject: bugfix X-Git-Tag: oc-android-1.7.0_signed~90^2~16 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/f98665bc2ded1fbf10727ad9a63df742140cf5d8?ds=inline;hp=-c bugfix --- f98665bc2ded1fbf10727ad9a63df742140cf5d8 diff --git a/src/com/owncloud/android/datamodel/OCFile.java b/src/com/owncloud/android/datamodel/OCFile.java index 392d03bc..bb328d79 100644 --- a/src/com/owncloud/android/datamodel/OCFile.java +++ b/src/com/owncloud/android/datamodel/OCFile.java @@ -20,9 +20,12 @@ package com.owncloud.android.datamodel; import java.io.File; +import com.owncloud.android.MainApp; import com.owncloud.android.lib.common.utils.Log_OC; -import third_parties.daveKoeller.AlphanumComparator; +import third_parties.daveKoeller.AlphanumComparator; +import android.content.Intent; +import android.net.Uri; import android.os.Parcel; import android.os.Parcelable; import android.webkit.MimeTypeMap; @@ -296,6 +299,18 @@ public class OCFile implements Parcelable, Comparable { mRemotePath += PATH_SEPARATOR; } Log_OC.d(TAG, "OCFile name changed to " + mRemotePath); + + // Notify MediaScanner about removed file + Intent intent1 = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); + intent1.setData(Uri.fromFile(new File(this.getStoragePath()))); + MainApp.getAppContext().sendBroadcast(intent1); + + // Notify MediaScanner about new file + Intent intent2 = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); + String folder = new File(this.getStoragePath()).getParent(); + Log_OC.d(TAG, "uri: " + folder+PATH_SEPARATOR+name); + intent2.setData(Uri.fromFile(new File(folder+ PATH_SEPARATOR+name))); + MainApp.getAppContext().sendBroadcast(intent2); } } diff --git a/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java b/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java index eacc7267..4e0c47bc 100644 --- a/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java +++ b/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java @@ -27,16 +27,20 @@ package com.owncloud.android.ui.dialog; import java.io.File; import java.util.Vector; +import android.app.Dialog; +import android.content.Intent; +import android.media.MediaScannerConnection; +import android.net.Uri; +import android.os.Bundle; + +import com.owncloud.android.MainApp; import com.owncloud.android.R; import com.owncloud.android.datamodel.FileDataStorageManager; import com.owncloud.android.datamodel.OCFile; +import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.ui.activity.ComponentsGetter; import com.owncloud.android.ui.dialog.ConfirmationDialogFragment.ConfirmationDialogFragmentListener; -import android.app.Dialog; -import android.media.MediaScannerConnection; -import android.os.Bundle; - public class RemoveFileDialogFragment extends ConfirmationDialogFragment implements ConfirmationDialogFragmentListener { @@ -97,7 +101,7 @@ implements ConfirmationDialogFragmentListener { ComponentsGetter cg = (ComponentsGetter)getSherlockActivity(); FileDataStorageManager storageManager = cg.getStorageManager(); if (storageManager.getFileById(mTargetFile.getFileId()) != null) { - String path = new File(mTargetFile.getStoragePath()).getParent(); + String path = mTargetFile.getStoragePath(); cg.getFileOperationsHelper().removeFile(mTargetFile, false); triggerMediaScan(path); } @@ -108,10 +112,9 @@ implements ConfirmationDialogFragmentListener { */ @Override public void onNeutral(String callerTag) { - String path = new File(mTargetFile.getStoragePath()).getParent(); + String path = mTargetFile.getStoragePath(); ComponentsGetter cg = (ComponentsGetter)getSherlockActivity(); - cg.getFileOperationsHelper() - .removeFile(mTargetFile, true); + cg.getFileOperationsHelper().removeFile(mTargetFile, true); FileDataStorageManager storageManager = cg.getStorageManager(); @@ -150,9 +153,12 @@ implements ConfirmationDialogFragmentListener { } private void triggerMediaScan(String path){ - MediaScannerConnection.scanFile( - getActivity().getApplicationContext(), - new String[]{path}, - null,null); + try { + Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); + intent.setData(Uri.fromFile(new File(path))); + MainApp.getAppContext().sendBroadcast(intent); + } catch (Exception e){ + Log_OC.d("Trigger", "exception: " + e); + } } } \ No newline at end of file diff --git a/src/com/owncloud/android/ui/dialog/RenameFileDialogFragment.java b/src/com/owncloud/android/ui/dialog/RenameFileDialogFragment.java index 530e920a..d285f1e4 100644 --- a/src/com/owncloud/android/ui/dialog/RenameFileDialogFragment.java +++ b/src/com/owncloud/android/ui/dialog/RenameFileDialogFragment.java @@ -22,12 +22,6 @@ package com.owncloud.android.ui.dialog; * * Triggers the rename operation. */ -import com.actionbarsherlock.app.SherlockDialogFragment; -import com.owncloud.android.R; -import com.owncloud.android.datamodel.OCFile; -import com.owncloud.android.lib.resources.files.FileUtils; -import com.owncloud.android.ui.activity.ComponentsGetter; - import android.app.AlertDialog; import android.app.Dialog; import android.content.DialogInterface; @@ -39,6 +33,12 @@ import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; +import com.actionbarsherlock.app.SherlockDialogFragment; +import com.owncloud.android.R; +import com.owncloud.android.datamodel.OCFile; +import com.owncloud.android.lib.resources.files.FileUtils; +import com.owncloud.android.ui.activity.ComponentsGetter; + /** * Dialog to input a new name for a file or folder to rename. @@ -125,12 +125,8 @@ extends SherlockDialogFragment implements DialogInterface.OnClickListener { Toast.LENGTH_LONG).show(); return; } - - ((ComponentsGetter)getSherlockActivity()). - getFileOperationsHelper().renameFile(mTargetFile, newFileName); - - + + ((ComponentsGetter)getSherlockActivity()).getFileOperationsHelper().renameFile(mTargetFile, newFileName); } } - }