diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index b4c324b928..a9b0aa3018 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -76,9 +76,11 @@ + runOnUiThread { + button.isEnabled = true + Toast.makeText( + this, + "Failed to clear session state: ${err.message}", + Toast.LENGTH_SHORT, + ).show() + } + }.onSuccess { + runOnUiThread { + finish() + } + } + } + } + + private fun cancelAgentSession( + sessionId: String, + button: Button, + ) { + button.isEnabled = false + thread(name = "CodexSessionPopupCancel-$sessionId") { + runCatching { + sessionController.cancelSession(sessionId) + }.onFailure { err -> + runOnUiThread { + button.isEnabled = true + Toast.makeText( + this, + "Failed to clear session state: ${err.message}", + Toast.LENGTH_SHORT, + ).show() + } + }.onSuccess { + runOnUiThread { + finish() + } + } + } + } + + private fun isTopLevelAgentSession(session: AgentSessionDetails): Boolean { + return session.anchor == AgentSessionInfo.ANCHOR_AGENT && + session.parentSessionId == null + } + private fun isTopLevelHomeSession(session: AgentSessionDetails): Boolean { return session.anchor == AgentSessionInfo.ANCHOR_HOME && session.parentSessionId == null diff --git a/android/app/src/main/res/layout/activity_session_result_popup.xml b/android/app/src/main/res/layout/activity_session_result_popup.xml index 0a7653aaf9..043951ea54 100644 --- a/android/app/src/main/res/layout/activity_session_result_popup.xml +++ b/android/app/src/main/res/layout/activity_session_result_popup.xml @@ -14,9 +14,8 @@