package com.peachpasswords.passkeys import android.app.Activity import android.app.PendingIntent import android.content.Context import android.content.Intent import android.os.Build import android.os.Bundle import androidx.credentials.exceptions.GetCredentialUnsupportedException import androidx.credentials.provider.PendingIntentHandler class PasskeyCredentialSelectionActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val result = Intent() PendingIntentHandler.setGetCredentialException( result, GetCredentialUnsupportedException("Peach passkey signing is not available yet."), ) setResult(RESULT_OK, result) finish() } companion object { private const val EXTRA_ENTRY_ID = "com.peachpasswords.passkeys.EXTRA_ENTRY_ID" fun pendingIntent(context: Context, entryId: String): PendingIntent { val intent = Intent(context, PasskeyCredentialSelectionActivity::class.java) .putExtra(EXTRA_ENTRY_ID, entryId) val mutableFlag = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) PendingIntent.FLAG_MUTABLE else 0 return PendingIntent.getActivity( context, entryId.hashCode(), intent, PendingIntent.FLAG_UPDATE_CURRENT or mutableFlag, ) } } }