vendor_hardware_overlay/Picker/src/me/phh/treble/overlaypicker/Starter.java
2018-05-01 23:27:51 +02:00

52 lines
1.5 KiB
Java

package me.phh.treble.overlaypicker;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.om.IOverlayManager;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemProperties;
import android.util.Log;
public class Starter extends BroadcastReceiver {
private final static String TAG = "OverlayPicker";
private IOverlayManager om;
private String platform = SystemProperties.get("ro.board.platform");
private String vendorFp = SystemProperties.get("ro.vendor.build.fingerprint");
private String productBoard = SystemProperties.get("ro.product.board");
private void setOverlayEnabled(String o, boolean enabled) {
try {
om.setEnabled(o, true, 0);
} catch(RemoteException e) {
Log.d(TAG, "Failed to set overlay", e);
}
}
private void handleHtc(Context ctxt) {
//HTC U11+
if(vendorFp == null) return;
if(vendorFp.contains("htc_ocm"))
setOverlayEnabled("me.phh.treble.overlay.navbar", true);
}
private void enableLte(Context ctxt) {
//TODO: List here all non-LTE platforms
if(!"mt6580".equals(platform))
setOverlayEnabled("me.phh.treble.overlay.telephony.lte", true);
}
@Override
public void onReceive(Context ctxt, Intent intent) {
om = IOverlayManager.Stub.asInterface(
ServiceManager.getService(Context.OVERLAY_SERVICE));
handleHtc(ctxt);
enableLte(ctxt);
setOverlayEnabled("me.phh.treble.overlay.systemui.falselocks", true);
}
}