[Lenovo Yoga Tab 3 Plus ROMs, Kernels, Recoveries, ] vladimiroltean:
Very logical and correct conclusion so far.

Hardware speaking, the display is naturally portrait (meaning, like a 10" phone). You can best see this in TWRP, where nobody bothered to change anything.

The stock ROM has been hacked by Lenovo to hide this and make everything look normal, at the bootloader level (see this guy and his rotated splash screens: https://xdaforums.com/android/development/guide-how-to-change-boot-logo-splash-t3683244) and at the framework level (Java/JNI stuff - all unpublished code).

We also had a patch to hide this the way we could, which was, up until 20180430, to use this patch: https://github.com/vladimiroltean/a...mmit/dfd76a81fc03dd7f5c70cd6b7eb2f0e315d17378. Basically, just like Lenovo did when they hacked the framework.

Now, the difference between Lenovo and us is that, while nobody cares what Lenovo did and they're not obligated to respond to anybody, if we ever wanted to become official with our LineageOS port, all patchings had to go.

Which means, I had the options of (a) leaving your tablet with "no makeup", which is like a phone, basically, or (b) finding another solution.

You have to think really hard if I'm really being an asshole, as I'm rephrasing this the 10th time already and you can't be bothered to read through.

You just responded to your own question in the same phrase. The fact that the Lineage install zip would clear the cached config is of no use when you're going the other way around and installing stock. So I took what is the most symmetrical and logical approach and made it that you need to remove the config in both cases.

Plus, you're literally complaining about having the convenience of having that zip at your disposal.

Nobody forces you to put up with these ridiculous and unbearable hurdles, you can leave anytime, you know.

Have I said anywhere that I am an expert?

As I said, the information is stored in two places.

The first place holds it in text form (/system/sensors/sensor_def_qcomdev.conf), and we distribute it with our builds (since it is under the incidence of the system partition). So does Lenovo, but our configuration is different (this file, to be precise: https://github.com/vladimiroltean/a...mmit/753abbb82800da7c963f73524a7ff58e36e95f46)

The second place is in binary form (/persist/sensors/sns.reg). The Qualcomm program we are talking about checks the existence of this file. If it exists it uses whatever's inside it. If it doesn't, it re-creates it from the text file above.

Words to live by. Try to reason more yourself.

Good for you. If you also know how Windows portable devices deal with the hardware sensor orientations, then all the more power to you.

But I also have to assume that if you knew that, you'd know that platform-level development has nothing to do with application development and hence you wouldn't have made this pointless comparison. Applications just work with what the platform provides them.

I'll say it again.

This has nothing to do with the people who created LineageOS or Cyanogenmod.

This has everything to do with the people at Qualcomm (whose platform-level applications we have to use if we want stuff to work) who created poorly thought-out software, and with me who tried to change it.

LMK if you need further clarification.