My thoughts for an initial MessageKit roadmap.
This is not set in stone and open for discussion:
Please comment below 馃槂
attributedText(NSAttributedString) for MessageLabelcellTopLabel / cellBottomLabelMessageLabelMessageTopCell and MessageBottomCellMessagesCollectionViewMessagesViewController that doesn't require any MessageKit protocolsThis seems like a very healthy roadmap! Remember though: semantic versioning is perfectly happy having 0.10.x and 0.11.x, so don鈥檛 feel trapped to go from 0.9.x straight to 1.0.0
Separately, when are you scheduling adapting to Swift 4? Or are you already compatible?
Other idea: UIView tintColor or a simple themeing engine?
I would suggest adding a custom message type support in v0.8.0 More allong the lines of making a protocol for message types that way anything can be supported but "we" (the library) has everything it needs to render the cell and knows what, if anything is to happen when it is selected. Then adding Photo and Video should be 馃嵃 cake.
I don't think we should even worry about this - Springy message bubbles only because it makes things more complicated. Unless some one knows how to do it reliably. It was always an experimental feature in JSQ. I would also like to work on performance before we went down that route. It's a non essential nice to have that may complicate development later IMO(in my opinion).
@MacMeDan Performance is always on the table. I was thinking of dedicating a version solely to performance but IMO this needs to be addressed constantly.
As for the custom messages, supporting video and photo messages is probably enough work for a single version. They should actually be independent of each other. I think custom messages will rely more on subclassing. I'll take a look at a custom message type before adding any media messages.
Springy bubbles are very low priority. I just added them because I want to address all possible features.
@fbartho Swift 4 conversion is most likely at the last minute, as discussed on Slack. I'm not sure what you were thinking for a theming engine.
As for the custom messages, supporting video and photo messages is probably enough work for a single version. They should actually be independent of each other. I think custom messages will rely more on subclassing. I'll take a look at a custom message type before adding any media messages.
I see this as more we implement the MessageProtocol to allow for any of these. There will be obvious ones we will want to support full featured.
For v0.5.0 it seems last thing to be done is:
Basic data detectors for MessageLabel ... (with a list of data types)
If no one is working on this (https://github.com/MessageKit/MessageKit/issues/71?), I'd be happy to start.
Could we add message reactions (thumb up emoji etc) to the roadmap? ;)
What a great idea @hyouuu -- I can't believe none of us had suggested that sooner!
@hyouuu Done 馃帀
Such an awesome & open community!!
I don't know in which version we would add these features but here are some cents from my side:
@hemangshah
Show/Hide user avatar, name, and short-handed message date/time.
I feel like we support hiding the avatar if you return a size of .zero but these all sound reasonable to get in
Send audio, Document (PDF, TXT) along with Photo and Video
I believe the plan is to allow users to eventually create their own cell types, but I don't think we're going to natively start supporting all documents as that'll rapidly get out of hand. What I think we should do is support URLs standalone. It should format much like how tweets/Slack etc all handle it where it extracts the title/logo/metadata etc which would include the file type.
Tapping on it should be handled by the user (so if you want to open it locally you can!)
Show the sent files all together for each of the chats
Feel like this can be done by the client already, given you know all the messages!
@hemangshah Those sound like great features we can definitely think about in the future but may need to be vetted a little. But I really like the direction. I definitely think
Send audio, Document (PDF, TXT) along with Photo and Video
Is much higher on the priority list because of its necessity in many chat applications.
Can we also have WhatsApp style message queued to send, sent, received and read indicators (In Progress, Single tick, Double tick and Colored double tick) to know the status of the message
@hiteshsondhi88 I think some of that is possible for sure but I'm not sure as to how soon we can support it. I was talking about this with a few other MessageKit members recently and we think the message status indicators are better suited to their own cell
Seems we don't keep track of what's changing anymore? ;)
Yeah @hyouuu not really keeping track with this, but a lot of these things are still unimplemented
@hiteshsondhi88 @SD10 I absolutely implemented it by overriding cellBottomLabelAttributedText:
func cellBottomLabelAttributedText(for message: MessageType, at _: IndexPath) -> NSAttributedString? {
let date: String = "\(self.messageDateFormatter.string(from: message.sentDate)) "
let label = NSMutableAttributedString(string: date, attributes: [
NSAttributedStringKey.font: UIFont(name: "Helvetica", size: 12.0)!
])
if let model = message as? MessageCellViewModel, self.isFromCurrentSender(message: message) {
let attachment = NSTextAttachment()
attachment.image = model.status.icon
attachment.bounds = CGRect(x: 0, y: -2.5, width: 15, height: 15)
label.append(NSAttributedString(attachment: attachment))
}
return label
}
Hello,
@SD10 , Can you update this issue? Or is there another place where this information is up to date?
I think the library supports audio messages and typing indicator.
Thanks
Hi, I see that the documentation does not mention PDF or TXT as a message type. I assume this isn't yet available? Are there plans to include this? Thanks.
+1 for message reactions! Since this has launched on many platforms now, it's become more and more used. We've actually had quite a few users request this
Most helpful comment
Could we add message reactions (thumb up emoji etc) to the roadmap? ;)