AddEmojiView.swift (1566B)
1 // 2 // AddEmojiView.swift 3 // damus 4 // 5 // Created by Suhail Saqan on 7/16/23. 6 // 7 8 import SwiftUI 9 10 struct AddEmojiView: View { 11 @Binding var emoji: String 12 13 var body: some View { 14 ZStack(alignment: .leading) { 15 HStack{ 16 TextField(NSLocalizedString("⚡", comment: "Placeholder example for an emoji reaction"), text: $emoji) 17 .padding(2) 18 .padding(.leading, 25) 19 .opacity(emoji == "" ? 0.5 : 1) 20 .autocorrectionDisabled(true) 21 .textInputAutocapitalization(.never) 22 .onChange(of: emoji) { newEmoji in 23 if let lastEmoji = newEmoji.last.map(String.init), isValidEmoji(lastEmoji) { 24 self.emoji = lastEmoji 25 } else { 26 self.emoji = "" 27 } 28 } 29 30 Label("", image: "close-circle") 31 .foregroundColor(.accentColor) 32 .padding(.trailing, -25.0) 33 .opacity((emoji == "") ? 0.0 : 1.0) 34 .onTapGesture { 35 self.emoji = "" 36 } 37 } 38 39 Label("", image: "copy2") 40 .padding(.leading, -10) 41 .onTapGesture { 42 if let pastedEmoji = UIPasteboard.general.string { 43 self.emoji = pastedEmoji 44 } 45 } 46 } 47 } 48 }