Merge "Respect drawer's lock state in drawer toggle." into mnc-ub-dev
diff --git a/v7/appcompat/src/android/support/v7/app/ActionBarDrawerToggle.java b/v7/appcompat/src/android/support/v7/app/ActionBarDrawerToggle.java
index 6dceaf6..c15c531 100644
--- a/v7/appcompat/src/android/support/v7/app/ActionBarDrawerToggle.java
+++ b/v7/appcompat/src/android/support/v7/app/ActionBarDrawerToggle.java
@@ -282,9 +282,11 @@
     }
 
     private void toggle() {
-        if (mDrawerLayout.isDrawerVisible(GravityCompat.START)) {
+        int drawerLockMode = mDrawerLayout.getDrawerLockMode(GravityCompat.START);
+        if (mDrawerLayout.isDrawerVisible(GravityCompat.START)
+                && (drawerLockMode != DrawerLayout.LOCK_MODE_LOCKED_OPEN)) {
             mDrawerLayout.closeDrawer(GravityCompat.START);
-        } else {
+        } else if (drawerLockMode != DrawerLayout.LOCK_MODE_LOCKED_CLOSED) {
             mDrawerLayout.openDrawer(GravityCompat.START);
         }
     }