Skip to content

Conversation

@VelikovPetar
Copy link
Contributor

@VelikovPetar VelikovPetar commented Jan 13, 2026

🎯 Goal

Moves the extensions from the :stream-chat-android-ui-utils module to the :stream-chat-android-ui-common module, and removes the now empty module.

🛠 Implementation details

Moves all utility methods from the ui-utils module to the ui-common:

  • io.getstream.chat.android.uiutils.model.MimeType -> io.getstream.chat.android.ui.common.model.MimeType
  • Extensions in package: io.getstream.chat.android.uiutils.extension -> io.getstream.chat.android.ui.common.utils.extensions package
  • io.getstream.chat.android.uiutils.util.EmojiUtil -> io.getstream.chat.android.ui.common.utils.EmojiUtil

Additionally, took the liberty to hide several methods from the public API:

  1. Date.isInLastMinute is now private
  2. String.containsLinks is now internal
  3. String.addSchemeToUrlIfNeeded is now marked as @InternalStreamChatApi
  4. Context.openSystemSettings is now marked as @InternalStreamChatApi
  5. adjustColorBrightness is now marked as @InternalStreamChatApi
    All of there methods are extensions on non-Stream classes and pollute the public namespace. Since they are also internal logic, I don't see a reason to expose them publicly. (If you think we should keep them public, I will be happy the revert this change)

Added some missing tests.

Deletes the module and removes its usage.

🎨 UI Changes

NA

🧪 Testing

Not much to test, now customers don't need to add the ui-utils module, they can access the same methods from the UI SDKs.

@github-actions
Copy link
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-chat-android-client 5.25 MB 5.25 MB 0.00 MB 🟢
stream-chat-android-offline 5.48 MB 5.48 MB 0.00 MB 🟢
stream-chat-android-ui-components 10.60 MB 10.59 MB -0.01 MB 🚀
stream-chat-android-compose 12.81 MB 11.65 MB -1.16 MB 🚀

@VelikovPetar VelikovPetar marked this pull request as ready for review January 13, 2026 18:47
@VelikovPetar VelikovPetar requested a review from a team as a code owner January 13, 2026 18:47
@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
73.3% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

@gpunto gpunto merged commit af04cd9 into v7 Jan 14, 2026
17 of 19 checks passed
@gpunto gpunto deleted the feature/AND-1017_delete_ui_utils_module branch January 14, 2026 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants