Skip to content

Commit 3d69956

Browse files
committed
new CustomSwipeRefreshLayout with a workaround to catch onTouchEvent IllegalArgumentException
1 parent d370d2b commit 3d69956

File tree

2 files changed

+32
-4
lines changed

2 files changed

+32
-4
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package org.wordpress.android.util.ptr;
2+
3+
import android.content.Context;
4+
import android.support.v4.widget.SwipeRefreshLayout;
5+
import android.util.AttributeSet;
6+
import android.view.MotionEvent;
7+
8+
import org.wordpress.android.util.AppLog;
9+
import org.wordpress.android.util.AppLog.T;
10+
11+
public class CustomSwipeRefreshLayout extends SwipeRefreshLayout {
12+
public CustomSwipeRefreshLayout(Context context) {
13+
super(context);
14+
}
15+
16+
public CustomSwipeRefreshLayout(Context context, AttributeSet attrs) {
17+
super(context, attrs);
18+
}
19+
20+
@Override
21+
public boolean onTouchEvent(MotionEvent event) {
22+
try{
23+
return super.onTouchEvent(event);
24+
} catch(IllegalArgumentException e) {
25+
AppLog.e(T.UTILS, e);
26+
return true;
27+
}
28+
}
29+
}

WordPressUtils/src/main/java/org/wordpress/android/util/ptr/SwipeToRefreshHelper.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,25 @@
33
import android.app.Activity;
44
import android.content.Context;
55
import android.content.res.TypedArray;
6-
import android.support.v4.widget.SwipeRefreshLayout;
76
import android.support.v4.widget.SwipeRefreshLayout.OnRefreshListener;
87
import android.util.TypedValue;
98

109
import org.wordpress.android.util.R;
1110

1211
public class SwipeToRefreshHelper implements OnRefreshListener {
13-
private SwipeRefreshLayout mSwipeRefreshLayout;
12+
private CustomSwipeRefreshLayout mSwipeRefreshLayout;
1413
private RefreshListener mRefreshListener;
1514
private boolean mRefreshing;
1615

1716
public interface RefreshListener {
1817
public void onRefreshStarted();
1918
}
2019

21-
public SwipeToRefreshHelper(Activity activity, SwipeRefreshLayout swipeRefreshLayout, RefreshListener listener) {
20+
public SwipeToRefreshHelper(Activity activity, CustomSwipeRefreshLayout swipeRefreshLayout, RefreshListener listener) {
2221
init(activity, swipeRefreshLayout, listener);
2322
}
2423

25-
public void init(Activity activity, SwipeRefreshLayout swipeRefreshLayout, RefreshListener listener) {
24+
public void init(Activity activity, CustomSwipeRefreshLayout swipeRefreshLayout, RefreshListener listener) {
2625
mRefreshListener = listener;
2726
mSwipeRefreshLayout = swipeRefreshLayout;
2827
mSwipeRefreshLayout.setOnRefreshListener(this);

0 commit comments

Comments
 (0)