45
45
import android .provider .Settings ;
46
46
import android .support .v4 .view .ViewCompat ;
47
47
import android .support .v4 .widget .DrawerLayout ;
48
+ import android .support .v4 .widget .SwipeRefreshLayout ;
48
49
import android .support .v7 .app .ActionBar ;
49
50
import android .support .v7 .app .ActionBarActivity ;
50
51
import android .support .v7 .widget .Toolbar ;
76
77
import com .google .samples .apps .iosched .ui .debug .DebugActionRunnerActivity ;
77
78
import com .google .samples .apps .iosched .ui .widget .MultiSwipeRefreshLayout ;
78
79
import com .google .samples .apps .iosched .ui .widget .ScrimInsetsScrollView ;
79
- import com .google .samples .apps .iosched .ui .widget .SwipeRefreshLayout ;
80
80
import com .google .samples .apps .iosched .util .AccountUtils ;
81
81
import com .google .samples .apps .iosched .util .AnalyticsManager ;
82
82
import com .google .samples .apps .iosched .util .HelpUtils ;
@@ -270,11 +270,10 @@ protected void onCreate(Bundle savedInstanceState) {
270
270
private void trySetupSwipeRefresh () {
271
271
mSwipeRefreshLayout = (SwipeRefreshLayout ) findViewById (R .id .swipe_refresh_layout );
272
272
if (mSwipeRefreshLayout != null ) {
273
- mSwipeRefreshLayout .setColorScheme (
273
+ mSwipeRefreshLayout .setColorSchemeResources (
274
274
R .color .refresh_progress_1 ,
275
275
R .color .refresh_progress_2 ,
276
- R .color .refresh_progress_3 ,
277
- R .color .refresh_progress_4 );
276
+ R .color .refresh_progress_3 );
278
277
mSwipeRefreshLayout .setOnRefreshListener (new SwipeRefreshLayout .OnRefreshListener () {
279
278
@ Override
280
279
public void onRefresh () {
@@ -299,11 +298,13 @@ private void updateSwipeRefreshProgressBarTop() {
299
298
return ;
300
299
}
301
300
302
- if (mActionBarShown ) {
303
- mSwipeRefreshLayout .setProgressBarTop (mProgressBarTopWhenActionBarShown );
304
- } else {
305
- mSwipeRefreshLayout .setProgressBarTop (0 );
306
- }
301
+ int progressBarStartMargin = getResources ().getDimensionPixelSize (
302
+ R .dimen .swipe_refresh_progress_bar_start_margin );
303
+ int progressBarEndMargin = getResources ().getDimensionPixelSize (
304
+ R .dimen .swipe_refresh_progress_bar_end_margin );
305
+ int top = mActionBarShown ? mProgressBarTopWhenActionBarShown : 0 ;
306
+ mSwipeRefreshLayout .setProgressViewOffset (false ,
307
+ top + progressBarStartMargin , top + progressBarEndMargin );
307
308
}
308
309
309
310
/**
@@ -435,6 +436,12 @@ protected boolean isNavDrawerOpen() {
435
436
return mDrawerLayout != null && mDrawerLayout .isDrawerOpen (Gravity .START );
436
437
}
437
438
439
+ protected void closeNavDrawer () {
440
+ if (mDrawerLayout != null ) {
441
+ mDrawerLayout .closeDrawer (Gravity .START );
442
+ }
443
+ }
444
+
438
445
/** Populates the navigation drawer with the appropriate items. */
439
446
private void populateNavDrawer () {
440
447
boolean attendeeAtVenue = PrefUtils .isAttendeeAtVenue (this );
@@ -479,6 +486,15 @@ private void populateNavDrawer() {
479
486
createNavDrawerItems ();
480
487
}
481
488
489
+ @ Override
490
+ public void onBackPressed () {
491
+ if (isNavDrawerOpen ()) {
492
+ closeNavDrawer ();
493
+ } else {
494
+ super .onBackPressed ();
495
+ }
496
+ }
497
+
482
498
private void createNavDrawerItems () {
483
499
mDrawerItemsListContainer = (ViewGroup ) findViewById (R .id .navdrawer_items_list );
484
500
if (mDrawerItemsListContainer == null ) {
0 commit comments