package com.dss.tpservice.controller;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.graphics.Rect;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Message;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.WindowManager;
import com.dss.tpservice.WindowInfo;
import com.seewo.sdk.OpenSDK;
import com.seewo.sdk.SDKTouchHelper;
import com.seewo.vcommons.constants.SeewoPackages;
import com.seewo.vcommons.data.PropertiesUtils;
import java.util.HashMap;
import java.util.Map;

/* JADX INFO: loaded from: classes.dex */
public class TPControllerV2 implements ITPController {
    private static final String ACTION_PRINT_DATA = "action.print.tpservice_data";
    private static final String TAG = "TPController";
    private final Context mContext;
    private final Handler mDataHandler;
    private final Rect mDefaultDisplayRect;
    private final HandlerThread mHandlerDataThread;
    private final MyReceiver mMyReceiver;
    private final boolean mIsDebug = false;
    private final int CREATE_LAYER = 2457;
    private final int BLOCK_TRANSFER = 4096;
    private final int DELETE_LAYER = 4097;
    private final Map<String, WindowInfo> mHandleMap = new HashMap();

    public TPControllerV2(Context context) {
        this.mContext = context;
        HandlerThread handlerThread = new HandlerThread("Handle_Data_Thread");
        this.mHandlerDataThread = handlerThread;
        handlerThread.start();
        WindowManager windowManager = (WindowManager) context.getSystemService("window");
        DisplayMetrics displayMetrics = new DisplayMetrics();
        windowManager.getDefaultDisplay().getRealMetrics(displayMetrics);
        Rect rect = new Rect(0, 0, displayMetrics.widthPixels, displayMetrics.heightPixels);
        this.mDefaultDisplayRect = rect;
        Log.i(TAG, "default display rect = " + rect);
        this.mDataHandler = new Handler(handlerThread.getLooper()) { // from class: com.dss.tpservice.controller.TPControllerV2.1
            @Override // android.os.Handler
            public void handleMessage(Message message) {
                WindowInfo windowInfo = (WindowInfo) message.obj;
                if (message.what == 2457) {
                    if (windowInfo.getVisibility() != 0) {
                        SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                        TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                        return;
                    } else {
                        if (Rect.intersects(TPControllerV2.this.mDefaultDisplayRect, windowInfo.getContentFrame())) {
                            if ((windowInfo.getAttrs().flags & 16) != 0) {
                                SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                                TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                                return;
                            } else {
                                SDKTouchHelper.I.addOrUpdateNoTouchArea(windowInfo.getBinder().hashCode(), windowInfo.getContentFrame());
                                TPControllerV2.this.mHandleMap.put(windowInfo.getBinder(), windowInfo);
                                return;
                            }
                        }
                        SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                        TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                        return;
                    }
                }
                if (message.what == 4096) {
                    if (windowInfo.getVisibility() != 0) {
                        SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                        TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                        return;
                    } else {
                        if (Rect.intersects(TPControllerV2.this.mDefaultDisplayRect, windowInfo.getContentFrame())) {
                            if ((windowInfo.getAttrs().flags & 16) != 0) {
                                SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                                TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                                return;
                            } else {
                                SDKTouchHelper.I.addOrUpdateNoTouchArea(windowInfo.getBinder().hashCode(), windowInfo.getContentFrame());
                                TPControllerV2.this.mHandleMap.put(windowInfo.getBinder(), windowInfo);
                                return;
                            }
                        }
                        SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                        TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                        return;
                    }
                }
                if (message.what == 4097) {
                    SDKTouchHelper.I.removeNoTouchArea(windowInfo.getBinder().hashCode());
                    TPControllerV2.this.mHandleMap.remove(windowInfo.getBinder());
                }
            }
        };
        MyReceiver myReceiver = new MyReceiver();
        this.mMyReceiver = myReceiver;
        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction(ACTION_PRINT_DATA);
        context.registerReceiver(myReceiver, intentFilter, 2);
    }

    private boolean isLayersInValid(WindowInfo windowInfo) {
        return (2000 > windowInfo.getAttrs().type || windowInfo.getAttrs().type == 2013 || isSpecialWindow(windowInfo) || windowInfo.getAttrs().packageName.equals("com.ifpdos.ospip") || windowInfo.getAttrs().packageName.equals(SeewoPackages.EASIMARK_PACKAGE)) ? false : true;
    }

