{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreiehc6rmcw4avqimwnftgikhyoe2zjknxsffjrjkv5pcdksjlrabia",
"uri": "at://did:plc:lk3jfj3zq4k4wxnk474axylu/app.bsky.feed.post/3mk7twthdg7q2"
},
"path": "/t/android-chatgpt-app-tool-widget-disappears-after-confirmation-with-destroyed-webview-warning/1379659#post_1",
"publishedAt": "2026-04-24T05:57:37.000Z",
"site": "https://community.openai.com",
"textContent": "### Summary\n\nIn the Android ChatGPT app, a tool-generated UI widget disappears immediately after a tool response is returned.\n\nThis happens in a flow where the user confirms a product-control action through a ChatGPT confirmation popup. Around the same time, logcat shows that the app attempted to call `evaluateJavascript()` on a destroyed WebView.\n\n### Reproduction Steps\n\n 1. Open the Android ChatGPT app.\n\n 2. Trigger a product-control action that generates a tool UI widget.\n\n 3. The ChatGPT app displays its own user confirmation popup for the requested control action.\n\n 4. Confirm the action.\n\n 5. The widget is rendered again.\n\n 6. When the tool response is returned, the widget disappears.\n\n\n\n\n### Actual Behavior\n\nThe widget disappears after the tool response.\n\nThe following warning appears in logcat:\n\n\n W cr_AwContents: Application attempted to call on a destroyed WebView\n java.lang.Throwable\n at com.android.webview.chromium.WebViewChromium.evaluateJavaScript(...)\n at android.webkit.WebView.evaluateJavascript(WebView.java:898)\n at m3d.run(...)\n\n\n### Expected Behavior\n\nThe widget should remain visible and update normally after the tool response is returned.\n\nThe app should not call `evaluateJavascript()` on a destroyed WebView.\n\n### Suspected Cause\n\nThis may be a WebView lifecycle race condition.\n\nA possible sequence is:\n\n\n Tool widget is created\n → ChatGPT confirmation popup appears\n → Existing widget WebView is destroyed or detached\n → Widget is re-rendered\n → Tool response arrives asynchronously\n → App tries to dispatch JavaScript to the old destroyed WebView\n → Widget disappears or fails to update\n\n\n### Request\n\nCould the Android ChatGPT team investigate whether the tool widget host is holding a stale WebView reference after the confirmation flow?\n\nThis issue seems related to calling `evaluateJavascript()` on a WebView that has already been destroyed.",
"title": "Android ChatGPT app: Tool widget disappears after confirmation, with destroyed WebView warning"
}