• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package com.xtremelabs.robolectric.shadows;
2 
3 import android.widget.AbsListView;
4 import com.xtremelabs.robolectric.internal.Implementation;
5 import com.xtremelabs.robolectric.internal.Implements;
6 
7 @Implements(AbsListView.class)
8 public class ShadowAbsListView extends ShadowAdapterView {
9     private AbsListView.OnScrollListener onScrollListener;
10     private int smoothScrolledPosition;
11     private int lastSmoothScrollByDistance;
12     private int lastSmoothScrollByDuration;
13 
14     @Implementation
setOnScrollListener(AbsListView.OnScrollListener l)15     public void setOnScrollListener(AbsListView.OnScrollListener l) {
16         onScrollListener = l;
17     }
18 
19     @Implementation
smoothScrollToPosition(int position)20     public void smoothScrollToPosition(int position) {
21         smoothScrolledPosition = position;
22     }
23 
24     @Implementation
smoothScrollBy(int distance, int duration)25     public void smoothScrollBy(int distance, int duration) {
26         this.lastSmoothScrollByDistance = distance;
27         this.lastSmoothScrollByDuration = duration;
28     }
29 
30     /**
31      * Robolectric accessor for the onScrollListener
32      *
33      * @return AbsListView.OnScrollListener
34      */
getOnScrollListener()35     public AbsListView.OnScrollListener getOnScrollListener() {
36         return onScrollListener;
37     }
38 
39     /**
40      * Robolectric accessor for the last smoothScrolledPosition
41      *
42      * @return int position
43      */
getSmoothScrolledPosition()44     public int getSmoothScrolledPosition() {
45         return smoothScrolledPosition;
46     }
47 
48     /**
49      * Robolectric accessor for the last smoothScrollBy distance
50      *
51      * @return int distance
52      */
getLastSmoothScrollByDistance()53     public int getLastSmoothScrollByDistance() {
54         return lastSmoothScrollByDistance;
55     }
56 
57     /**
58      * Robolectric accessor for the last smoothScrollBy duration
59      *
60      * @return int duration
61      */
getLastSmoothScrollByDuration()62     public int getLastSmoothScrollByDuration() {
63         return lastSmoothScrollByDuration;
64     }
65 }
66