X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/45f89711be3eda7e677ed5e8fdc9c13daca6dcc9..f8e0f7a582c236763b145f34d61281a5f5176e83:/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java diff --git a/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java b/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java index 63d11bf6..34a82cba 100644 --- a/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java +++ b/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java @@ -236,7 +236,7 @@ public class FileDetailFragment extends SherlockFragment implements mFile.setKeepInSync(cb.isChecked()); FileDataStorageManager fdsm = new FileDataStorageManager(mAccount, getActivity().getApplicationContext().getContentResolver()); fdsm.saveFile(mFile); - if (mFile.keepInSync() && !mFile.isDownloaded()) { + if (mFile.keepInSync()) { onClick(getView().findViewById(R.id.fdDownloadBtn)); } break; @@ -597,7 +597,6 @@ public class FileDetailFragment extends SherlockFragment implements } public void onDismiss(EditNameFragment dialog) { - Log.e("ASD","ondismiss"); if (dialog instanceof EditNameFragment) { if (((EditNameFragment)dialog).getResult()) { String newFilename = ((EditNameFragment)dialog).getNewFilename(); @@ -614,7 +613,13 @@ public class FileDetailFragment extends SherlockFragment implements newFile.setMimetype(mFile.getMimetype()); newFile.setModificationTimestamp(mFile.getModificationTimestamp()); newFile.setParentId(mFile.getParentId()); - newFile.setStoragePath(mFile.getStoragePath()); + if (mFile.isDownloaded()) { + File f = new File(mFile.getStoragePath()); + Log.e(TAG, f.getAbsolutePath()+""); + f.renameTo(new File(f.getParent()+"/"+newFilename)); + Log.e(TAG, f.getAbsolutePath()+""); + newFile.setStoragePath(f.getAbsolutePath()); + } new Thread(new RenameRunnable(mFile, newFile, mAccount, new Handler())).start(); @@ -755,9 +760,11 @@ public class FileDetailFragment extends SherlockFragment implements } - private class RemoveRunnable implements Runnable { + /** Arbitrary timeout for deletion */ + public final static int DELETION_TIMEOUT = 5000; + Account mAccount; OCFile mFileToRemove; Handler mHandler; @@ -777,13 +784,10 @@ public class FileDetailFragment extends SherlockFragment implements Log.d("ASD", ""+baseUrl + webdav_path + WebdavUtils.encodePath(mFileToRemove.getRemotePath())); DeleteMethod delete = new DeleteMethod(baseUrl + webdav_path + WebdavUtils.encodePath(mFileToRemove.getRemotePath())); - HttpMethodParams params = delete.getParams(); - params.setSoTimeout(1000); - delete.setParams(params); boolean success = false; try { - int status = wc.executeMethod(delete); + int status = wc.executeMethod(delete, DELETION_TIMEOUT); if (delete.succeeded()) { FileDataStorageManager fdsm = new FileDataStorageManager(mAccount, getActivity().getContentResolver()); fdsm.removeFile(mFileToRemove); @@ -906,7 +910,7 @@ public class FileDetailFragment extends SherlockFragment implements } @Override protected void onPostExecute(Bitmap result) { - if (result != null) { + if (result != null && mPreview != null) { mPreview.setImageBitmap(result); } }