|
@@ -972,7 +972,7 @@ class ChatViewController: UITableViewController {
|
|
private func scrollToLastUnseenMessage() {
|
|
private func scrollToLastUnseenMessage() {
|
|
DispatchQueue.main.async { [weak self] in
|
|
DispatchQueue.main.async { [weak self] in
|
|
guard let self = self else { return }
|
|
guard let self = self else { return }
|
|
- if let markerMessageIndex = self.messageIds.index(of: Int(DC_MSG_ID_MARKER1)) {
|
|
|
|
|
|
+ if let markerMessageIndex = self.messageIds.firstIndex(of: Int(DC_MSG_ID_MARKER1)) {
|
|
let indexPath = IndexPath(row: markerMessageIndex, section: 0)
|
|
let indexPath = IndexPath(row: markerMessageIndex, section: 0)
|
|
self.tableView.scrollToRow(at: indexPath, at: .top, animated: false)
|
|
self.tableView.scrollToRow(at: indexPath, at: .top, animated: false)
|
|
} else {
|
|
} else {
|
|
@@ -1386,14 +1386,14 @@ class ChatViewController: UITableViewController {
|
|
}
|
|
}
|
|
|
|
|
|
func updateMessage(_ messageId: Int) {
|
|
func updateMessage(_ messageId: Int) {
|
|
- if messageIds.firstIndex(where: { $0 == messageId }) != nil {
|
|
|
|
|
|
+ if messageIds.firstIndex(of: messageId) != nil {
|
|
reloadData()
|
|
reloadData()
|
|
} else {
|
|
} else {
|
|
// new outgoing message
|
|
// new outgoing message
|
|
let msg = dcContext.getMessage(id: messageId)
|
|
let msg = dcContext.getMessage(id: messageId)
|
|
if msg.state != DC_STATE_OUT_DRAFT,
|
|
if msg.state != DC_STATE_OUT_DRAFT,
|
|
msg.chatId == chatId {
|
|
msg.chatId == chatId {
|
|
- if let newMsgMarkerIndex = messageIds.index(of: Int(DC_MSG_ID_MARKER1)) {
|
|
|
|
|
|
+ if let newMsgMarkerIndex = messageIds.firstIndex(of: Int(DC_MSG_ID_MARKER1)) {
|
|
messageIds.remove(at: newMsgMarkerIndex)
|
|
messageIds.remove(at: newMsgMarkerIndex)
|
|
}
|
|
}
|
|
insertMessage(msg)
|
|
insertMessage(msg)
|