aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-09-18 13:55:23 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-09-18 13:55:23 +0200
commitac66f6cc1043cf79896cf063be2358a0b08e2ac5 (patch)
tree00d99a2296f05a34e2d8258063baa60be95c99e7 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
parent91e97d03a1a436b8a13e423f34643586bb343e4a (diff)
downloadopen-keychain-ac66f6cc1043cf79896cf063be2358a0b08e2ac5.tar.gz
open-keychain-ac66f6cc1043cf79896cf063be2358a0b08e2ac5.tar.bz2
open-keychain-ac66f6cc1043cf79896cf063be2358a0b08e2ac5.zip
Swipe-to-refresh fixes
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java36
1 files changed, 20 insertions, 16 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
index e32677c7a..8603b5e8c 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
@@ -35,6 +35,7 @@ import android.support.v4.content.CursorLoader;
import android.support.v4.content.Loader;
import android.support.v4.view.MenuItemCompat;
import android.support.v4.widget.CursorAdapter;
+import android.support.v4.widget.NoScrollableSwipeRefreshLayout;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.SearchView;
@@ -81,7 +82,7 @@ import se.emilsjolander.stickylistheaders.StickyListHeadersListView;
*/
public class KeyListFragment extends LoaderFragment
implements SearchView.OnQueryTextListener, AdapterView.OnItemClickListener,
- LoaderManager.LoaderCallbacks<Cursor>, ListAwareSwipeRefreshLayout.OnRefreshListener {
+ LoaderManager.LoaderCallbacks<Cursor> {
private KeyListAdapter mAdapter;
private StickyListHeadersListView mStickyList;
@@ -131,7 +132,19 @@ public class KeyListFragment extends LoaderFragment
});
mSwipeRefreshLayout = (ListAwareSwipeRefreshLayout) view.findViewById(R.id.key_list_swipe_container);
- mSwipeRefreshLayout.setOnRefreshListener(this);
+ mSwipeRefreshLayout.setOnRefreshListener(new NoScrollableSwipeRefreshLayout.OnRefreshListener() {
+ @Override
+ public void onRefresh() {
+ KeyUpdateHelper updateHelper = new KeyUpdateHelper();
+ KeychainIntentServiceHandler finishedHandler = new KeychainIntentServiceHandler(getActivity()) {
+ public void handleMessage(Message message) {
+ mSwipeRefreshLayout.setRefreshing(false);
+ }
+ };
+ updateHelper.updateAllKeys(getActivity(), finishedHandler);
+ updateActionbarForSwipe(false);
+ }
+ });
mSwipeRefreshLayout.setColorScheme(
R.color.android_purple_dark,
R.color.android_purple_light,
@@ -141,7 +154,7 @@ public class KeyListFragment extends LoaderFragment
mSwipeRefreshLayout.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
- if (event.getAction() == MotionEvent.ACTION_MOVE) {
+ if (event.getAction() == MotionEvent.ACTION_DOWN) {
updateActionbarForSwipe(true);
} else {
updateActionbarForSwipe(false);
@@ -454,6 +467,8 @@ public class KeyListFragment extends LoaderFragment
MenuItemCompat.setOnActionExpandListener(searchItem, new MenuItemCompat.OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
+ // disable swipe-to-refresh
+ mSwipeRefreshLayout.setIsLocked(true);
return true;
}
@@ -461,6 +476,8 @@ public class KeyListFragment extends LoaderFragment
public boolean onMenuItemActionCollapse(MenuItem item) {
mQuery = null;
getLoaderManager().restartLoader(0, null, KeyListFragment.this);
+ // enable swipe-to-refresh
+ mSwipeRefreshLayout.setIsLocked(false);
return true;
}
});
@@ -753,17 +770,4 @@ public class KeyListFragment extends LoaderFragment
}
- /**
- * Implements OnRefreshListener for drag-to-refresh
- */
- public void onRefresh() {
- KeyUpdateHelper updateHelper = new KeyUpdateHelper();
- KeychainIntentServiceHandler finishedHandler = new KeychainIntentServiceHandler(getActivity()) {
- public void handleMessage(Message message) {
- mSwipeRefreshLayout.setRefreshing(false);
- }
- };
- updateHelper.updateAllKeys(getActivity(), finishedHandler);
- updateActionbarForSwipe(false);
- }
}