copilot-swe-agent[bot] 6ecb276a49 Integrate Webxdc WebView audio with Android media session
- Create WebxdcMediaSessionService: a MediaSessionService backed by a
  stub SimpleBasePlayer that posts the system media notification when
  webxdc apps play audio. Handles WEBXDC_AUDIO_STARTED/STOPPED/PAUSED/
  RESUMED custom SessionCommands from WebxdcActivity and relays
  notification play/pause button presses back to the WebView via
  local broadcasts.

- Modify WebxdcActivity:
  - Connect a MediaController to WebxdcMediaSessionService in onCreate
  - Add notifyAudioStarted/Stopped/Paused/Resumed JS interface methods
    in InternalJSApi (called from webxdc.js audio event listeners)
  - Register a BroadcastReceiver for notification pause/resume to call
    evaluateJavascript to pause/resume <audio>/<video> elements
  - Override pauseWebViewOnPause() to keep WebView running in background
    while audio is playing
  - Release controller and send AUDIO_STOPPED on destroy

- Modify WebViewActivity: add pauseWebViewOnPause() hook so subclasses
  can prevent webView.onPause() (e.g., during audio playback)

- Add audio/video event listener setup to webxdc.js that polls for
  audio/video elements and calls InternalJSApi.notifyAudio* when
  play/pause/ended events fire

- Register WebxdcMediaSessionService in AndroidManifest.xml with
  foregroundServiceType=mediaPlayback

Agent-Logs-Url: https://github.com/ArcaneChat/android/sessions/57af82f8-b482-4d5a-977f-fc74ffd48db3

Co-authored-by: adbenitez <24558636+adbenitez@users.noreply.github.com>
2026-04-12 19:59:25 +00:00
2026-04-03 17:18:08 +02:00
2024-07-15 17:59:28 +02:00
2025-03-09 00:55:45 +01:00
2020-09-15 23:57:22 +03:00
2025-03-10 22:39:13 +01:00
2024-11-11 16:22:55 +00:00
2025-11-17 16:54:57 +00:00
2025-12-05 23:18:41 +01:00
2025-10-16 16:02:49 +00:00
2025-11-22 22:43:21 +01:00

ArcaneChat Android Client

A Delta Chat client for Android. Learn more at: https://arcanechat.me

Get it on Google Play Get it on F-Droid Get it on GitHub

Screenshot Screenshot

WebXDC

This app has some extended support for WebXDC apps:

  • window.webxdc.arcanechat a string with the ArcaneChat version and can be used by app developers to detect when they can use the ArcaneChat-specific features.
  • sendToChat(): extra property subject can be set to a text string to set message/email's subject.
  • sendToChat(): extra property html can be set to a string of html markup to set the HTML part of the email/message.
  • sendToChat(): the file object parameter also accepts a type field that can be one of:
    • "sticker"
    • "image"
    • "audio"
    • "video"
    • "file" (default if type field is not present)
  • Inside apps, clicking external links is supported, ex. to open in browser, so you can include links to your website or donation pages.
  • manifest.toml field: orientation, if you set it to "landscape" your app will be launched in landscape mode.

Credits

This app is based on the official Delta Chat client with several improvements.

This app uses a modified version of the Chatmail Core Library.

S
Description
v2.55.0 Latest
2026-07-21 02:06:58 +02:00
Languages
Java 60.6%
HTML 35.9%
C 1.5%
Tcl 1.3%
Shell 0.4%
Other 0.1%