feat: Enhance chat UI with group invite handling and new download indicator

- Added support for standalone group invites in MessageBubble component.
- Improved bubble padding and width handling for group invites.
- Refactored MessageBubble to streamline background and border logic.
- Introduced AnimatedDownloadIndicator for a more engaging download experience.
- Created ThemeWallpapers data structure to manage chat wallpapers.
- Implemented WallpaperSelectorRow and WallpaperSelectorItem for theme customization.
- Updated ThemeScreen to allow wallpaper selection and preview.
- Added new drawable resources for download and search icons.
This commit is contained in:
2026-03-02 23:40:44 +05:00
parent 16c48992a5
commit 8c7ac53506
47 changed files with 2169 additions and 559 deletions

View File

@@ -490,6 +490,42 @@ interface MessageDao {
"""
)
suspend fun updateDeliveryStatusAndTimestamp(account: String, messageId: String, status: Int, timestamp: Long)
// ═══════════════════════════════════════════════════════════
// 🔍 SEARCH: Media, Files
// ═══════════════════════════════════════════════════════════
/**
* Получить сообщения с IMAGE вложениями (type: 0)
* Для вкладки "Media" в поиске
*/
@Query(
"""
SELECT * FROM messages
WHERE account = :account
AND attachments != '[]'
AND attachments LIKE '%"type":0%'
ORDER BY timestamp DESC
LIMIT :limit OFFSET :offset
"""
)
suspend fun getMessagesWithMedia(account: String, limit: Int, offset: Int): List<MessageEntity>
/**
* Получить сообщения с FILE вложениями (type: 2)
* Для вкладки "Files" в поиске
*/
@Query(
"""
SELECT * FROM messages
WHERE account = :account
AND attachments != '[]'
AND attachments LIKE '%"type":2%'
ORDER BY timestamp DESC
LIMIT :limit OFFSET :offset
"""
)
suspend fun getMessagesWithFiles(account: String, limit: Int, offset: Int): List<MessageEntity>
}
/** DAO для работы с диалогами */