Commit Graph

171 Commits

Author SHA1 Message Date
lilia b1ad04298f Add title bar label to new conversation view 2015-02-11 17:38:00 -08:00
lilia d26dc8c7e6 Move openConversation handler to InboxView
Removes the background page ref to inbox which should fix view tests.
Prep for handling new contact creation.
2015-02-11 17:38:00 -08:00
lilia 9a6c6bcd98 Reset the typahead before showing it 2015-02-11 17:38:00 -08:00
lilia 6d81011f6a Add back button to compose view 2015-02-11 17:38:00 -08:00
lilia fedfdcdd7e Style elements for compose flow 2015-02-11 17:37:59 -08:00
lilia 00e9e3b757 Setup loading gif on conversation list
TODO: get actual gif asset in there.
2015-02-11 17:37:59 -08:00
lilia cc0acc56dd Initially hide newConversationView 2015-02-11 17:37:59 -08:00
lilia e149650d94 Refactor typeahead into new conversation view 2015-02-11 17:37:58 -08:00
lilia f207137b35 Customize typeahead tokenizer 2015-02-11 17:37:58 -08:00
lilia c6a19afd29 Tweak contact style in typeahead
Remove message snippets and dates.
Add checkboxes.
2015-02-11 17:37:58 -08:00
lilia 7bcceacf69 Implement typeahead (first pass) 2015-02-11 17:37:58 -08:00
lilia 34d5f3e88a Cleanup inbox view
Don't auto open the last conversation. It doesn't make sense now that we
no longer have two column layout.

Don't trigger/listen for selected events. There's no need since the list
item opens a new popup now.
2015-02-11 17:37:57 -08:00
Riley Shaw 2cbcb28ee3 Start on panels 2015-02-11 17:37:56 -08:00
lilia f6376c0fa2 Rename event
'open' seems a better name for an event that triggers the open function.
2015-01-17 22:33:55 -10:00
lilia cfd4ccc803 Move index querying logic to /models 2014-12-19 17:59:18 -08:00
lilia 006653ed8e DB/Index Redux
This change removes the timestamp field from messages and conversations
in favor of multiple semantically named timestamp fields: sent_at,
received_at on messages; active_at on conversations. This requires/lets
us rethink and improve our indexing scheme thusly:

The inbox index on conversations will order entries by the
conversation.active_at property, which should only appear on
conversations destined for the inbox.

The receipt index will use the message.sent_at property, for effecient
lookup of outgoing messages by timestamp, for use in processing delivery
receipts.

The group index on conversation.members is multi-entry, meaning that
looking up any phone number in this index will efficiently yield all
groups the number belongs to.

The conversation index lets us scan messages in a single conversation,
in the order they were received (or the reverse order). It is a compound
index on [conversationId, received_at].
2014-12-19 17:39:40 -08:00
lilia 5762e59c41 DRY up registration event callbacks
This was just a special case of the extension.on/trigger interface.
2014-12-19 14:02:52 -08:00
lilia 8257fa7478 Add support for deleting a conversation
Note that the conversation record is not actually destroyed,
merely marked inactive, preserving the contact name, photo,
etc...
2014-12-03 01:37:06 -08:00
lilia d1c5b6da7a Get rid of Layout global
Instead, trigger and listen for events on the conversation collection
object.
2014-11-24 19:25:03 -08:00
lilia fd3a72d435 Destroy all globals
Well, not *all* globals..
2014-11-24 19:25:03 -08:00
lilia c0681beca7 Consolidate message callbacks
Register the runtime callback at the top level view rather than having
each conversation view register independently.
Also refactors Layout into InboxView.
2014-11-24 19:25:03 -08:00