4
4
import android .content .Context ;
5
5
import android .content .Intent ;
6
6
import android .os .Bundle ;
7
+ import android .view .Menu ;
8
+ import android .view .MenuInflater ;
9
+ import android .view .MenuItem ;
10
+ import android .view .MotionEvent ;
7
11
import android .view .View ;
8
12
import android .widget .Button ;
9
- import android .widget .ImageView ;
10
13
import android .widget .ProgressBar ;
11
14
import android .widget .TextView ;
12
-
13
- import com .facebook .drawee .view .SimpleDraweeView ;
14
- import com .google .android .material .navigation .NavigationView ;
15
- import com .viewpagerindicator .CirclePageIndicator ;
16
-
17
- import java .util .ArrayList ;
18
-
19
- import javax .inject .Inject ;
20
-
21
15
import androidx .appcompat .widget .Toolbar ;
22
16
import androidx .drawerlayout .widget .DrawerLayout ;
23
17
import butterknife .BindView ;
24
18
import butterknife .ButterKnife ;
19
+ import com .facebook .drawee .view .SimpleDraweeView ;
20
+ import com .google .android .material .navigation .NavigationView ;
21
+ import com .viewpagerindicator .CirclePageIndicator ;
25
22
import fr .free .nrw .commons .Media ;
26
23
import fr .free .nrw .commons .R ;
27
24
import fr .free .nrw .commons .auth .AuthenticatedActivity ;
32
29
import io .reactivex .android .schedulers .AndroidSchedulers ;
33
30
import io .reactivex .disposables .CompositeDisposable ;
34
31
import io .reactivex .schedulers .Schedulers ;
32
+ import java .util .ArrayList ;
33
+ import javax .inject .Inject ;
35
34
36
35
public class ReviewActivity extends AuthenticatedActivity {
37
36
38
- @ BindView (R .id .reviewPagerIndicator )
37
+ @ BindView (R .id .pager_indicator_review )
39
38
public CirclePageIndicator pagerIndicator ;
40
39
@ BindView (R .id .toolbar )
41
40
Toolbar toolbar ;
42
41
@ BindView (R .id .navigation_view )
43
42
NavigationView navigationView ;
44
43
@ BindView (R .id .drawer_layout )
45
44
DrawerLayout drawerLayout ;
46
- @ BindView (R .id .reviewPager )
45
+ @ BindView (R .id .view_pager_review )
47
46
ReviewViewPager reviewPager ;
48
47
@ BindView (R .id .skip_image )
49
- Button skip_image_button ;
50
- @ BindView (R .id .imageView )
48
+ Button btnSkipImage ;
49
+ @ BindView (R .id .review_image_view )
51
50
SimpleDraweeView simpleDraweeView ;
52
- @ BindView (R .id .progressBar )
51
+ @ BindView (R .id .pb_review_image )
53
52
ProgressBar progressBar ;
54
- @ BindView (R .id .imageCaption )
53
+ @ BindView (R .id .tv_image_caption )
55
54
TextView imageCaption ;
56
- @ BindView (R .id .skip_image_info )
57
- ImageView skipImageInfo ;
58
- @ BindView (R .id .review_image_info )
59
- ImageView reviewImageInfo ;
60
55
public ReviewPagerAdapter reviewPagerAdapter ;
61
56
public ReviewController reviewController ;
62
57
@ Inject
@@ -96,6 +91,7 @@ protected void onCreate(Bundle savedInstanceState) {
96
91
super .onCreate (savedInstanceState );
97
92
setContentView (R .layout .activity_review );
98
93
ButterKnife .bind (this );
94
+ setSupportActionBar (toolbar );
99
95
initDrawer ();
100
96
101
97
reviewController = new ReviewController (deleteHelper , this );
@@ -108,9 +104,17 @@ protected void onCreate(Bundle savedInstanceState) {
108
104
109
105
runRandomizer (); //Run randomizer whenever everything is ready so that a first random image will be added
110
106
111
- skip_image_button .setOnClickListener (view -> runRandomizer ());
112
- skipImageInfo .setOnClickListener (view -> showSkipImageInfo ());
113
- reviewImageInfo .setOnClickListener (view -> showReviewImageInfo ());
107
+ btnSkipImage .setOnClickListener (view -> runRandomizer ());
108
+
109
+ btnSkipImage .setOnTouchListener ((view , event ) -> {
110
+ if (event .getAction () == MotionEvent .ACTION_UP && event .getRawX () >= (
111
+ btnSkipImage .getRight () - btnSkipImage
112
+ .getCompoundDrawables ()[2 ].getBounds ().width ())) {
113
+ showSkipImageInfo ();
114
+ return true ;
115
+ }
116
+ return false ;
117
+ });
114
118
}
115
119
116
120
@ SuppressLint ("CheckResult" )
@@ -187,4 +191,22 @@ public void showReviewImageInfo() {
187
191
null ,
188
192
null );
189
193
}
194
+
195
+
196
+ @ Override
197
+ public boolean onCreateOptionsMenu (Menu menu ) {
198
+ MenuInflater inflater = getMenuInflater ();
199
+ inflater .inflate (R .menu .menu_review_activty , menu );
200
+ return super .onCreateOptionsMenu (menu );
201
+ }
202
+
203
+ @ Override
204
+ public boolean onOptionsItemSelected (MenuItem item ) {
205
+ switch (item .getItemId ()) {
206
+ case R .id .menu_image_info :
207
+ showReviewImageInfo ();
208
+ return true ;
209
+ }
210
+ return super .onOptionsItemSelected (item );
211
+ }
190
212
}
0 commit comments