    private boolean isSpecialWindow(WindowInfo windowInfo) {
        return (windowInfo.getAttrs().packageName.equals("com.android.launcher3") && windowInfo.getAttrs().type == 2024 && "Taskbar".contentEquals(windowInfo.getAttrs().getTitle())) || (windowInfo.getAttrs().packageName.equals("com.android.systemui") && windowInfo.getAttrs().type == 2000 && "StatusBar".contentEquals(windowInfo.getAttrs().getTitle())) || ((windowInfo.getAttrs().packageName.equals(PropertiesUtils.PC_OFF_ACTION_CHANGE_ANDROID) && windowInfo.getAttrs().type == 2015 && !TextUtils.isEmpty(windowInfo.getAttrs().getTitle()) && windowInfo.getAttrs().getTitle().toString().contains("PointerLocation")) || (windowInfo.getAttrs().packageName.equals("com.seewo.osservice") && windowInfo.getAttrs().type == 2015 && "L_NO_TOUCH_AREA".contentEquals(windowInfo.getAttrs().getTitle())));
    }

    @Override // com.dss.tpservice.controller.ITPController
    public void createLayer(WindowInfo windowInfo) {
        if (windowInfo == null || windowInfo.getAttrs() == null || TextUtils.isEmpty(windowInfo.getAttrs().packageName) || !isLayersInValid(windowInfo)) {
            return;
        }
        if (OpenSDK.getInstance().isConnected()) {
            Message messageObtain = Message.obtain();
            messageObtain.what = 2457;
            messageObtain.obj = windowInfo;
            this.mDataHandler.sendMessage(messageObtain);
            return;
        }
        Log.i(TAG, "createLayer调用时，opensdk还没有初始化完成");
    }

    @Override // com.dss.tpservice.controller.ITPController
    public void blockTransfer(WindowInfo windowInfo) {
        if (windowInfo == null || windowInfo.getAttrs() == null || TextUtils.isEmpty(windowInfo.getAttrs().packageName) || !isLayersInValid(windowInfo)) {
            return;
        }
        if (OpenSDK.getInstance().isConnected()) {
            Message messageObtain = Message.obtain();
            messageObtain.what = 4096;
            messageObtain.obj = windowInfo;
            this.mDataHandler.sendMessage(messageObtain);
            return;
        }
        Log.i(TAG, "blockTransfer调用时，opensdk还没有初始化完成");
    }

    @Override // com.dss.tpservice.controller.ITPController
    public void deleteLayer(WindowInfo windowInfo) {
        if (windowInfo == null || windowInfo.getAttrs() == null || TextUtils.isEmpty(windowInfo.getAttrs().packageName) || !isLayersInValid(windowInfo)) {
            return;
        }
        if (OpenSDK.getInstance().isConnected()) {
            Message messageObtain = Message.obtain();
            messageObtain.what = 4097;
            messageObtain.obj = windowInfo;
            this.mDataHandler.sendMessage(messageObtain);
            return;
        }
        Log.i(TAG, "deleteLayer调用时，opensdk还没有初始化完成");
    }

    @Override // com.dss.tpservice.controller.ITPController
    public void release() {
        this.mDataHandler.removeCallbacksAndMessages(null);
        this.mHandlerDataThread.quitSafely();
        this.mContext.unregisterReceiver(this.mMyReceiver);
    }

    private class MyReceiver extends BroadcastReceiver {
        private MyReceiver() {
        }

        @Override // android.content.BroadcastReceiver
        public void onReceive(Context context, Intent intent) {
            if (TPControllerV2.ACTION_PRINT_DATA.equals(intent.getAction())) {
                for (WindowInfo windowInfo : TPControllerV2.this.mHandleMap.values()) {
                    Log.i(TPControllerV2.TAG, "Layer--->Binder = " + windowInfo.getBinder() + "，Rect = " + windowInfo.getContentFrame() + "，pkg = " + windowInfo.getAttrs().packageName + "，type = " + windowInfo.getAttrs().type + "，title = " + ((Object) windowInfo.getAttrs().getTitle()));
                }
            }
        }
    }
}
