diff --git a/app/build.gradle b/app/build.gradle
index 3b7d21d..e503eba 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -42,7 +42,7 @@ android {
 }
 
 dependencies {
-    implementation 'com.simplemobiletools:commons:4.0.22'
+    implementation 'com.simplemobiletools:commons:4.6.4'
     implementation 'com.facebook.stetho:stetho:1.5.0'
     implementation 'com.android.support:multidex:1.0.3'
 }
diff --git a/app/src/main/kotlin/com/simplemobiletools/applauncher/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/applauncher/activities/MainActivity.kt
index 87940d4..732f533 100644
--- a/app/src/main/kotlin/com/simplemobiletools/applauncher/activities/MainActivity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/applauncher/activities/MainActivity.kt
@@ -94,11 +94,13 @@ class MainActivity : SimpleActivity(), RefreshRecyclerViewListener {
     }
 
     private fun launchAbout() {
+        val licenses = LICENSE_MULTISELECT or LICENSE_STETHO
+
         val faqItems = arrayListOf(
                 FAQItem(R.string.faq_2_title_commons, R.string.faq_2_text_commons)
         )
 
-        startAboutActivity(R.string.app_name, LICENSE_MULTISELECT or LICENSE_STETHO, BuildConfig.VERSION_NAME, faqItems)
+        startAboutActivity(R.string.app_name, licenses, BuildConfig.VERSION_NAME, faqItems, false)
     }
 
     private fun getGridAdapter() = launchers_grid.adapter as? LaunchersAdapter
diff --git a/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersAdapter.kt
index 82acbf4..ab040b1 100644
--- a/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersAdapter.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersAdapter.kt
@@ -29,19 +29,19 @@ class LaunchersAdapter(activity: SimpleActivity, val launchers: MutableList<AppL
 
     override fun getActionMenuId() = R.menu.cab
 
-    override fun prepareItemSelection(view: View) {
-        view.launcher_check?.background?.applyColorFilter(primaryColor)
+    override fun prepareItemSelection(viewHolder: ViewHolder) {
+        viewHolder.itemView?.launcher_check?.background?.applyColorFilter(primaryColor)
     }
 
-    override fun markItemSelection(select: Boolean, view: View?) {
-        view?.launcher_check?.beInvisibleIf(!select)
+    override fun markViewHolderSelection(select: Boolean, viewHolder: ViewHolder?) {
+        viewHolder?.itemView?.launcher_check?.beInvisibleIf(!select)
     }
 
     override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) = createViewHolder(R.layout.item_app_launcher, parent)
 
     override fun onBindViewHolder(holder: MyRecyclerViewAdapter.ViewHolder, position: Int) {
         val launcher = launchers[position]
-        val view = holder.bindView(launcher) { itemView, adapterPosition ->
+        val view = holder.bindView(launcher, true, true) { itemView, adapterPosition ->
             setupView(itemView, launcher)
         }
         bindViewHolder(holder, position, view)
@@ -64,6 +64,8 @@ class LaunchersAdapter(activity: SimpleActivity, val launchers: MutableList<AppL
 
     override fun getSelectableItemCount() = launchers.size
 
+    override fun getIsItemSelectable(position: Int) = true
+
     private fun showEditDialog() {
         EditDialog(activity, launchers[selectedPositions.first()]) {
             finishActMode()
diff --git a/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersDialogAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersDialogAdapter.kt
index 3c72926..e2e5b65 100644
--- a/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersDialogAdapter.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/applauncher/adapters/LaunchersDialogAdapter.kt
@@ -64,7 +64,7 @@ class LaunchersDialogAdapter(activity: Activity, val launchers: ArrayList<AppLau
         return ViewHolder(view, adapterListener)
     }
 
-    override fun getItemCount() = launchers.count()
+    override fun getItemCount() = launchers.size
 
     class ViewHolder(view: View, val adapterListener: MyAdapterListener) : RecyclerView.ViewHolder(view) {
         fun bindView(launcher: AppLauncher, textColor: Int): View {
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
index a8cdbd2..d2b5a8e 100644
--- a/app/src/main/res/layout/activity_settings.xml
+++ b/app/src/main/res/layout/activity_settings.xml
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:id="@+id/settings_scrollview"
     android:layout_width="match_parent"
     android:layout_height="wrap_content">
@@ -46,7 +47,8 @@
                 android:clickable="false"
                 android:paddingLeft="@dimen/medium_margin"
                 android:paddingStart="@dimen/medium_margin"
-                android:text="@string/use_english_language"/>
+                android:text="@string/use_english_language"
+                app:switchPadding="@dimen/medium_margin"/>
 
         </RelativeLayout>
 
@@ -69,7 +71,8 @@
                 android:clickable="false"
                 android:paddingLeft="@dimen/medium_margin"
                 android:paddingStart="@dimen/medium_margin"
-                android:text="@string/avoid_whats_new"/>
+                android:text="@string/avoid_whats_new"
+                app:switchPadding="@dimen/medium_margin"/>
 
         </RelativeLayout>
 
@@ -92,7 +95,8 @@
                 android:clickable="false"
                 android:paddingLeft="@dimen/medium_margin"
                 android:paddingStart="@dimen/medium_margin"
-                android:text="@string/show_info_bubble"/>
+                android:text="@string/show_info_bubble"
+                app:switchPadding="@dimen/medium_margin"/>
 
         </RelativeLayout>
 
@@ -115,7 +119,8 @@
                 android:clickable="false"
                 android:paddingLeft="@dimen/medium_margin"
                 android:paddingStart="@dimen/medium_margin"
-                android:text="@string/close_app"/>
+                android:text="@string/close_app"
+                app:switchPadding="@dimen/medium_margin"/>
 
         </RelativeLayout>
     </LinearLayout>
diff --git a/app/src/main/res/menu/cab.xml b/app/src/main/res/menu/cab.xml
index 57a5c2b..e2631a2 100644
--- a/app/src/main/res/menu/cab.xml
+++ b/app/src/main/res/menu/cab.xml
@@ -3,7 +3,7 @@
       xmlns:app="http://schemas.android.com/apk/res-auto">
     <item
         android:id="@+id/cab_edit"
-        android:icon="@drawable/ic_rename"
+        android:icon="@drawable/ic_rename_new"
         android:title="@string/rename"
         app:showAsAction="ifRoom"/>
     <item
diff --git a/build.gradle b/build.gradle
index 7cbfad6..b7a3323 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,7 +1,7 @@
 // Top-level build file where you can add configuration options common to all sub-projects/modules.
 
 buildscript {
-    ext.kotlin_version = '1.2.41'
+    ext.kotlin_version = '1.2.60'
 
     repositories {
         jcenter()
@@ -9,7 +9,7 @@ buildscript {
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:3.1.3'
+        classpath 'com.android.tools.build:gradle:3.1.4'
         classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
 
         // NOTE: Do not place your application dependencies here; they belong