Add rich message bubble with inline media support (v1.5.0)

Features:
- Selectable text in all messages (fixes regression)
- Clickable links (auto-detected URLs with underline styling)
- Inline images/GIFs (jpg, png, gif, webp auto-displayed)
- YouTube embeds (shows thumbnail with play button overlay)
- Message parsing separates text from media content
- Uses Coil library for efficient image loading

Implementation:
- New RichMessageBubble component replaces ChatMessageBubble
- Parses message content into Text/Image/YouTube parts
- ClickableTextWithLinks handles URL detection and tap events
- ImageContent displays media with click-to-fullscreen
- YouTubeEmbed shows thumbnail and opens in YouTube app
- Added Coil dependencies (coil-compose + coil-gif)

Version: 1.5.0 (versionCode 41)
This commit is contained in:
2026-02-11 08:00:43 -08:00
parent 6d4ae2e5c3
commit eb15e29c8b
4 changed files with 333 additions and 4 deletions

View File

@@ -17,8 +17,8 @@ android {
applicationId = "com.openclaw.alfred"
minSdk = 26
targetSdk = 34
versionCode = 35
versionName = "1.4.1"
versionCode = 41
versionName = "1.5.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
@@ -132,6 +132,10 @@ dependencies {
// Vosk speech recognition for wake word
implementation("com.alphacephei:vosk-android:0.3.47")
// Coil for image loading
implementation("io.coil-kt:coil-compose:2.5.0")
implementation("io.coil-kt:coil-gif:2.5.0")
// Testing
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.5")