Commit Graph

854 Commits (b77528ca0a86a49e4e589b2724e2ddd2ad1e4833)

Author SHA1 Message Date
Michael Kirk cde1c3fb7c Fix: iOS10 was not respecting margins with our homebrew pin method
// FREEBIE
7 years ago
Matthew Chen 8cb057c23f Fix 'contact cell vs. message details layout' issue. 7 years ago
Matthew Chen c8d0a80032 Fix 'contact cell vs. message details layout' issue. 7 years ago
Matthew Chen 2ecbf1bb65 Fix 'contact cell vs. message details layout' issue. 7 years ago
Matthew Chen 1a57fe631c Fix 'contact cell vs. message details layout' issue. 7 years ago
Matthew Chen 0df71e22a5 Fix message detail view. 7 years ago
Matthew Chen 71c63d9fce Remove obsolete assert. 7 years ago
Matthew Chen b75f4596aa Remove obsolete assert. 7 years ago
Michael Kirk cc1bde34cd Inform iPad users upon registration
// FREEBIE
7 years ago
Matthew Chen fbbb9276b9 Respond to CR. 7 years ago
Matthew Chen 63b6276c25 Clear LRUCache in background. 7 years ago
Matthew Chen 87ea1dcae1 Clean up ahead of PR. 7 years ago
Matthew Chen 08ca4fdb50 Lazy-load contact avatar data and images. Use NSCache for avatar images. 7 years ago
Matthew Chen b9e2963f47 Don't cache CNContact. 7 years ago
Matthew Chen 83f11ad79b Don't cache CNContact. 7 years ago
Matthew Chen 12295bd8c5 Don't cache CNContact. 7 years ago
Matthew Chen 20b1a2606e Outage detection. 7 years ago
Matthew Chen 776b5abed1 Handle edge cases around unread indicator & contact offers. 7 years ago
Matthew Chen 647d80d79d Unify the cell and avatar sizes. 7 years ago
Matthew Chen 1acf51ea5c Unify the cell and avatar sizes. 7 years ago
Matthew Chen 261719e53b Unify the cell and avatar sizes. 7 years ago
Matthew Chen 40e5bcc23f Respond to CR. 7 years ago
Matthew Chen dd49c6225f Auto-size contact cells everywhere. 7 years ago
Matthew Chen a51e9b78b0 Improve search query construction. 7 years ago
Matthew Chen 95ac17bb7e Merge tag '2.26.0.24' 7 years ago
Michael Kirk 0dec029a69 Don't mark as read when callscreen is active
// FREEBIE
7 years ago
Matthew Chen c8fee4efa7 Add swift logging to SSK. 7 years ago
Matthew Chen 44b23d44fd Respond to CR. 7 years ago
Matthew Chen 99677899b1 Respond to CR. 7 years ago
Matthew Chen f0c1805de9 Strip snippet formatting. 7 years ago
Matthew Chen 9639d3cbae Clean up ahead of PR. 7 years ago
Matthew Chen 3f9f2abcd8 Style the search results. 7 years ago
Matthew Chen f4a559156c Style the search results. 7 years ago
Matthew Chen 646073c92d Check contacts access when notified of contacts changes. 7 years ago
Matthew Chen ebc5356a9f Respond to CR. 7 years ago
Matthew Chen 758913f959 Respond to CR. 7 years ago
Matthew Chen 4abd3f58cd Order the search results. 7 years ago
Matthew Chen 37d3dfdfb6 Merge tag '2.26.0.23' 7 years ago
Matthew Chen 8164b893ad Respond to CR. 7 years ago
Matthew Chen 999e8c8e31 Respond to CR. 7 years ago
Matthew Chen 13e9f11b4e Open message search results. 7 years ago
Matthew Chen 27b6a5e5bb Open message search results. 7 years ago
Michael Kirk 72e4de0950 Fix unresponsive interface after swipe on root VC
Don't start interactive pop gesture for root VC

// FREEBIE
7 years ago
Michael Kirk 549342c702 Show empty results text
// FREEBIE
7 years ago
Michael Kirk ecdaad06ff Handle no results
In line with other messaging apps, we intentionally don't show a "No Results"
cell. We simply don't display any cells. Though we could easily modify this in
the future.

// FREEBIE
7 years ago
Michael Kirk fff8474150 adapt to rebase conflicts 7 years ago
Michael Kirk f415827da6 Contact search results
// FREEBIE
7 years ago
Michael Kirk b3705196b3 remove unused code/comments 7 years ago
Michael Kirk 21788f5f93 Avatar, label fonts, resignFirstResponder on scroll
-[] Backend
  -[] indexes e5.25
    -[x] wire up results: Contacts / Conversations / Messages actual: 3hr
    -[x] group thread est: actual:
      -[x] group name actual: e.25
      -[x] group member name: e.25
      -[x] group member number: e.25
    -[ ] contact thread e.5
      -[ ] name
      -[ ] number
    -[x] messages e1
      -[x] 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
  -[x] show snippet text for matched message e1
  -[] highlight matched text in thread e3
  -[] No Results page
7 years ago
Michael Kirk 3a03c4f74c WIP: message indexing 7 years ago
Michael Kirk f360bcfd35 Less confusing class names
-[] 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
7 years ago
Michael Kirk a9e2834d9f WIP: FTS - rudimentary show results
-[] 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
7 years ago
Michael Kirk ffea3a020f WIP: FTS - wired up Search VC
-[] 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
  -[] 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
7 years ago
Michael Kirk 429af7854a WIP: Full Text Search
-[ ] 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
7 years ago
Matthew Chen 19c9e226fb Respond to CR. 7 years ago
Matthew Chen 3964b78ff7 Reduce usage of JSQ. 7 years ago
Matthew Chen 6579857a42 Respond to CR. 7 years ago
Matthew Chen 6f0c1a975b Fix build warnings. 7 years ago
Matthew Chen 3cd6a33aa6 Fix build warnings. 7 years ago
Matthew Chen 40729dbdd2 Use background task while downloading profile avatar. 7 years ago
Óscar Morales Vivó 69b5272547 More code review polish. 7 years ago
Óscar Morales Vivó 4b98352a38 Changes suggested by code review. Added iPhone 4 screen size to iPhoneX test so Signal doesn't blow up in iPad's iPhone compatibility mode. 7 years ago
Matthew Chen fefc9843b1 Modify views to observe changes when active, not just foreground. 7 years ago
Matthew Chen 812210a63c Modify views to observe changes when active, not just foreground. 7 years ago
Matthew Chen 40879461b0 Suppress animations in nav bar around call window. 7 years ago
Matthew Chen 4342b04bd3 Include response data in 'request over websocket' failures. 7 years ago
Matthew Chen 5e166c238f Respond to CR. 7 years ago
Matthew Chen 01cf2fc1bd Clear the contacts cache if access to the system contacts is revoked. 7 years ago
Matthew Chen f63d25a172 Migrate to Swift 4. 7 years ago
Matthew Chen 4d8c764789 Migrate to Swift 4. 7 years ago
Matthew Chen 77b72b6b06 Migrate to Swift 4. 7 years ago
Matthew Chen da5ae63bbc Migrate to Swift 4. 7 years ago
Matthew Chen 28e26e1f75 Migrate to Swift 4. 7 years ago
Matthew Chen 916d55c55d Migrate to Swift 4. 7 years ago
Matthew Chen 28f7142a59 Auto-migration to Swift 4. 7 years ago
Matthew Chen 4d498563e7 Unify the socket manager's 'can send requests' logic. 7 years ago
Matthew Chen c71081c875 Respond to CR. 7 years ago
Matthew Chen bbf7ee451d Limit the scope of the 'incomplete contacts fetch' fix. 7 years ago
Matthew Chen 21b54bee4f Fix breakage from recents changes in share extension. 7 years ago
Matthew Chen fbd03a3fdc Apply design for call view back button. 7 years ago
Michael Kirk fc34a0643c CR: annotate device constants
// FREEBIE
7 years ago
Michael Kirk 36ee6af621 respond to CR 7 years ago
Michael Kirk 20424d9a7e remove debug code, reorder for clarity
// FREEBIE
7 years ago
Michael Kirk fe62a6ac92 CNContactController needs to be presented in a navcontroller with a
translucent navbar.

In cases where we were presenting modally, we can easily modify the
modal to have a translucent navbar.

In the one place we were pushing onto the SignalsNavigationController,
rather than modifying the SNC.isTranslucent and having to clean it up,
I've opted to convert to a modal presentation.

// FREEBIE
7 years ago
Michael Kirk 2709a91b5e Fixup attachment approval vis-a-vis call banner
// FREEBIE
7 years ago
Michael Kirk 4f80100234 Tapping on status bar returns to call
We want to render the return-to-call banner behind the status bar, so
the user can see the system clock, etc.

But normally, doing so would mean we wouldn't receive touches in the top
20px of the screen.

// FREEBIE
7 years ago
Michael Kirk 4c9808d1a1 Fix iPhoneX layout show status bar above call banner
// FREEBIE
7 years ago
Michael Kirk 3383c5e80c Fixup for iPhoneX
// FREEBIE
7 years ago
Michael Kirk 778e11c2c3 cleanup ahead of PR
// FREEBIE
7 years ago
Michael Kirk 7ad5f15448 Restore cancleable back gesture for those VC's that use it
// FREEBIE
7 years ago
Michael Kirk 49c652ad14 Comment cleanup
// FREEBIE
7 years ago
Michael Kirk 1b60716759 Stop worrying about notification order by using delegate pattern
// FREEBIE
7 years ago
Michael Kirk 319a6ff765 fixup behavior on iOS10 7 years ago
Michael Kirk 6c7af671bc call banner above status bar for now 7 years ago
Michael Kirk 29d08545e2 Use OWSNavigationController instead of UINavigationController
- [ ] document picker
- [ ] camera picker
- [ ] image picker
- [ ] restore "confirm to go back" behavior (interactive pop gesture?)

// FREEBIE
7 years ago
Michael Kirk 33eb4c38cd Centralize translucency configuration
// FREEBIE
7 years ago
Matthew Chen bb19505c6a Make profile gets over websocket. 7 years ago
Matthew Chen e2d9c1187a Fix "group avatar doesn't update after local change." 7 years ago
Michael Kirk b1e06217b2 Consistently lower-case contact field headers
// FREEBIE
7 years ago
Matthew Chen 0620cb60df Normalize image colorspace. 7 years ago
Michael Kirk 2098ec570b Contact picker uses profile pic, when available.
// FREEBIE
7 years ago
Michael Kirk f2750d18c6 Don't send empty contact card with just avatar
// FREEBIE
7 years ago
Matthew Chen db1c8fd9f3 Respond to CR. 7 years ago
Matthew Chen f436fc19c2 Make contact share "bubble/card" reflect share contents. 7 years ago
Matthew Chen 2edabdbba4 Sort group members. 7 years ago
Matthew Chen 152e1d7983 Respond to CR. 7 years ago
Matthew Chen ca09d00e2e Use signal id as avatar color seed if possible. 7 years ago
Matthew Chen edabe50678 Respond to CR. 7 years ago
Matthew Chen a26cba3de1 Don't show screen block until app is ready. 7 years ago
Matthew Chen 0b488f1a65 Use case-insensitive comparison when sorting contacts. 7 years ago
Matthew Chen 73206c08ad Respond to CR. 7 years ago
Matthew Chen b62d6900da Fix crash converting images in SAE. 7 years ago
Matthew Chen ccc64e62bf Fix l10n strings. 7 years ago
Michael Kirk 2cc3eabdb8 quote reply to contact share (no avatar)
// FREEBIE
7 years ago
Michael Kirk d1c33921ba Show avatar in contact approval view
// FREEBIE
7 years ago
Matthew Chen 6460493669 Surface organization name in contact view. 7 years ago
Matthew Chen aa7cc4633a Rework contact names. 7 years ago
Michael Kirk a16040f19f Fix avatar sending in SAE
// FREEBIE
7 years ago
Michael Kirk adabf02732 Fix contact sharing (Avatar TODO)
// FREEBIE
7 years ago
Michael Kirk c15fea4eca merge avatar with existing
// FREEBIE
7 years ago
Michael Kirk bf37f41164 Move CNContact logic into our system contact adapter
// FREEBIE
7 years ago
Michael Kirk 0c469764f1 re-use contact picker for "add to existing"
Required refactor of contact picker to be presented non-modally.

TODO: merge emails, address, display names

// FREEBIE
7 years ago
Michael Kirk b1f3324514 cleanup contact syncing
It's largely a redundant check anyway, but the previous typo was a
no-op.

// FREEBIE
7 years ago
Matthew Chen 3bb9e922d7 Surface contact share errors to user. 7 years ago
Matthew Chen 4079cdb600 Apply more contact share assets. 7 years ago
Matthew Chen 0b8d9991ef Respond to CR. 7 years ago
Matthew Chen f77731eb7a Fix h margins in "edit contact share name" view. 7 years ago
Matthew Chen 44ceee5849 Add contact share actions to conversation view and improve phone number parsing. 7 years ago
Michael Kirk 41aa7eafe3 makeKeyAndVisible restores first responder, so no need to track it
ourselves.

This isn't *quite* as nice for the case when we want to restore a
textfield that was active before, but it much more simply covers the
more important case that we restore input accessory views after
backgrounding/foregrounding.

// FREEBIE
7 years ago
Matthew Chen 41f4b0866c Respond to CR. 7 years ago
Matthew Chen bd116f8938 Share contacts from share extension. 7 years ago
Matthew Chen 50c49baca8 Update design of 'approve contact share' view. 7 years ago
Matthew Chen 5f1941f6aa Apply design changes from Myles. 7 years ago
Michael Kirk a10ae1835e respond to code review
// FREEBIE
7 years ago
Michael Kirk 45f91ead44 Use actual avatar in ContactViewController
// FREEBIE
7 years ago
Michael Kirk 77fc5571fb Implement avatar sending
// FREEBIE
7 years ago
Michael Kirk 48b4791b13 Download avatar attachment stream
// FREEBIE
7 years ago
Matthew Chen 4b6239f491 Fix build breakage. 7 years ago
Matthew Chen 7c3991ebd8 Respond to CR. 7 years ago
Matthew Chen ba74e3857a Clean up ahead of PR. 7 years ago
Matthew Chen 2c6f18fa6e Clean up ahead of PR. 7 years ago
Matthew Chen 60c3764525 Clean up ahead of PR. 7 years ago
Matthew Chen fd93bf677e Clean up ahead of PR. 7 years ago
Matthew Chen 7a9acce504 Add contact share approval view. 7 years ago
Matthew Chen 6e18d84a10 Add contact share approval view. 7 years ago
Matthew Chen 0c745dd989 Add contact share approval view. 7 years ago
Matthew Chen f9d5421edc Modify system contacts fetch to use serial queue. 7 years ago
Matthew Chen bec5a9f428 Revert "oOnly one system contacts fetch at a time."
This reverts commit d84e27f5a5f953fd68dbdf1086a75ffe6aee6720.
7 years ago
Matthew Chen b767996dba oOnly one system contacts fetch at a time. 7 years ago
Matthew Chen 390c0bc201 Send fake contact shares. 7 years ago
Matthew Chen fa5577eece Create contact view. 7 years ago
Matthew Chen 0316a98eb8 Undo renaming of contactShare property of TSMessage. 7 years ago
Matthew Chen 0d8cfc5403 Rename contact share class to contact. 7 years ago
Matthew Chen 4b8a2fa8a3 Sketch out "contact share" model. 7 years ago
Michael Kirk b702695793 cleanup 7 years ago
Michael Kirk 7a1d24a9ab Avatar updates when contact/profile/group photo changes
// FREEBIE
7 years ago
Matthew Chen 5773b45345 Respond to CR. 7 years ago
Matthew Chen 594e12f23c Respond to CR. 7 years ago
Matthew Chen 40ac0daa9a Respond to CR. 7 years ago
Matthew Chen 4b83b4afc5 Rework outgoing message state. 7 years ago
Matthew Chen 9275c67818 Rework outgoing message state. 7 years ago
Matthew Chen 9364af9b85 Make screen block view first responder. 7 years ago
Matthew Chen 107a1ff9c0 Clean up system contacts fetch. 7 years ago
Matthew Chen c5981b164b Notify users of corrupt messages. 7 years ago
Matthew Chen fa9a4c808a Simplify usage of contacts framework. 7 years ago
Matthew Chen 7f23dfa258 Respond to CR. 7 years ago
Matthew Chen eb3569d8f8 Don't start app version migrations until storage is ready. 7 years ago
Matthew Chen 2265ae08aa Don't start app version migrations until storage is ready. 7 years ago
Matthew Chen 21ab670fc9 Clean up ahead of PR. 7 years ago
Michael Kirk 90dda0bf9c SEPARATE: Use non-signal contact's full name
// FREEBIE
7 years ago
Michael Kirk 9c81eb44a1 Replace remaining UI usage of `interaction.description`
// FREEBIE
7 years ago
Matthew Chen 7912598ccb Merge branch 'release/2.24.0' 7 years ago
Matthew Chen 08d36aa862 Add screen lock UI to SAE. 7 years ago
Michael Kirk eec7678979 Group's meta message defaults to "Delivery"
// FREEBIE
7 years ago
Michael Kirk 754549adf1 Start timer for expiring message based on when read receipt was sent
// FREEBIE
7 years ago
Matthew Chen eb51ea42e3 Merge remote-tracking branch 'origin/hotfix/2.23.4' 7 years ago
Matthew Chen 5cf6e65323 Fix screen lock alerts. 7 years ago
Michael Kirk 64ff4cd660 tap-to-retry failed thumbnail downloads
// FREEBIE
7 years ago
Matthew Chen f6d5b9197c Respond to CR. 7 years ago
Matthew Chen 115235d1b4 Fix animation glitch in blocking window. 7 years ago
Michael Kirk f879291f16 Don't underestimate removed space.
// FREEBIE
7 years ago
Michael Kirk 13a432b9de Limit attachment caption length to 2k bytes
// FREEBIE
7 years ago
Matthew Chen daf0f0b22d Fix incomplete asserts. 7 years ago
Matthew Chen 6caa5b87b6 Add more asserts around thread in SAE. 7 years ago
Matthew Chen a5a2f02edc Respond to CR. 7 years ago
Matthew Chen 644e78f19d Respond to CR. 7 years ago
Michael Kirk e554884ab3 Use profile name in quoted messages, fix "multi account" label
// FREEBIE
7 years ago
Matthew Chen d561ba4c62 Reduce 0xdead10cc crashes. 7 years ago
Matthew Chen fc2704cf88 Label quoted replies to yourself as such. 7 years ago
Matthew Chen 759b2a332f Respond to CR. 7 years ago
Matthew Chen c3345a4c4e Scale home view cells to reflect dynamic type size. 7 years ago
Michael Kirk 5320536736 remove WIP comments
// FREEBIE
7 years ago
Michael Kirk 1780973e68 fix image, video, audio interactions in message details
// FREEBIE
7 years ago
Matthew Chen f6698501df Revert "Label quoted replies to yourself as such."
This reverts commit 24d7492f61.
7 years ago
Matthew Chen 24d7492f61 Label quoted replies to yourself as such. 7 years ago
Matthew Chen b8f8a3017a Apply design changes to home view. 7 years ago
Michael Kirk d94709e13f Show label when captioning limit has been reached.
// FREEBIE
7 years ago
Michael Kirk 6b6f4f9336 Limit caption length
// FREEBIE
7 years ago
Matthew Chen 76995e4594 Enforce quoted reply edge cases. 7 years ago
Matthew Chen 6ee74eaffc Respond to CR. 7 years ago
Matthew Chen 6a07599e00 Respond to CR. 7 years ago
Matthew Chen f2b416d800 Respond to CR. 7 years ago
Matthew Chen 180cbbcdb3 Don't use scaledFontForFont. 7 years ago
Matthew Chen 8c1362b807 Fix small text usage. 7 years ago
Matthew Chen ade2ee7216 Use dynamic type everywhere in conversation view. 7 years ago
Michael Kirk 81b2b57703 CR: add comments, make atomic
// FREEBIE
7 years ago
Michael Kirk 90486aa49c Inline method with one caller, fix formatting
// FREEBIE
7 years ago
Michael Kirk c56e8acc51 QuotedReplyModel from SSK->SignalMessaging
// FREEBIE
7 years ago
Michael Kirk 1d4c0624be Clarify variable names
// FREEBIE
7 years ago
Michael Kirk cb5d3d4f85 Use QuotedReplyModel to access attachment data
This view model loads the attachment when it's build.

