diff --git a/app/src/main/java/org/omnirom/control/GridViewFragment.kt b/app/src/main/java/org/omnirom/control/GridViewFragment.kt
index c1d3512..3150e75 100644
--- a/app/src/main/java/org/omnirom/control/GridViewFragment.kt
+++ b/app/src/main/java/org/omnirom/control/GridViewFragment.kt
@@ -52,7 +52,8 @@
     class GridViewAdapter(context: Context, gridItems: List<GridItem>) :
         ArrayAdapter<GridItem>(context, 0, gridItems) {
 
-        private val vi: LayoutInflater = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
+        private val vi: LayoutInflater =
+            context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
 
         override fun getView(position: Int, convertView: View?, parent: ViewGroup): View {
             val viewItem: View = convertView ?: vi.inflate(R.layout.grid_item, null)
@@ -165,7 +166,11 @@
     override fun onResume() {
         super.onResume()
         (activity as? AppCompatActivity)?.supportActionBar?.setDisplayHomeAsUpEnabled(false)
-        (activity as? SettingsActivity)?.updateFragmentTitle(resources.getString(R.string.app_title))
+        (activity as? SettingsActivity)?.updateFragmentTitle(
+            resources.getString(R.string.app_title),
+            "",
+            R.drawable.ic_settings_grid
+        )
     }
 
     override fun onCreateView(
diff --git a/app/src/main/java/org/omnirom/control/SettingsActivity.kt b/app/src/main/java/org/omnirom/control/SettingsActivity.kt
index b0652b8..a9f7b58 100644
--- a/app/src/main/java/org/omnirom/control/SettingsActivity.kt
+++ b/app/src/main/java/org/omnirom/control/SettingsActivity.kt
@@ -67,14 +67,12 @@
         } else {
             (findViewById<TextView>(R.id.fragment_summary)).visibility = View.GONE
         }
-        (findViewById<ImageView>(R.id.fragment_icon)).visibility = View.VISIBLE
-        (findViewById<ImageView>(R.id.fragment_icon)).setImageResource(icon)
-    }
-
-    fun updateFragmentTitle(title: String) {
-        (findViewById<TextView>(R.id.fragment_title)).text = title
-        (findViewById<TextView>(R.id.fragment_summary)).visibility = View.GONE
-        (findViewById<ImageView>(R.id.fragment_icon)).visibility = View.GONE
+        if (icon != 0) {
+            (findViewById<ImageView>(R.id.fragment_icon)).visibility = View.VISIBLE
+            (findViewById<ImageView>(R.id.fragment_icon)).setImageResource(icon)
+        } else {
+            (findViewById<ImageView>(R.id.fragment_icon)).visibility = View.GONE
+        }
     }
 
     override fun onSaveInstanceState(outState: Bundle) {
diff --git a/app/src/main/res/drawable/ic_settings_grid.xml b/app/src/main/res/drawable/ic_settings_grid.xml
new file mode 100644
index 0000000..57727d9
--- /dev/null
+++ b/app/src/main/res/drawable/ic_settings_grid.xml
@@ -0,0 +1,16 @@
+<!-- drawable/cog_stop_outline.xml -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24.0dp"
+    android:height="24.0dp"
+    android:tint="?android:textColorPrimary"
+    android:viewportWidth="24.0"
+    android:viewportHeight="24.0">
+      <path android:fillColor="@android:color/white" android:pathData="M13.54 22H10C9.75 22 9.54 21.82 9.5 21.58L9.13 18.93C8.5 18.68 7.96 18.34 7.44 17.94L4.95 18.95C4.73 19.03 4.46 18.95 4.34 18.73L2.34 15.27C2.21 15.05 2.27 14.78 2.46 14.63L4.57 12.97L4.5 12L4.57 11L2.46 9.37C2.27 9.22 2.21 8.95 2.34 8.73L4.34 5.27C4.46 5.05 4.73 4.96 4.95 5.05L7.44 6.05C7.96 5.66 8.5 5.32 9.13 5.07L9.5 2.42C9.54 2.18 9.75 2 10 2H14C14.25 2 14.46 2.18 14.5 2.42L14.87 5.07C15.5 5.32 16.04 5.66 16.56 6.05L19.05 5.05C19.27 4.96 19.54 5.05 19.66 5.27L21.66 8.73C21.79 8.95 21.73 9.22 21.54 9.37L19.43 11L19.5 12V12.19C19 12.07 18.5 12 18 12C17.83 12 17.66 12 17.5 12.03C17.5 11.41 17.4 10.79 17.2 10.2L19.31 8.65L18.56 7.35L16.15 8.39C15.38 7.5 14.32 6.86 13.12 6.62L12.75 4H11.25L10.88 6.61C9.68 6.86 8.62 7.5 7.85 8.39L5.44 7.35L4.69 8.65L6.8 10.2C6.4 11.37 6.4 12.64 6.8 13.8L4.68 15.36L5.43 16.66L7.86 15.62C8.63 16.5 9.68 17.14 10.87 17.38L11.24 20H12.35C12.61 20.75 13 21.42 13.54 22M15.96 12.36C16 12.24 16 12.12 16 12C16 9.79 14.21 8 12 8S8 9.79 8 12 9.79 16 12 16C12.12 16 12.24 16 12.36 15.96C12.97 14.29 14.29 12.97 15.96 12.36M12 14C10.9 14 10 13.11 10 12S10.9 10 12 10 14 10.9 14 12 13.11 14 12 14M16 15V21L" />
+    <group
+        android:scaleX="0.6"
+        android:scaleY="0.6"
+        android:translateX="10"
+        android:translateY="10">
+        <path android:fillColor="@android:color/white" android:pathData="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z" />
+    </group>
+</vector>
\ No newline at end of file
diff --git a/app/src/main/res/layout/grid_item.xml b/app/src/main/res/layout/grid_item.xml
index 2ea5762..adc88b8 100644
--- a/app/src/main/res/layout/grid_item.xml
+++ b/app/src/main/res/layout/grid_item.xml
@@ -13,6 +13,7 @@
             android:id="@+id/grid_item_icon"
             android:layout_width="@dimen/grid_item_icon_size"
             android:layout_height="@dimen/grid_item_icon_size"
+            android:layout_marginStart="@dimen/grid_icon_margin_start"
             android:layout_gravity="center_vertical" />
 
         <LinearLayout
diff --git a/app/src/main/res/menu/bottom_navigation.xml b/app/src/main/res/menu/bottom_navigation.xml
deleted file mode 100644
index dd0c2ba..0000000
--- a/app/src/main/res/menu/bottom_navigation.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    tools:showIn="bottom_navigation">
-    <item
-        android:id="@+id/menu_applist"
-        android:icon="@drawable/applist_icon"
-        android:title="Apps"/>
-
-    <item
-        android:id="@+id/menu_settings"
-        android:icon="@drawable/settings_icon"
-        android:title="Settings"/>
-</menu>
\ No newline at end of file
diff --git a/app/src/main/res/values-land/dimens.xml b/app/src/main/res/values-land/dimens.xml
index 33ffafa..b8ad2de 100644
--- a/app/src/main/res/values-land/dimens.xml
+++ b/app/src/main/res/values-land/dimens.xml
@@ -2,4 +2,6 @@
 <resources>
     <dimen name="fragment_side_margin">30dp</dimen>
     <dimen name="fragment_icon_margin_start">20dp</dimen>
+    <dimen name="grid_icon_margin_start">10dp</dimen>
+
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 18855b2..2b40579 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -7,4 +7,5 @@
     <dimen name="grid_item_border">10dp</dimen>
     <dimen name="fragment_icon_margin_start">10dp</dimen>
     <dimen name="grid_item_icon_size">32dp</dimen>
+    <dimen name="grid_icon_margin_start">0dp</dimen>
 </resources>
\ No newline at end of file
