feat: recent url sharing #160

Merged
PeterCxy merged 1 commit from septs/OpenEUICC:recent-url-sharing into master 2025-03-08 16:54:54 +01:00
2 changed files with 28 additions and 0 deletions

View file

@ -1,5 +1,6 @@
package im.angry.openeuicc.ui.wizard package im.angry.openeuicc.ui.wizard
import android.app.assist.AssistContent
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import android.view.inputmethod.InputMethodManager import android.view.inputmethod.InputMethodManager
@ -8,6 +9,7 @@ import android.widget.ProgressBar
import android.widget.Toast import android.widget.Toast
import androidx.activity.OnBackPressedCallback import androidx.activity.OnBackPressedCallback
import androidx.activity.enableEdgeToEdge import androidx.activity.enableEdgeToEdge
import androidx.core.net.toUri
import androidx.core.view.ViewCompat import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
@ -111,6 +113,21 @@ class DownloadWizardActivity: BaseEuiccAccessActivity() {
} }
} }
override fun onProvideAssistContent(outContent: AssistContent?) {
super.onProvideAssistContent(outContent)
outContent?.webUri = try {
val activationCode = ActivationCode(
state.smdp,
state.matchingId,
null,
state.confirmationCode != null,
)
"LPA:$activationCode".toUri()
} catch (_: Exception) {
null
}
}
override fun onSaveInstanceState(outState: Bundle) { override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState) super.onSaveInstanceState(outState)
outState.putString("currentStepFragmentClassName", state.currentStepFragmentClassName) outState.putString("currentStepFragmentClassName", state.currentStepFragmentClassName)

View file

@ -20,4 +20,15 @@ data class ActivationCode(
) )
} }
} }
override fun toString(): String {
val parts = arrayOf(
"1",
address,
matchingId ?: "",
oid ?: "",
if (confirmationCodeRequired) "1" else ""
)
return parts.joinToString("$").trimEnd('$')
}
} }