mirror of
https://github.com/meshtastic/Meshtastic-Apple.git
synced 2026-04-20 22:13:56 +00:00
Put tapbacks in an enum
This commit is contained in:
parent
6c0c7d026b
commit
c27d97062d
3 changed files with 67 additions and 87 deletions
|
|
@ -9,3 +9,56 @@ enum BubblePosition {
|
|||
case left
|
||||
case right
|
||||
}
|
||||
|
||||
enum Tapbacks: Int, CaseIterable, Identifiable {
|
||||
|
||||
case heart = 0
|
||||
case thumbsUp = 1
|
||||
case thumbsDown = 2
|
||||
case haHa = 3
|
||||
case exclamation = 4
|
||||
case question = 5
|
||||
case poop = 6
|
||||
|
||||
var id: Int { self.rawValue }
|
||||
var emojiString: String {
|
||||
get {
|
||||
switch self {
|
||||
case .heart:
|
||||
return "❤️"
|
||||
case .thumbsUp:
|
||||
return "👍"
|
||||
case .thumbsDown:
|
||||
return "👎"
|
||||
case .haHa:
|
||||
return "🤣"
|
||||
case .exclamation:
|
||||
return "‼️"
|
||||
case .question:
|
||||
return "❓"
|
||||
case .poop:
|
||||
return "💩"
|
||||
}
|
||||
}
|
||||
}
|
||||
var description: String {
|
||||
get {
|
||||
switch self {
|
||||
case .heart:
|
||||
return "Heart"
|
||||
case .thumbsUp:
|
||||
return "Thumbs Up"
|
||||
case .thumbsDown:
|
||||
return "Thumbs Down"
|
||||
case .haHa:
|
||||
return "HaHa"
|
||||
case .exclamation:
|
||||
return "Exclamation Mark"
|
||||
case .question:
|
||||
return "Question Mark"
|
||||
case .poop:
|
||||
return "Poop"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,6 @@ struct Contacts: View {
|
|||
animation: .default)
|
||||
|
||||
private var users: FetchedResults<UserEntity>
|
||||
|
||||
private var prefferedNode: NodeInfoEntity?
|
||||
|
||||
@FetchRequest(
|
||||
|
|
|
|||
|
|
@ -69,94 +69,22 @@ struct MessageList: View {
|
|||
.background(currentUser ? Color.blue : Color(.darkGray))
|
||||
.cornerRadius(15)
|
||||
.contextMenu {
|
||||
VStack{
|
||||
Text("Channel: \(message.channel)")
|
||||
}
|
||||
Menu("Tapback response") {
|
||||
|
||||
Button(action: {
|
||||
if bleManager.sendMessage(message: "❤️", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
print("Sent ❤️ Tapback")
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
} else { print("❤️ Tapback Failed") }
|
||||
|
||||
}) {
|
||||
Text("Heart")
|
||||
let image = "❤️".image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
Button(action: {
|
||||
|
||||
if bleManager.sendMessage(message: "👍", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
ForEach(Tapbacks.allCases) { tb in
|
||||
Button(action: {
|
||||
if bleManager.sendMessage(message: tb.description, toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
print("Sent \(tb.description) Tapback")
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
} else { print("\(tb.description) Tapback Failed") }
|
||||
|
||||
print("Sent 👍 Tapback")
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
|
||||
} else { print("👍 Tapback Failed")}
|
||||
|
||||
}) {
|
||||
Text("Thumbs Up")
|
||||
let image = "👍".image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
Button(action: {
|
||||
|
||||
if bleManager.sendMessage(message: "👎", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
|
||||
print("Sent 👎 Tapback")
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
|
||||
} else { print("👎 Tapback Failed") }
|
||||
|
||||
}) {
|
||||
Text("Thumbs Down")
|
||||
let image = "👎".image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
Button(action: {
|
||||
|
||||
if bleManager.sendMessage(message: "🤣", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
|
||||
print("Sent 🤣 Tapback")
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
|
||||
} else { print("🤣 Tapback Failed") }
|
||||
|
||||
}) {
|
||||
Text("HaHa")
|
||||
let image = "🤣".image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
Button(action: {
|
||||
|
||||
if bleManager.sendMessage(message: "‼️", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
|
||||
print("Sent ‼️ Tapback")
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
|
||||
} else { print("‼️ Tapback Failed") }
|
||||
|
||||
}) {
|
||||
Text("Exclamation Mark")
|
||||
let image = "‼️".image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
Button(action: {
|
||||
if bleManager.sendMessage(message: "❓", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
print("Sent ❓ Tapback")
|
||||
} else { print("❓ Tapback Failed") }
|
||||
}) {
|
||||
Text("Question Mark")
|
||||
let image = "❓".image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
Button(action: {
|
||||
if bleManager.sendMessage(message: "💩", toUserNum: user.num, isEmoji: true, replyID: message.messageId) {
|
||||
self.context.refresh(user, mergeChanges: true)
|
||||
print("Sent 💩 Tapback")
|
||||
} else { print("💩 Tapback Failed") }
|
||||
}) {
|
||||
Text("Poop")
|
||||
let image = "💩".image()
|
||||
Image(uiImage: image!)
|
||||
}) {
|
||||
Text(tb.description)
|
||||
let image = tb.emojiString.image()
|
||||
Image(uiImage: image!)
|
||||
}
|
||||
}
|
||||
}
|
||||
Button(action: {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue