-[] Backend
-[] indexes e5.25
-[x] wire up results: Contacts / Conversations / Messages actual: 3hr
-[ ] group thread est: actual:
-[x] group name actual: e.25
-[ ] group member name: e.25
-[ ] group member number: e.25
-[ ] contact thread e.5
-[ ] name
-[ ] number
-[ ] messages e1
-[ ] content
-[] Frontend e10.75
-[x] wire up VC's a.5
-[x] show search results only when search box has content a.25
-[] show search results: Contact / Conversation / Messages e2
-[x] wire up matchs
-[] style contact cell
-[] style conversation cell
-[] style messages cell
-[] tapping thread search result takes you to conversation e1
-[] tapping message search result takes you to message e1
-[] show snippet text for matched message e1
-[] highlight matched text in thread e3
-[] go to next search result in thread e2
-[] No Results page
-[] Hide search unless pulled down
-[] Backend
-[] indexes e5.25
-[x] wire up results: Contacts / Conversations / Messages actual: 3hr
-[ ] group thread est: actual:
-[x] group name actual: e.25
-[ ] group member name: e.25
-[ ] group member number: e.25
-[ ] contact thread e.5
-[ ] name
-[ ] number
-[ ] messages e1
-[ ] content
-[] Frontend e10.75
-[x] wire up VC's a.5
-[x] show search results only when search box has content a.25
-[] show search results: Contact / Conversation / Messages e2
-[x] wire up matchs
-[] style contact cell
-[] style conversation cell
-[] style messages cell
-[] tapping thread search result takes you to conversation e1
-[] tapping message search result takes you to message e1
-[] show snippet text for matched message e1
-[] highlight matched text in thread e3
-[] go to next search result in thread e2
-[] No Results page
-[] Hide search unless pulled down
-[ ] indexes
-[x] results: Contacts / Conversations / Messages
-[ ] group thread
-[x] group name
-[ ] group member name
-[ ] group member number
-[ ] contact thread
-[ ] name
-[ ] number
-[ ] messages
-[ ] content
- [ ] show search results: Contact / Conversation / Messages
- [ ] tapping thread search result takes you to conversation
- [ ] tapping message search result takes you to message
- [ ] show snippet text for matched message
- [ ] highlight matched text in thread
- [ ] go to next search result in thread
- For new installs, generate raw key-spec rather than derive it
- Adapt to separated concerns of the key derivation migration from the unencrypted header migration
- Reduce number of places where we delete/generate keying information
- Only store relevant keying material
// FREEBIE
- Include table index for contacts
- Fix extra spacing in OWS table view
- Separate search results into contact/invite sections
- Include groups in search results when composing new message
- Compose Screen search matches on group member names
// FREEBIE
Leave last 3 digits of recipientId when scrubbing logs.
This is in line with other Signal clients, and makes it possible to
trace interactions.
// FREEBIE
- Using same clang format file for old and new files.
- Moving out all TextSecure code to allow other clients (OS X, iOS) to
integrate easily TextSecure functionality.
- Use TextSecure API to signup.
Begin process of prefixing categories on Foundation and UIKit. This
follows Cocoa best practices. This makes sense given the number of third
party libraries the project incorporates, which may include their own
colliding category method names.
Use OWS prefix on classes that may be used across apps.
- Added timeStamp property to EncodedAudioPacket
- Added timeStamp parameter to rtpPackageWithDefaults constructor
- Added nextTimeStamp to AudioPacker with random initial value and sample length increases
- AudioSocket forwards timeStamp
- Added generateSecureRandomUInt32 to CryptoTools
- Updated tests
FREEBIE
- Fixed a crash where an offset wrapped around when deleting the opening bracket
- Backspacing now skips over formatting characters
- Cursor position is maintained more accurately when reformatting
- Added a few utility methods
- Also fixed a test not having "test" as a prefix, causing it not to run
//FREEBIE
Still need to:
- Fix indentation
- Check for any FutureSource being returned instead of FutureSource.future
- Check for then: vs thenTry: mixups
- Check for main thread related issues
- Check for other exception catching issues
- Adjust directory layout
- Manual end-to-end testing
- dictionaryWithObject -> @{key: val}
- objectAtIndex -> a[i]
- numberWithBool/Int/etc -> @1, @(val)
- Reverted friendly fire on ProtocolBuffers
- Did not do ANY other changes (including changes to make more refactorings succeed)
//FREEBIE
- Make logging optional if desired
- HTTPS external URLs
- Clean app data when re-registering
- If registration future fails, bring back user interaction
- Use of new Keychain Access attribute
- Error management (notifying the user) when opening app without
required push and microphone permission
- Enforcing APNID are sent to server, retry later if not able to reach
server