diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 32144c4..76cf6ff 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -8,7 +8,7 @@
         android:label="@string/app_name"
         android:theme="@style/AppTheme" >
         <activity
-            android:name=".PickListActivity"
+            android:name=".EditListActivity"
             android:label="@string/app_name" >
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
diff --git a/android/app/src/main/java/io/v/android/apps/todos/PickListActivity.java b/android/app/src/main/java/io/v/android/apps/todos/EditListActivity.java
similarity index 94%
rename from android/app/src/main/java/io/v/android/apps/todos/PickListActivity.java
rename to android/app/src/main/java/io/v/android/apps/todos/EditListActivity.java
index a598213..60abc35 100644
--- a/android/app/src/main/java/io/v/android/apps/todos/PickListActivity.java
+++ b/android/app/src/main/java/io/v/android/apps/todos/EditListActivity.java
@@ -9,20 +9,15 @@
 import android.support.v7.app.ActionBar;
 import android.support.v4.app.Fragment;
 import android.support.v4.app.FragmentManager;
-import android.content.Context;
-import android.os.Build;
 import android.os.Bundle;
-import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
 import android.support.v4.widget.DrawerLayout;
-import android.widget.ArrayAdapter;
-import android.widget.TextView;
 
-public class PickListActivity extends AppCompatActivity
+public class EditListActivity extends AppCompatActivity
         implements NavigationDrawerFragment.NavigationDrawerCallbacks {
 
     /**
@@ -144,7 +139,7 @@
         @Override
         public void onAttach(Activity activity) {
             super.onAttach(activity);
-            ((PickListActivity) activity).onSectionAttached(
+            ((EditListActivity) activity).onSectionAttached(
                     getArguments().getInt(ARG_SECTION_NUMBER));
         }
     }
diff --git a/android/app/src/main/java/io/v/android/apps/todos/NavigationDrawerFragment.java b/android/app/src/main/java/io/v/android/apps/todos/NavigationDrawerFragment.java
index 72fe0f1..c08fb5b 100644
--- a/android/app/src/main/java/io/v/android/apps/todos/NavigationDrawerFragment.java
+++ b/android/app/src/main/java/io/v/android/apps/todos/NavigationDrawerFragment.java
@@ -10,7 +10,7 @@
 import android.app.Activity;
 import android.support.v7.app.ActionBar;
 import android.support.v4.app.Fragment;
-import android.support.v4.app.ActionBarDrawerToggle;
+import android.support.v7.app.ActionBarDrawerToggle;
 import android.support.v4.view.GravityCompat;
 import android.support.v4.widget.DrawerLayout;
 import android.content.SharedPreferences;
@@ -186,7 +186,6 @@
         mDrawerToggle = new ActionBarDrawerToggle(
                 getActivity(),                    /* host Activity */
                 mDrawerLayout,                    /* DrawerLayout object */
-                R.drawable.ic_drawer,             /* nav drawer image to replace 'Up' caret */
                 R.string.navigation_drawer_open,  /* "open drawer" description for accessibility */
                 R.string.navigation_drawer_close  /* "close drawer" description for accessibility */
         ) {
