From: jabarros Date: Tue, 16 Sep 2014 10:48:24 +0000 (+0200) Subject: Fix bug. Etag is been ignored when navigating through folders X-Git-Tag: oc-android-1.7.0_signed~178^2~2 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/6a297ebe9129f86d1fba63703c45dd9b09303e11?hp=-c Fix bug. Etag is been ignored when navigating through folders --- 6a297ebe9129f86d1fba63703c45dd9b09303e11 diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 90a6f48c..a09b6570 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -21,8 +21,6 @@ package com.owncloud.android.ui.activity; import java.io.File; import java.io.IOException; -import org.apache.commons.httpclient.methods.PostMethod; - import android.accounts.Account; import android.accounts.AccountManager; import android.accounts.AuthenticatorException; @@ -50,7 +48,6 @@ import android.provider.MediaStore; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; -import android.support.v4.widget.SwipeRefreshLayout; import android.util.Log; import android.view.View; import android.view.ViewGroup; @@ -114,7 +111,7 @@ import com.owncloud.android.utils.Log_OC; public class FileDisplayActivity extends HookActivity implements FileFragment.ContainerActivity, OnNavigationListener, -OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { +OnSslUntrustedCertListener, SwipeRefresh { private ArrayAdapter mDirectories; @@ -1715,16 +1712,24 @@ OnSslUntrustedCertListener, SwipeRefreshLayout.OnRefreshListener { } @Override + public void onRefreshForced(boolean ignoreTag) { + refreshList(ignoreTag); + } + + @Override public void onRefresh() { + refreshList(true); + } + + private void refreshList(boolean ignoreTag) { OCFileListFragment listOfFiles = getListOfFilesFragment(); if (listOfFiles != null) { OCFile folder = listOfFiles.getCurrentFile(); if (folder != null) { /*mFile = mContainerActivity.getStorageManager().getFileById(mFile.getFileId()); listDirectory(mFile);*/ - startSyncFolderOperation(folder, true); + startSyncFolderOperation(folder, ignoreTag); } } } - } diff --git a/src/com/owncloud/android/ui/activity/SwipeRefresh.java b/src/com/owncloud/android/ui/activity/SwipeRefresh.java new file mode 100644 index 00000000..dc01b42f --- /dev/null +++ b/src/com/owncloud/android/ui/activity/SwipeRefresh.java @@ -0,0 +1,10 @@ +package com.owncloud.android.ui.activity; + +import android.support.v4.widget.SwipeRefreshLayout; + + public interface SwipeRefresh extends SwipeRefreshLayout.OnRefreshListener { + + public void onRefreshForced(boolean ingnoreTag); + + } + diff --git a/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java b/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java index abd53d3a..01fe5a51 100644 --- a/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java +++ b/src/com/owncloud/android/ui/fragment/ExtendedListFragment.java @@ -34,13 +34,14 @@ import android.widget.TextView; import com.actionbarsherlock.app.SherlockFragment; import com.owncloud.android.R; import com.owncloud.android.ui.ExtendedListView; +import com.owncloud.android.ui.activity.SwipeRefresh; import com.owncloud.android.utils.Log_OC; /** * TODO extending SherlockListFragment instead of SherlockFragment */ public class ExtendedListFragment extends SherlockFragment -implements OnItemClickListener, SwipeRefreshLayout.OnRefreshListener { +implements OnItemClickListener, SwipeRefresh { private static final String TAG = ExtendedListFragment.class.getSimpleName(); @@ -63,7 +64,7 @@ implements OnItemClickListener, SwipeRefreshLayout.OnRefreshListener { private ArrayList mTops; private int mHeightCell = 0; - private SwipeRefreshLayout.OnRefreshListener mOnRefreshListener = null; + private SwipeRefresh mOnRefreshListener = null; public void setListAdapter(ListAdapter listAdapter) { @@ -240,7 +241,7 @@ implements OnItemClickListener, SwipeRefreshLayout.OnRefreshListener { } } - public void setOnRefreshListener(SwipeRefreshLayout.OnRefreshListener listener) { + public void setOnRefreshListener(SwipeRefresh listener) { mOnRefreshListener = listener; } @@ -300,4 +301,13 @@ implements OnItemClickListener, SwipeRefreshLayout.OnRefreshListener { refreshLayout.setOnRefreshListener(this); } + @Override + public void onRefreshForced(boolean ingnoreTag) { + mRefreshLayout.setRefreshing(false); + mRefreshEmptyLayout.setRefreshing(false); + + if (mOnRefreshListener != null) { + mOnRefreshListener.onRefreshForced(ingnoreTag); + } + } } diff --git a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java index c11e864e..9a26b704 100644 --- a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java @@ -36,6 +36,7 @@ import com.owncloud.android.datamodel.OCFile; import com.owncloud.android.files.FileMenuFilter; import com.owncloud.android.ui.activity.FileDisplayActivity; import com.owncloud.android.ui.activity.MoveActivity; +import com.owncloud.android.ui.activity.SwipeRefresh; import com.owncloud.android.ui.adapter.FileListListAdapter; import com.owncloud.android.ui.dialog.ConfirmationDialogFragment; import com.owncloud.android.ui.dialog.RemoveFileDialogFragment; @@ -88,7 +89,7 @@ public class OCFileListFragment extends ExtendedListFragment { FileFragment.ContainerActivity.class.getSimpleName()); } try { - setOnRefreshListener((SwipeRefreshLayout.OnRefreshListener) activity); + setOnRefreshListener((SwipeRefresh) activity); } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement " + @@ -174,7 +175,7 @@ public class OCFileListFragment extends ExtendedListFragment { listDirectory(mFile); - onRefresh(); + onRefreshForced(false); // restore index and top position restoreIndexAndTopPosition();