From 4f4d689f5af5348155279cf5529c377bcc3ea30e Mon Sep 17 00:00:00 2001 From: greenart7c3 Date: Fri, 25 Aug 2023 05:45:39 -0300 Subject: [PATCH] fix build, use keyPair in textnoteevent, check if loggedInWithAmber in newpostview --- .../main/java/com/vitorpamplona/amethyst/model/Account.kt | 3 +-- .../amethyst/service/NostrAccountDataSource.kt | 1 + .../com/vitorpamplona/amethyst/ui/actions/NewPostView.kt | 6 ++++-- .../com/vitorpamplona/amethyst/ui/actions/SignerDialog.kt | 2 +- .../java/com/vitorpamplona/quartz/events/TextNoteEvent.kt | 7 ++++--- 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt b/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt index ef303f941..22b0b6784 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt @@ -880,8 +880,7 @@ class Account( root = root, directMentions = directMentions, geohash = geohash, - pubKey = keyPair.pubKey.toHexKey(), - privateKey = keyPair.privKey + keyPair = keyPair ) if (!signEvent) { diff --git a/app/src/main/java/com/vitorpamplona/amethyst/service/NostrAccountDataSource.kt b/app/src/main/java/com/vitorpamplona/amethyst/service/NostrAccountDataSource.kt index 9a91ccaf2..aa56888f4 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/service/NostrAccountDataSource.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/service/NostrAccountDataSource.kt @@ -30,6 +30,7 @@ import com.vitorpamplona.quartz.events.ReactionEvent import com.vitorpamplona.quartz.events.ReportEvent import com.vitorpamplona.quartz.events.RepostEvent import com.vitorpamplona.quartz.events.SealedGossipEvent +import com.vitorpamplona.quartz.events.StatusEvent import com.vitorpamplona.quartz.events.TextNoteEvent object NostrAccountDataSource : NostrDataSource("AccountData") { diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/NewPostView.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/NewPostView.kt index 23c1f6073..ecd83e2ec 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/NewPostView.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/NewPostView.kt @@ -234,8 +234,10 @@ fun NewPostView( PostButton( onPost = { scope.launch(Dispatchers.IO) { - postViewModel.sendPost(relayList = relayList) - onClose() + event = postViewModel.sendPost(relayList = relayList, !accountViewModel.loggedInWithAmber()) + if (!accountViewModel.loggedInWithAmber()) { + onClose() + } } }, isActive = postViewModel.canPost() diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/SignerDialog.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/SignerDialog.kt index c176d402b..099c910bf 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/SignerDialog.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/actions/SignerDialog.kt @@ -143,7 +143,7 @@ fun SignerDialog( verticalAlignment = Alignment.CenterVertically ) { CloseButton( - onCancel = { + onPress = { onClose() } ) diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/events/TextNoteEvent.kt b/quartz/src/main/java/com/vitorpamplona/quartz/events/TextNoteEvent.kt index ef27bbe4c..288b034ce 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/events/TextNoteEvent.kt +++ b/quartz/src/main/java/com/vitorpamplona/quartz/events/TextNoteEvent.kt @@ -6,6 +6,7 @@ import com.linkedin.urls.detection.UrlDetectorOptions import com.vitorpamplona.quartz.utils.TimeUtils import com.vitorpamplona.quartz.encoders.toHexKey import com.vitorpamplona.quartz.crypto.CryptoUtils +import com.vitorpamplona.quartz.crypto.KeyPair import com.vitorpamplona.quartz.encoders.ATag import com.vitorpamplona.quartz.encoders.HexKey @@ -37,8 +38,7 @@ class TextNoteEvent( root: String?, directMentions: Set, geohash: String? = null, - pubKey: HexKey, - privateKey: ByteArray?, + keyPair: KeyPair, createdAt: Long = TimeUtils.now() ): TextNoteEvent { val tags = mutableListOf>() @@ -95,8 +95,9 @@ class TextNoteEvent( tags.add(listOf("g", it)) } + val pubKey = keyPair.pubKey.toHexKey() val id = generateId(pubKey, createdAt, kind, tags, msg) - val sig = if (privateKey == null) null else CryptoUtils.sign(id, privateKey) + val sig = if (keyPair.privKey == null) null else CryptoUtils.sign(id, keyPair.privKey) return TextNoteEvent(id.toHexKey(), pubKey, createdAt, tags, msg, sig?.toHexKey() ?: "") } }