# Project target.
target=android-19
android.library.reference.1=actionbarsherlock/library
-android.library.reference.2=owncloud-android-library
+android.library.reference.2=../android-library/android-library
import android.accounts.Account;
import android.accounts.AccountManager;
import android.content.Intent;
+import android.media.MediaScannerConnection;
import android.net.Uri;
import android.support.v4.app.DialogFragment;
import android.webkit.MimeTypeMap;
import com.owncloud.android.datamodel.OCFile;
import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder;
import com.owncloud.android.files.services.FileUploader.FileUploaderBinder;
-
import com.owncloud.android.lib.common.accounts.AccountUtils.Constants;
import com.owncloud.android.lib.common.network.WebdavUtils;
import com.owncloud.android.lib.common.utils.Log_OC;
public void setOpIdWaitingFor(long waitingForOpId) {
mWaitingForOpId = waitingForOpId;
}
-
-
}
*
* @author David A. Velasco
*/
+import java.io.File;
import java.util.Vector;
import com.owncloud.android.R;
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
ComponentsGetter cg = (ComponentsGetter)getSherlockActivity();
FileDataStorageManager storageManager = cg.getStorageManager();
if (storageManager.getFileById(mTargetFile.getFileId()) != null) {
+ String path = new File(mTargetFile.getStoragePath()).getParent();
cg.getFileOperationsHelper().removeFile(mTargetFile, false);
+ triggerMediaScan(path);
}
}
*/
@Override
public void onNeutral(String callerTag) {
+ String path = new File(mTargetFile.getStoragePath()).getParent();
ComponentsGetter cg = (ComponentsGetter)getSherlockActivity();
cg.getFileOperationsHelper()
.removeFile(mTargetFile, true);
}
folder.setEtag("");
- storageManager.saveFile(folder);
+ storageManager.saveFile(folder);
}
+
+ // Trigger MediaScan
+ triggerMediaScan(path);
}
@Override
// nothing to do here
}
-}
+ private void triggerMediaScan(String path){
+ MediaScannerConnection.scanFile(
+ getActivity().getApplicationContext(),
+ new String[]{path},
+ null,null);
+ }
+}
\ No newline at end of file
import java.io.File;
+import android.accounts.Account;
import android.app.Activity;
import android.content.Intent;
+import android.media.MediaScannerConnection;
import android.os.Bundle;
+import android.os.Handler;
import android.support.v4.widget.SwipeRefreshLayout;
import android.view.ContextMenu;
import android.view.MenuInflater;
import android.widget.AdapterView.AdapterContextMenuInfo;
import com.owncloud.android.R;
+import com.owncloud.android.authentication.AccountUtils;
import com.owncloud.android.datamodel.FileDataStorageManager;
import com.owncloud.android.datamodel.OCFile;
import com.owncloud.android.files.FileMenuFilter;
+import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder;
+import com.owncloud.android.files.services.FileUploader.FileUploaderBinder;
import com.owncloud.android.lib.common.utils.Log_OC;
+import com.owncloud.android.operations.RemoveFileOperation;
+import com.owncloud.android.operations.RenameFileOperation;
import com.owncloud.android.ui.activity.FileDisplayActivity;
import com.owncloud.android.ui.activity.MoveActivity;
import com.owncloud.android.ui.activity.OnEnforceableRefreshListener;
private OCFile mFile = null;
private FileListListAdapter mAdapter;
+ private Handler mHandler;
private OCFile mTargetFile;
case R.id.action_download_file:
case R.id.action_sync_file: {
mContainerActivity.getFileOperationsHelper().syncFile(mTargetFile);
+ triggerMediaScan(mTargetFile.getStoragePath());
return true;
}
case R.id.action_cancel_download:
return super.onContextItemSelected(item);
}
}
+
/**
}
}
+ private void triggerMediaScan(String path){
+ MediaScannerConnection.scanFile(
+ getActivity().getApplicationContext(),
+ new String[]{path},
+ null,null);
+ }
}
import android.content.Intent;
import android.content.IntentFilter;
import android.content.ServiceConnection;
+import android.media.MediaScannerConnection;
+import android.media.MediaScannerConnection.OnScanCompletedListener;
+import android.net.Uri;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
public void onReceive(Context context, Intent intent) {
String accountName = intent.getStringExtra(FileDownloader.ACCOUNT_NAME);
String downloadedRemotePath = intent.getStringExtra(FileDownloader.EXTRA_REMOTE_PATH);
+
+
+
if (getAccount().name.equals(accountName) &&
downloadedRemotePath != null) {
boolean downloadWasFine = intent.getBooleanExtra(FileDownloader.EXTRA_DOWNLOAD_RESULT, false);
//boolean isOffscreen = Math.abs((mViewPager.getCurrentItem() - position)) <= mViewPager.getOffscreenPageLimit();
+ if (downloadWasFine){
+ // Trigger Mediascan
+ MediaScannerConnection.scanFile(
+ context,
+ new String[]{file.getStoragePath()},
+ null,null);
+ }
+
if (position >= 0 && intent.getAction().equals(FileDownloader.getDownloadFinishMessage())) {
if (downloadWasFine) {
mPreviewImagePagerAdapter.updateFile(position, file);
finish();
}
-
+
private class BitmapLoader extends AsyncTask<String, Void, Bitmap> {
/**