forked from sumanthk2006/AcaniChat
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO.taskpaper
55 lines (50 loc) · 2.59 KB
/
TODO.taskpaper
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
AcaniChat:
ConversationsView:
UITableView of all the conversations, AKA threads or channels
- Add ConversationsViewController : UITableViewController
- Add search bar to search all conversations
http://www.iphonesdkarticles.com/2009/01/uitableview-searching-table-view.html
ChatView:
One-on-one chat
- Handle errors better
- Improve scrolling performance of chatContent @issue
(subclass UITableViewCell & implement drawRect)
- After clear all, fix horizontal positioning of outbound messages @issue
- chatInput resign first responder on app suspend @issue
- When chatInput grows taller, chatContent should shrink @issue
- On compose newline, scroll chatContent to bottom if not already
- On edit chatContent, slide down chatInput (off screen)
- Remove animation of first message @issue
- View more recent messages button
- Show sending... progress indicator
- Add arrow accessory icon for phone numbers, email, and websites
- Animate message send (going from chatInput to chatContent)
- Use checkbox editing style and add Delete & Forward buttons @filebug
- File bug with Apple about whitespace around messages before sending @filebug
- Get high-res images for send button (and decrease width of send button)
- See sam's version on how he shrinks & expands chatContent
Landscape Rotation:
- Portrait => landscape: vertical position should stay at bottom @issue
- Fix horizontal positioning of messages @issue
- Landscape => portrait while composing: fill entire window (don't show black background) @issue
- Try changing chatContent.contentInset (like Sam does) instead of height for resizeViewWithOptions:
Core Data:
- Add Conversation model (Conversation is like a channel in Redis Pub/Sub)
- Conversation has many Messages; Message has one Conversation (one-to-many)
- Persist drafts in textView of each chat
- Conversation has one Draft (one-to-one)
- Make Draft a concrete parent of Message.
- It should have text & media but not timestamp & unread, etc.
- Send photo & video messages
- Add media relationship to Message model
Chat Server:
Send messages to other devices
- Check: You must disable airplane mode to send or receive messages. Cancel [Disable]
- Add red ( ! ) bubble button if message doesn't send.
- Touching it shows UIActionView: Your mesage was not sent. Tap "Try Again" to send this message. [Try Again] Cancel
- Play a sound or vibrate when receiving a message
- Receive messages while offline
- Store messages on the server
- Apple Push Notification Service
iPad Version:
- Study Messages app on the iPad