lilia
44b1e5c88e
Move inbox collection to the background page
...
No more waiting, no more messy fetch logic. Background page
bootstraps the inbox and keeps it up to date.
2015-02-12 13:21:17 -08:00
lilia
a5bc261365
Clear selected files after each sent message
2015-02-12 13:21:17 -08:00
lilia
2de682ef7b
Don't create a group without a name
2015-02-12 13:21:17 -08:00
lilia
d5c85dfbd8
Resize inbox listview after it finishes loading
...
Ensures that scrollbars are properly setup on load.
2015-02-12 13:21:17 -08:00
lilia
4422582ab7
Fixup opening existing private conversations
2015-02-12 13:21:17 -08:00
lilia
200981e022
Avoid adding empty-string numbers to recipients
2015-02-12 13:21:17 -08:00
lilia
3a099657e6
Untangle select vs open events
2015-02-12 13:21:17 -08:00
lilia
b27826cba5
Conversations must have an id before saving
2015-02-12 13:21:16 -08:00
lilia
a7a44e9b99
Swap in unminified typeahead code
...
For your debugging and auditing convenience.
2015-02-12 13:21:16 -08:00
lilia
9087918500
Don't add new convos to inbox until a message is sent
2015-02-12 13:21:16 -08:00
lilia
af49ad9b90
Dry up new contact init and handling
2015-02-12 13:21:16 -08:00
lilia
63d232dedb
Draw attention to invalid numbers
2015-02-12 13:21:16 -08:00
lilia
746e6530b9
WIP pill view for selected recipients
2015-02-12 13:21:16 -08:00
lilia
c84ccfc735
Wrap model phonenumber validation in try/catch
2015-02-12 13:21:15 -08:00
lilia
eae072e72d
Remove unneeded var, add todo
2015-02-12 13:21:15 -08:00
lilia
fc3a600e72
Validate conversation type
2015-02-12 13:21:15 -08:00
lilia
5e3ed1658b
Show phone numbers in contact selector
2015-02-12 13:21:15 -08:00
lilia
9e245e67e0
Fix double-opening exsisting conversations from typeahead
2015-02-12 13:21:15 -08:00
lilia
b2345a5ec8
Remove unused variable
2015-02-12 13:21:15 -08:00
lilia
ce4ce164af
Stop clobbering conversation attributes
...
Unless the background page fetches the latest details of a conversation
before updating it, it may clobber or nullify some attributes e.g., the
contact's name.
2015-02-12 13:21:15 -08:00
lilia
aca3db97da
New messages auto-update the inbox & conversation
...
When a new message arrives, if its conversation is not already opened,
the background page opens it. If it is alrady open the window is
focused. Finally, the 'message' event is triggered, resulting in
1. the inbox refetches conversations
2. all conversations fetch new messages
TODO: only send this event to the target window
2015-02-11 17:38:03 -08:00
lilia
db5e7fd6b6
Fix list view scrolling
...
Resize handlers are ugly. But not as ugly as scroll handlers. :p
Normalized some whitespace along the way.
2015-02-11 17:38:03 -08:00
lilia
0f29cf2043
Put spaces between joined members in group updates
2015-02-11 17:38:01 -08:00
lilia
d435ff003b
Improve typeahead contact selector experience
...
Store and match on various phone number formats. Still not perfect, as
occasionally all the models are returned for a non-matching query.
2015-02-11 17:38:01 -08:00
lilia
acc2c6f536
Sort contact selector by title
2015-02-11 17:38:01 -08:00
lilia
51dd287b60
Break up a long line
2015-02-11 17:38:01 -08:00
lilia
a00632c728
Hook up group creation flow UI
...
Checkboxes add and remove members as well as exposing the group update
ui. The conversation window is opened after saving the group.
2015-02-11 17:38:01 -08:00
lilia
b3e32a2642
Only load contacts (not groups) in the typeahead
2015-02-11 17:38:01 -08:00
lilia
2f93fb9fbc
Remove unneeded comparator
...
This collection is just an in-memory indexer used for typeaheads. For
display, the matching models are added to a separate collection. Thus,
the order of the elements in the typeahead collection does not matter.
2015-02-11 17:38:01 -08:00
lilia
0d6fbabb3e
Trigger a checkbox event from conversation list items
2015-02-11 17:38:01 -08:00
lilia
e05405e832
Format phone numbers before saving conversations
...
Saving the national and internation versions of the number lets us use
those attributes in a typeahead collection.
2015-02-11 17:38:01 -08:00
lilia
ed928aa4e3
Add index on conversation type
...
So we can load only groups or only contacts.
This changes the schema and requires you to delete your database to
re-run the migration.
2015-02-11 17:38:01 -08:00
lilia
3d5553df09
Remove listener for model open event
2015-02-11 17:38:01 -08:00
lilia
87cd3f5053
Save and open new contact on click
2015-02-11 17:38:00 -08:00
lilia
17f3263a21
Listen for escape key anywhere in the inbox
2015-02-11 17:38:00 -08:00
lilia
070393170c
Auto-focus new conversation input field
2015-02-11 17:38:00 -08:00
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
1eab26635b
Remove unused variable
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
b13e36a11c
Style conversation menu
2015-02-11 17:38:00 -08:00
lilia
80ce2d95e0
Sort contacts by name in compose flow
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
17deb69a91
Make conversation panel work with a new contact
...
Prevent view from fetching messages without an id, as this causes a
crash.
2015-02-11 17:37:59 -08:00
lilia
5762724709
Don't show new contact unless input may be a phone number
2015-02-11 17:37:59 -08:00
lilia
4ee4872b27
Stop matching typeahead against group members
...
It feels a little weird when you can't see the matching member. Would
consider putting this back in if we display the member list in the
contact list item view.
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
613dc3bedd
Start on support for messaging a brand new contact
2015-02-11 17:37:59 -08:00