feat(chat): add animated GIF rendering with tap-to-play animation (#721) (#731)

* feat(chat): add animated GIF rendering with tap-to-play animation

Closes #721

* fix(#721): add missing GifImageThumbnail component and format ktlint

* fix(analytics): resolve ktlint indentation error in itemsIndexed

* feat(chat): add interactive play/pause toggle for animated GIFs

* fix(chat): control GIF playback via Animatable start and stop
This commit is contained in:
M57 authored and GitHub committed 2026-07-27 18:32:45 +03:00
1 parent c7f7d1dd45
commit 5c1492a80e
32 files changed
+370 -118

No files matched your search

@@ -25,20 +25,28 @@ object LocaleContextWrapper {
*/
fun localeForCode(code: String): Locale =
when {
code.isEmpty() || code == SYSTEM_LANGUAGE -> Locale.getDefault()
code.isEmpty() || code == SYSTEM_LANGUAGE -> {
Locale.getDefault()
}
code.contains("-r", ignoreCase = true) -> {
val parts = code.split("-r", ignoreCase = true)
Locale(parts[0], parts.getOrElse(1) { "" })
}
code.contains("-") -> {
val parts = code.split("-")
Locale(parts[0], parts.getOrElse(1) { "" })
}
code.contains("_") -> {
val parts = code.split("_")
Locale(parts[0], parts.getOrElse(1) { "" })
}
else -> Locale(code)
else -> {
Locale(code)
}
}
/**