[Xiaomi Redmi 4X ROMs, Kernels, Recoveries, & Other] fincs:
Hello everyone,

I've recently acquired a Santoni, and I decided to install this custom ROM on it, particularly the Oreo version. So far I am pretty impressed by how well it runs; especially battery life, which I dare say is better than on stock MIUI.

Unfortunately I've found a few issues. Let me point out that I started off on the 20180327 version of the ROM, and today I upgraded to the stable 20180402 "ota" version. I also flashed OpenGApps "pico", as well as Magisk 16.3.

App permission page in settings crashes upon opening. I've done some debugging, and it seems that this crash is triggered by the "Use black theme" option in the "Configurations > Interface > Theming > Style" settings page. The package manager tries to load the colorControlNormal color value in ManagePermissionsFragment, which seems to be missing somehow in the black theme. Disabling the black theme is a workaround that fixes the crash. I think this problem may also be present in other RR ROMs. Here's an excerpt from logcat:

04-02 21:17:05.390 21388 21388 D AndroidRuntime: Shutting down VM
04-02 21:17:05.391 21388 21388 E AndroidRuntime: FATAL EXCEPTION: main
04-02 21:17:05.391 21388 21388 E AndroidRuntime: Process: com.google.android.packageinstaller, PID: 21388
04-02 21:17:05.391 21388 21388 E AndroidRuntime: android.content.res.Resources$NotFoundException: Resource ID #0x0
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.content.res.ResourcesImpl.getValue(ResourcesImpl.java:215)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.content.res.Resources.getColor(Resources.java:950)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.content.Context.getColor(Context.java:588)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.utils.Utils.applyTint(Utils.java:118)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.ui.handheld.ManagePermissionsFragment.updatePermissionsUi(ManagePermissionsFragment.java:135)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.ui.handheld.ManageStandardPermissionsFragment.updatePermissionsUi(ManageStandardPermissionsFragment.java:61)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.ui.handheld.ManagePermissionsFragment.onPermissionGroupsChanged(ManagePermissionsFragment.java:92)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.ui.handheld.ManageStandardPermissionsFragment.onPermissionGroupsChanged(Unknown Source:0)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.model.PermissionGroups.onLoadFinished(PermissionGroups.java:72)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.packageinstaller.permission.model.PermissionGroups.onLoadFinished(PermissionGroups.java:64)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.app.LoaderManagerImpl$LoaderInfo.callOnLoadFinished(LoaderManager.java:489)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.app.LoaderManagerImpl$LoaderInfo.onLoadComplete(LoaderManager.java:457)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.content.Loader.deliverResult(Loader.java:144)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.content.AsyncTaskLoader.dispatchOnLoadComplete(AsyncTaskLoader.java:268)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.content.AsyncTaskLoader$LoadTask.onPostExecute(AsyncTaskLoader.java:92)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.os.AsyncTask.finish(AsyncTask.java:695)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.os.AsyncTask.-wrap1(Unknown Source:0)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:712)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.os.Handler.dispatchMessage(Handler.java:106)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.os.Looper.loop(Looper.java:164)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at android.app.ActivityThread.main(ActivityThread.java:6499)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at java.lang.reflect.Method.invoke(Native Method)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:440)
04-02 21:17:05.391 21388 21388 E AndroidRuntime:	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
04-02 21:17:05.394 1341 4259 W ActivityManager: Force finishing activity com.google.android.packageinstaller/com.android.packageinstaller.permission.ui.ManagePermissionsActivity

Since the 20180402 build, it seems that the app switch hardware button now opens the context menu, and it is necessary to long-press said button in order to open the recents app list. It doesn't look like anything was changed in the keyboard layouts between the two ROM versions I tested, so I am at a loss as to what could be the problem. Oh, and despite config_deviceHardwareKeys appearing to have the right value, the hardware buttons settings page doesn't show configuration options for any of the three capacitive hardware buttons (App Switch / Home / Back), so it is currently not clear to me how to work around this problem.

Recording audio in the audio recorder app works, however the Media Library isn't updated and media player apps (I've tested Shuttle) can't see the new recording. Rebooting seems to refresh the Media Library and allow the recording to be played. Actually, other operations such as moving media files around with the file explorer might also fail to update the Media Library. Copying music over MTP seems to work just fine though (thankfully!).

Magisk ctsProfile fails (but basicIntegrity succeeds), despite Magisk Hide being used on Play Store, Play Services and Package Installer. I've heard that Universal SafetyNet Fix is a thing, however I'm not sure if it is compatible with this ROM and Magisk version.

Despite these issues, I am pretty satisfied with this ROM and I plan on keeping it as my daily driver. I'd like to thank everyone who was involved in its making. :)

I had the same problem after the upgrade, which was fixed after clearing data and cache of the Settings app itself.