OmniControl: OmniRemote deserves its own top level grid item

Change-Id: I39acab0569c681d37fe2d9e909edbc168e928a4e
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
index 0577e1d..c08862a 100644
--- a/.idea/codeStyles/Project.xml
+++ b/.idea/codeStyles/Project.xml
@@ -24,6 +24,9 @@
         </value>
       </option>
     </JavaCodeStyleSettings>
+    <JetCodeStyleSettings>
+      <option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
+    </JetCodeStyleSettings>
     <codeStyleSettings language="XML">
       <indentOptions>
         <option name="CONTINUATION_INDENT_SIZE" value="4" />
@@ -136,5 +139,8 @@
         </rules>
       </arrangement>
     </codeStyleSettings>
+    <codeStyleSettings language="kotlin">
+      <option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
+    </codeStyleSettings>
   </code_scheme>
 </component>
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 2821f80..b7a738d 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -28,8 +28,9 @@
         <entry key="app/src/main/res/drawable/ic_launcher_background.xml" value="0.3067708333333333" />
         <entry key="app/src/main/res/drawable/ic_launcher_foreground.xml" value="0.2869791666666667" />
         <entry key="app/src/main/res/drawable/ic_lockscreen_tile.xml" value="0.5130208333333334" />
+        <entry key="app/src/main/res/drawable/ic_remote.xml" value="0.4436936936936937" />
         <entry key="app/src/main/res/drawable/ic_settings_buttons.xml" value="0.3078125" />
-        <entry key="app/src/main/res/drawable/ic_settings_leds.xml" value="4979166666666667" />
+        <entry key="app/src/main/res/drawable/ic_settings_leds.xml" value="4.979166666666667E15" />
         <entry key="app/src/main/res/drawable/ic_settings_more.xml" value="0.30885416666666665" />
         <entry key="app/src/main/res/drawable/ic_settings_omnigears.xml" value="0.3098958333333333" />
         <entry key="app/src/main/res/drawable/ic_settings_overlays.xml" value="0.3078125" />
@@ -61,8 +62,8 @@
         <entry key="app/src/main/res/menu/bottom_navigation.xml" value="0.2375" />
         <entry key="app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml" value="0.3067708333333333" />
         <entry key="app/src/main/res/xml/applist_preferences.xml" value="0.4979166666666667" />
-        <entry key="app/src/main/res/xml/battery_light_settings_preferences.xml" value="0.4979166666666667" />
         <entry key="app/src/main/res/xml/bars_settings_preferences.xml" value="0.3098958333333333" />
+        <entry key="app/src/main/res/xml/battery_light_settings_preferences.xml" value="0.4979166666666667" />
         <entry key="app/src/main/res/xml/bottom_navigation.xml" value="0.2375" />
         <entry key="app/src/main/res/xml/button_settings_preferences.xml" value="0.4979166666666667" />
         <entry key="app/src/main/res/xml/lockscreen_settings_preferences.xml" value="0.49583333333333335" />
diff --git a/app/src/main/java/org/omnirom/control/AppListFragment.kt b/app/src/main/java/org/omnirom/control/AppListFragment.kt
index 5764d21..76b4e57 100644
--- a/app/src/main/java/org/omnirom/control/AppListFragment.kt
+++ b/app/src/main/java/org/omnirom/control/AppListFragment.kt
@@ -75,12 +75,12 @@
             resources.getString(R.string.matlog_summary)
         )
 
-        appManager.addApp(
+        /*appManager.addApp(
             "org.omnirom.omniremote",
             "org.omnirom.omniremote.MainActivity",
             resources.getString(R.string.omni_remote_title),
             resources.getString(R.string.omni_remote_summary)
-        )
+        )*/
 
         appManager.addApp(
             "org.omnirom.omnistore",
diff --git a/app/src/main/java/org/omnirom/control/GridViewFragment.kt b/app/src/main/java/org/omnirom/control/GridViewFragment.kt
index ca9a7f4..cb9777f 100644
--- a/app/src/main/java/org/omnirom/control/GridViewFragment.kt
+++ b/app/src/main/java/org/omnirom/control/GridViewFragment.kt
@@ -118,6 +118,14 @@
                 LockscreenSettingsFragment()
             )
         )
+        gridItems.add(
+            FragmentGridItem(
+                R.string.overlays_settings_title,
+                R.string.overlays_settings_summary,
+                R.drawable.ic_settings_overlays,
+                OverlaysFragment()
+            )
+        )
         if (Utils.isAvailableApp(requireContext(), "org.omnirom.omnistyle")) {
             val intent = Intent()
             intent.component = ComponentName(
@@ -193,14 +201,21 @@
                 )
             )
         }
-        gridItems.add(
-            FragmentGridItem(
-                R.string.overlays_settings_title,
-                R.string.overlays_settings_summary,
-                R.drawable.ic_settings_overlays,
-                OverlaysFragment()
+        if (Utils.isAvailableApp(requireContext(), "org.omnirom.omniremote")) {
+            val intent = Intent()
+            intent.component = ComponentName(
+                    "org.omnirom.omniremote",
+                    "org.omnirom.omniremote.MainActivity"
             )
-        )
+            gridItems.add(
+                    IntentGridItem(
+                            R.string.omni_remote_title,
+                            R.string.omni_remote_summary,
+                            R.drawable.ic_remote,
+                            intent
+                    )
+            )
+        }
         gridItems.add(
             FragmentGridItem(
                 R.string.more_settings_title,
diff --git a/app/src/main/res/drawable/ic_remote.xml b/app/src/main/res/drawable/ic_remote.xml
new file mode 100644
index 0000000..b9497dd
--- /dev/null
+++ b/app/src/main/res/drawable/ic_remote.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?><!-- drawable/monitor_cellphone.xml -->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:tint="?android:textColorPrimary"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M23,11H18A1,1 0 0,0 17,12V21A1,1 0 0,0 18,22H23A1,1 0 0,0 24,21V12A1,1 0 0,0 23,11M23,20H18V13H23V20M20,2H2C0.89,2 0,2.89 0,4V16A2,2 0 0,0 2,18H9V20H7V22H15V20H13V18H15V16H2V4H20V9H22V4C22,2.89 21.1,2 20,2Z" />
+</vector>
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 5bfa271..37c15a9 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -4,7 +4,7 @@
 
     <string name="weather_config_title">Weather provider</string>
     <string name="weather_config_summary">Configure provider settings</string>
-    <string name="omni_remote_title">OmniRemote</string>
+    <string name="omni_remote_title">Remote access</string>
     <string name="omni_remote_summary">VNC server to allow remote connection to device</string>
     <string name="matlog_title">MatLog</string>
     <string name="matlog_summary">Show logcat</string>
diff --git a/build.gradle b/build.gradle
index 01e526c..2b14126 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,7 +5,7 @@
         mavenCentral()
     }
     dependencies {
-        classpath "com.android.tools.build:gradle:7.0.3"
+        classpath 'com.android.tools.build:gradle:7.0.4'
         classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.0-RC"
 
         // NOTE: Do not place your application dependencies here; they belong