// FREEBIE
7 years ago
Michael Kirk 253435b27f extract QuotedReplyDraft model 7 years ago
Michael Kirk 53af41fcc6 Reusable UploadOperation based on extracted OWSOperation
// FREEBIE
7 years ago
Matthew Chen 6830d4e8cb Apply message bubble view to message details view. 7 years ago
Matthew Chen 71c5c3a4b7 Refine appearance of quoted reply message cells. 7 years ago
Matthew Chen 822aa64b14 Respond to CR. 7 years ago
Matthew Chen 6171505657 Refine appearance of quoted reply message cells. 7 years ago
Matthew Chen 10b4ade55a Refine appearance of quoted reply message cells. 7 years ago
Matthew Chen 9085609087 Fix interaction initializers and tests. 7 years ago
Michael Kirk b6409dd514 CR: formatting changes
// FREEBIE
7 years ago
Michael Kirk bf401bad90 Send quoted messages
MVP

- [x] populate from menu
- [x] send quoted message

TODO

- [] thumbnail
- [] paperclip icon showing for text message
- [] cancel button asset
- [] fonts
- [] colors
- [] adjust content inset/offset when showing quote edit

NICE TO HAVE

- [] animate presentation
- [] animate dismiss
- [] non-paperclip icon for generic attachments

// FREEBIE
7 years ago
Michael Kirk 6874a9e28e Convert to swift
// FREEBIE
7 years ago
Michael Kirk 5f8b3ff285 Object lifecycle disposes SystemSound
// FREEBIE
7 years ago
Michael Kirk 2580c690cb CR: Use LRU Cache for storing system sounds
// FREEBIE
7 years ago
Michael Kirk 3cb53f5f44 Respect system alert volume for notifications while in app
// FREEBIE
7 years ago
Michael Kirk 86553b62f9 keyboard pinning vs iPhoneX 7 years ago
Michael Kirk af5f549e49 Fix TableView layout for iPhoneX
// FREEBIE
7 years ago
Michael Kirk f441c6211d Format
// FREEBIE
7 years ago
Michael Kirk 6f1608f44b Conventional naming for out custom PureLayout methods.
This moves methods more in line with PureLayout conventions.

- Methods always specify if they pin to an edge vs margin

- `margin` is a reserved word which should only refer to layout margins.
  i.e. do not use it to refer to "inset" and "offset".

// FREEBIE
7 years ago
Matthew Chen 4240b517d0 Respond to CR. 7 years ago
Matthew Chen 8e4f2ca0ed Rework proto schema changes for quoted replies.
Sketch out model changes for quoted replies.

Sketch out quoted reply input preview.

Send quoted messages protos.

Update models to reflect quoted messages.

Rework interaction initializers.

Rework interaction initializers.

Add debug UI methods for generating quoted reply variations.

