Commit Graph

638 Commits (9496bedce1e8c65f26a90eba30ff5041e87680c8)

Author SHA1 Message Date
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