fix(wallet): resolve DI scope mismatch, WalletState constructors, packaging conflict

- CardanoWalletManager moved CardanoClient dep out of AppScope — was causing
  Metro MissingBinding at compile time (CardanoClient is SessionScope)
- refreshBalance() now takes balanceLovelace param instead of fetching from client
- WalletState constructor calls fixed with all required fields
- app/build.gradle.kts: added META-INF/gradle/incremental.annotation.processors
  to pickFirsts to resolve moshi-kotlin-codegen/lombok resource conflict
- App builds and launches successfully on emulator (verified)
This commit is contained in:
Kayos 2026-03-27 21:56:01 -07:00
parent c722ecb3a7
commit ad89eddfea
18 changed files with 149 additions and 89 deletions

View file

@ -18,6 +18,7 @@ import io.element.android.libraries.matrix.api.permalink.PermalinkParser
import io.element.android.libraries.matrix.api.roomlist.LatestEventValue
import io.element.android.libraries.matrix.api.timeline.item.event.AudioMessageType
import io.element.android.libraries.matrix.api.timeline.item.event.CallNotifyContent
import io.element.android.libraries.matrix.api.timeline.item.event.CustomEventContent
import io.element.android.libraries.matrix.api.timeline.item.event.EmoteMessageType
import io.element.android.libraries.matrix.api.timeline.item.event.EventContent
import io.element.android.libraries.matrix.api.timeline.item.event.FailedToParseMessageLikeContent
@ -122,6 +123,7 @@ class DefaultRoomLatestEventFormatter(
}
is LegacyCallInviteContent -> sp.getString(CommonStrings.common_unsupported_call)
is CallNotifyContent -> sp.getString(CommonStrings.common_call_started)
is CustomEventContent -> null
}?.take(DEFAULT_SAFE_LENGTH)
}

View file

@ -15,6 +15,7 @@ import io.element.android.libraries.eventformatter.api.TimelineEventFormatter
import io.element.android.libraries.eventformatter.impl.mode.RenderingMode
import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.api.timeline.item.event.CallNotifyContent
import io.element.android.libraries.matrix.api.timeline.item.event.CustomEventContent
import io.element.android.libraries.matrix.api.timeline.item.event.EventContent
import io.element.android.libraries.matrix.api.timeline.item.event.EventTimelineItem
import io.element.android.libraries.matrix.api.timeline.item.event.FailedToParseMessageLikeContent
@ -71,7 +72,8 @@ class DefaultTimelineEventFormatter(
is FailedToParseMessageLikeContent,
is FailedToParseStateContent,
is LiveLocationContent,
is UnknownContent -> {
is UnknownContent,
is CustomEventContent -> {
if (buildMeta.isDebuggable) {
error("You should not use this formatter for this event content: $content")
}