Add debug UI methods for generating quoted reply variations.
7 years ago
Matthew Chen f98c45603c Respond to CR. 7 years ago
Matthew Chen 31f062ed11 Bubble collapse. 7 years ago
Matthew Chen c8012d3891 Bubble collapse. 7 years ago
Matthew Chen e0e8eafb5d Bubble collapse. 7 years ago
Matthew Chen 11819d9b8a Bubble collapse. 7 years ago
Matthew Chen 75177ef00f Bubble collapse. 7 years ago
Michael Kirk d7cccd1e87 Fix: Audio stops when leaving MessageDetails VC
// FREEBIE
7 years ago
Michael Kirk 9adf79c546 Always remove metadata
// FREEBIE
7 years ago
Michael Kirk 1d95cd6977 Improve video scrubbing UX in PageView
// FREEBIE
7 years ago
Matthew Chen 9962bf56b1 Fix 'invalid auth can hang on launch' issue. 7 years ago
Matthew Chen ef34cd5d58 Fix 'invalid auth can hang on launch' issue. 7 years ago
Michael Kirk 394cc6637c Backport comments from translations
// FREEBIE
7 years ago
Matthew Chen bb596dba98 Add screen lock feature. 7 years ago
Matthew Chen 847a0269cb Properly cleanup content. 7 years ago
Matthew Chen 8d689ec090 Properly cleanup content. 7 years ago
Michael Kirk 0025661a8d Extract GradientView
// FREEBIE
7 years ago
Michael Kirk 7754d3d94f Real assets
// FREEBIE
7 years ago
Michael Kirk 352f5c1059 Prefer back button over dismiss
In some context this makes more sense, and it will never be confusing.

// FREEBIE
7 years ago
Michael Kirk 2412ab092e Avoid occasional audio crash
// FREEBIE
7 years ago
Michael Kirk 4c2d30a776 Memory warning clears MediaPageView cache
Doing so required MediaDetailView to retain GalleryItem, but because
GalleryItem is a swift struct, I had to envoke the Box dance.

// FREEBIE
7 years ago
Michael Kirk ba2923bae3 remove unused category
// FREEBIE
7 years ago
Michael Kirk 96e5a8f4b7 One time thumbnail generation
// FREEBIE
7 years ago
Michael Kirk dfd628250d Gallery performance
- [x] share uiDatabaseConnection to share cache
- [x] increase cache size
- [x] load less initially
- [x] lazy loading
  - [x] slider view
  - [x] tile view

// FREEBIE
7 years ago
Michael Kirk 985af76d0b WIP: All Media view
TODO

- [ ] label video/gif
- [ ] reasonable load perf
- [ ] reasonable scroll perf
- [ ] select / delete
- [ ] cancel share action from media details returns signal style

NICE TO HAVE

- [ ] fancy in/out animation from All Media <-> tiles
- [ ] label video thumbnail with duration stamp
- [ ] Other perf?
- [ ] dbModified?
- [ ] select / send
- [ ] darken section header a shade once it's "active"

DONE

- [x] tap to refocus on new media
- [x] generate test data
- [x] section headers
- [x] equal spacing around cells

// FREEBIE

WIP WIP extract datasouce to GalleryViewController

- [x] swipe through is broken
- [x] present animation
- [x] dismiss animation

// FREEBIE
7 years ago
Matthew Chen 565743b66d Fix edge cases in migrations. 7 years ago
Matthew Chen d2f2dd273a Fix edge cases in migrations. 7 years ago
Michael Kirk 4ac9a1019b Media page view controller
First pass at a swipe-through media view for conversations.

Future work could include

- title label per item
  - sender name
  - date/time
- photo rail
- include caption

// FREEBIE
7 years ago
Matthew Chen 4746948dfe Respond to CR. 7 years ago
Matthew Chen 76b4deffe4 Respond to CR. 7 years ago
Matthew Chen 5035cb040e Implement backup import logic. 7 years ago
Matthew Chen a91eea9a17 Fix rebase breakage. 7 years ago
Matthew Chen 593f7da72d Upload test file to CloudKit. 7 years ago
Michael Kirk c5ff9a94a0 Merge tag '2.22.0.3' 7 years ago
Michael Kirk 173008fba9 Clarify reminder view, touchup layout
Layout needs to be kept tight for small form factors, but it was overly
cramped on larger devices.

// FREEBIE
7 years ago
Collin B. Stuart 6f7b4a6e43 Strip media metadata.
- removes non-orientation metadata from image and video attachments

- option to disable the feature

// FREEBIE
7 years ago
Michael Kirk 319e0d808f Merge tag '2.21.0.14' into release/2.22.0 7 years ago
Michael Kirk 3aebaefc31 A lighter touch for the fix-call connect.
Though it should be fine, reloading the callUIAdapter is a bit heavy
handed. And the current implementation is prone to being broken, since
we sometimes forget not to treat callUIAdapter as a singleton.

Longer term we can find a way to either: make callUIAdapter a true
singleton or possibly make callUIAdapter a private member of something
which *is* a true singleton.

Since we only *need* it to be reloaded the one time the migration runs
(or when a user changes settings which should be rare) it makes sense to
remove it from the happy path.

// FREEBIE
7 years ago
Michael Kirk bbdcd0c768 Call connection fixups
callUIAdapter is not a singleton (for better or for worse)

No one should hold a reference directly to it, but rather via the
CallService, which is a singleton

Wait a bit longer for initial call screen before terminating. Especially
first call can hit this limit.

When call *does* take too long to show, terminate properly to ensure
we're not left with a phantom call

// FREEBIE
7 years ago
Michael Kirk 74ccdfdf2c Fix redundant profile downloads
// FREEBIE
7 years ago
Michael Kirk a1de99f1f1 Merge tag '2.21.0.9' 7 years ago
Michael Kirk 39b87b702b Fix debuglogs.org integration
// FREEBIE
7 years ago
Matthew Chen db430d6aa7 Revert unwanted changes. 7 years ago
Matthew Chen d6f4db1523 Rename TSStorageManager to OWSPrimaryStorage. 7 years ago
Michael Kirk f459c9ce6d CR: rename SignalClassic constant
// FREEBIE
7 years ago
Michael Kirk 5739f074ae Show migration screen at first launch.
sort sounds alphabetically (other than Default/None)

// FREEBIE
7 years ago
Michael Kirk 55a4b66ca3 Run call settings migration
// FREEBIE
7 years ago
Michael Kirk 1ddf3bb4e1 Fix "use ambient" for notifications
// FREEBIE
7 years ago
Michael Kirk 126a4cb7ca Fix build break
// FREEBIE
7 years ago
Michael Kirk 79ee5ed216 Be more conservative about logging legacy users into "Recents"
// FREEBIE
7 years ago
Michael Kirk 4e64b09ad6 Don't set audio to ambient while other audioActivity exists
// FREEBIE
7 years ago
Michael Kirk 830e9f1bfd Make "Signal Classic" audio stand out more
// FREEBIE
7 years ago
Michael Kirk 7883167265 Fix "None" audio for fallback notifications.
// FREEBIE
7 years ago
Michael Kirk d3be2b4a3b Vibrate when playing sound as alert
// FREEBIE
7 years ago
Michael Kirk d7fcac8a5a In-App notifications don't pause background audio
// FREEBIE
7 years ago
Matthew Chen 4f55079a79 Respond to CR. 7 years ago
Matthew Chen 2d6b9a7c81 Respond to CR. 7 years ago
Matthew Chen 9db9409561 Share background tasks. 7 years ago
Michael Kirk 07ee3ea843 Merge tag '2.21.0.5' 7 years ago
Michael Kirk 1d3831eccd Registration Lock reminder view
Also fixed: Don't lose PIN across registrations

// FREEBIE
7 years ago
Michael Kirk 6077367e66 Notification sounds should respect silent switch
// FREEBIE
7 years ago
Michael Kirk 1ff2f3f42e Merge tag '2.21.0.1' 7 years ago
Matthew Chen 864f1cc8ee Clean up ahead of PR. 7 years ago
Matthew Chen 4834a85fb5 Add share option for debug logs. 7 years ago
Matthew Chen 06d16bdec5 Revert "Revert "Merge branch 'charlesmchen/debugLogs' into hotfix/2.20.1""
This reverts commit b1dd325ce8.
7 years ago
Matthew Chen e89a0f815b Respond to CR. 7 years ago
Matthew Chen 5e02032fc3 Fix profile avatar downloads. 7 years ago
Matthew Chen 69c49d4a7b Fix profile avatar downloads. 7 years ago
Matthew Chen b62a43217f Fix profile avatar downloads. 7 years ago
Matthew Chen 15921fa0b5 Fix profile avatar downloads. 7 years ago
Matthew Chen dfa082238e Fix profile avatar downloads. 7 years ago
Michael Kirk 1d7e2e367e Fix migration to work with fallback notifications as well
// FREEBIE
7 years ago
Michael Kirk 46d944740b Make default audio tone more prominent
Label Note as (default)
Move it to the second item in the list, just after "None"

// FREEBIE
7 years ago
Matthew Chen 59c745756a Clean up codebase. 7 years ago
Matthew Chen 3acdd84398 Elaborate request factory. 7 years ago
Matthew Chen 004479a2ce Elaborate request factory. 7 years ago
Matthew Chen c17a819366 Elaborate request factory. 7 years ago
Matthew Chen a87b79341f Respond to CR. 7 years ago
Matthew Chen baf6fcc535 Add 2FA registration view. 7 years ago
Matthew Chen e12a1e984a Work on two-factor auth settings UI. 7 years ago
Matthew Chen 1f6cbd399e Sketch out 2FA feature. 7 years ago
Michael Kirk fa37fdd300 Fix legacy sounds for voip pushes
This way users who were unknowingly upgraded in the night will continue
to hear the ka-klunk until they've seen the splash screen announcing the
feature.

// FREEBIE
7 years ago
Michael Kirk e5ab6f101b Clean up audio files
- remove unused classic-ringtone
- move classic with the rest of the message sounds

// FREEBIE
7 years ago
Matthew Chen bf48ccd4ad Merge remote-tracking branch 'origin/hotfix/2.20.1' 7 years ago
Michael Kirk cf6dfe08bb Custom audio notifications upgrade experience
TODO: update art
7 years ago
Matthew Chen b1dd325ce8 Revert "Merge branch 'charlesmchen/debugLogs' into hotfix/2.20.1"
This reverts commit de5d17a396, reversing
changes made to d32e90c3d1.
7 years ago
Matthew Chen e4ee3e0007 Revert "Respond to CR."
This reverts commit 45201d45ed.
7 years ago
Matthew Chen 45201d45ed Respond to CR. 7 years ago
Matthew Chen 47a6d844c9 Refine handling of unsafe filename characters. 7 years ago
Matthew Chen 920c2b1d76 Rework log upload. 7 years ago
Michael Kirk f1f7f87457 Use aifc files for all notification sounds so we can confidently copy
them over the statically named "NewMessage.aifc" which is used by
fallback notifications

// FREEBIE
7 years ago
Michael Kirk e020b0ff99 Persist default sound so we can use it for fallback notifications
// FREEBIE
7 years ago
Michael Kirk 658b8c3223 CR: typos and doc changes
// FREEBIE
7 years ago
Michael Kirk 5959cdf070 Simplify call privacy settings
We've long allowed users to configure what shows up in message
notifications:

- name: content (by default)
- just name (no content)
- generic notification (no name nor content)

Now we're dual purposing that setting to apply to calls. If someone
doesn't want to show names in the message notifications, presumably also
don't want that name showing up in the call log.

Also, since the earlier CallKit/iCloud issues had been addressed before
iOS11, we upgrade all iOS11 users to the more intuitive CallKit
interface.

Also: introduce "use system call logs" toggle when available. It will be
enabled by default, but we disable it for legacy users who'd explicitly
opted *out* of CallKit.

// FREEBIE
7 years ago
Matthew Chen 5b9ab0cf5d Auto-disable CallKit privacy in iOS 11 and later. 7 years ago
Matthew Chen 38ff82ab97 Rebrand OWSAudioPlayer. 7 years ago
Matthew Chen 306af29d6f Restore "sonar ping" for "call connecting." 7 years ago
Matthew Chen 32b87d0e58 Remove custom ringtones. 7 years ago
Matthew Chen e54cf313e8 Use quiet versions of the notification sounds in foreground. 7 years ago
Matthew Chen 55b9aa4089 Preserve 'classic' Signal notification and ringtone for legacy users. 7 years ago
Matthew Chen 390cf3c80a Revive the 'classic' Signal notification and ringtone. 7 years ago
Matthew Chen 62af7ddc15 Add "none" option for sounds. Use AVPlayer for everything. 7 years ago
Matthew Chen 99aedca45f Strip out special casing for pre-iOS 9 users. 7 years ago
Matthew Chen 899799af92 Improve sound settings view. 7 years ago
Matthew Chen 5e8f3086de Update call sounds. 7 years ago
Matthew Chen a0f4723fa2 Update call sounds. 7 years ago
Matthew Chen a44a117612 Add custom ringtone sounds. 7 years ago
Matthew Chen 396fe82707 Add UI for editing per-thread notification sounds. 7 years ago
Matthew Chen dc8b8ca0bd Add per-thread custom notification sounds. 7 years ago
Matthew Chen 9aa02489b8 Custom notification sounds in local notifications. 7 years ago
Matthew Chen a837c5d41b Custom notification sounds. 7 years ago
Matthew Chen 60d839d7a4 Custom notification sounds. 7 years ago
Matthew Chen 5c3f6b0ee5 Custom notification sounds. 7 years ago
Michael Kirk 5af1123219 Fix freeze in host app after "dismissing" select thread VC
We must call these completion handlers whenever we exit the SAE

// FREEBIE
7 years ago
Matthew Chen 152c570900 Respond to CR. 7 years ago
Matthew Chen 5444fc73b0 Improve handling of db modifications while conversation view is not observing. 7 years ago
Matthew Chen 706006539f Improve the robustness of the migration logic. 7 years ago
Matthew Chen d91507d897 Improve the robustness of the migration logic. 7 years ago
Matthew Chen 7132179c5c Fix handling of HEIF/HEIC when attaching image "as document." 7 years ago
Michael Kirk 707ab5f5a8 Minimize changes around call audio activity
// FREEBIE
7 years ago
Michael Kirk 4dd1c7813a Instrument calls to ensure audio session is maintained
// FREEBIE
7 years ago