Start migrating Anvil KSP to Metro
This commit is contained in:
parent
d4d57b1e21
commit
b76a71ebf5
703 changed files with 3523 additions and 2820 deletions
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
package io.element.android.libraries.textcomposer.mentions
|
||||
|
||||
import com.squareup.anvil.annotations.ContributesBinding
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import io.element.android.libraries.matrix.api.core.RoomIdOrAlias
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.ui.messages.RoomMemberProfilesCache
|
||||
import io.element.android.libraries.matrix.ui.messages.RoomNamesCache
|
||||
import javax.inject.Inject
|
||||
import dev.zacsweers.metro.Inject
|
||||
|
||||
private const val EVERYONE_DISPLAY_TEXT = "@room"
|
||||
private const val BUBBLE_ICON = "\uD83D\uDCAC" // 💬
|
||||
|
|
@ -28,7 +28,8 @@ interface MentionSpanFormatter {
|
|||
* based on its MentionType and context.
|
||||
*/
|
||||
@ContributesBinding(RoomScope::class)
|
||||
class DefaultMentionSpanFormatter @Inject constructor(
|
||||
@Inject
|
||||
class DefaultMentionSpanFormatter(
|
||||
private val roomMemberProfilesCache: RoomMemberProfilesCache,
|
||||
private val roomNamesCache: RoomNamesCache,
|
||||
) : MentionSpanFormatter {
|
||||
|
|
|
|||
|
|
@ -12,14 +12,15 @@ import io.element.android.libraries.matrix.api.core.RoomIdOrAlias
|
|||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.api.permalink.PermalinkData
|
||||
import io.element.android.libraries.matrix.api.permalink.PermalinkParser
|
||||
import javax.inject.Inject
|
||||
import dev.zacsweers.metro.Inject
|
||||
|
||||
private const val EVERYONE_MENTION_TEXT = "@room"
|
||||
|
||||
/**
|
||||
* Provider for [MentionSpan]s.
|
||||
*/
|
||||
open class MentionSpanProvider @Inject constructor(
|
||||
open @Inject
|
||||
class MentionSpanProvider(
|
||||
private val permalinkParser: PermalinkParser,
|
||||
private val mentionSpanFormatter: MentionSpanFormatter,
|
||||
private val mentionSpanTheme: MentionSpanTheme,
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ import io.element.android.libraries.designsystem.theme.components.Text
|
|||
import io.element.android.libraries.designsystem.theme.messageFromMeBackground
|
||||
import io.element.android.libraries.designsystem.theme.messageFromOtherBackground
|
||||
import io.element.android.libraries.di.SessionScope
|
||||
import io.element.android.libraries.di.SingleIn
|
||||
import dev.zacsweers.metro.SingleIn
|
||||
import io.element.android.libraries.matrix.api.MatrixClient
|
||||
import io.element.android.libraries.matrix.api.core.RoomAlias
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
|
|
@ -46,7 +46,7 @@ import io.element.android.libraries.matrix.api.core.toRoomIdOrAlias
|
|||
import io.element.android.libraries.matrix.api.permalink.PermalinkData
|
||||
import io.element.android.libraries.matrix.api.permalink.PermalinkParser
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
import javax.inject.Inject
|
||||
import dev.zacsweers.metro.Inject
|
||||
|
||||
/**
|
||||
* Theme used for mention spans.
|
||||
|
|
|
|||
|
|
@ -12,12 +12,12 @@ import androidx.compose.runtime.collectAsState
|
|||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.staticCompositionLocalOf
|
||||
import com.squareup.anvil.annotations.ContributesBinding
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import io.element.android.libraries.matrix.ui.messages.RoomMemberProfilesCache
|
||||
import io.element.android.libraries.matrix.ui.messages.RoomNamesCache
|
||||
import javax.inject.Inject
|
||||
import dev.zacsweers.metro.Inject
|
||||
|
||||
interface MentionSpanUpdater {
|
||||
fun updateMentionSpans(text: CharSequence): CharSequence
|
||||
|
|
@ -27,7 +27,8 @@ interface MentionSpanUpdater {
|
|||
}
|
||||
|
||||
@ContributesBinding(RoomScope::class)
|
||||
class DefaultMentionSpanUpdater @Inject constructor(
|
||||
@Inject
|
||||
class DefaultMentionSpanUpdater(
|
||||
private val formatter: MentionSpanFormatter,
|
||||
private val theme: MentionSpanTheme,
|
||||
private val roomMemberProfilesCache: RoomMemberProfilesCache,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue