Commit Graph

540 Commits (46d27cef30cf5f369710382f8eb58d6e8799a8da)

Author SHA1 Message Date
Matthew Chen 58ebebc97f Move QR code scanning to a separate view.
// FREEBIE
8 years ago
Michael Kirk 6715e76c99 Prefer archiving, to deleting old sessions for better handling of out of
order decryption.

// FREEBIE
8 years ago
Michael Kirk a139bd73e6 Remove deprecated info message from debug UI
// FREEBIE
8 years ago
Matthew Chen fe0ddb53d2 Clean up ahead of PR.
// FREEBIE
8 years ago
Matthew Chen 93a587c896 Convert FingerprintViewController to programmatic layout.
// FREEBIE
8 years ago
Matthew Chen 3508feaec3 Convert FingerprintViewController to programmatic layout.
// FREEBIE
8 years ago
Matthew Chen bc63a72c25 Add verification state change messages.
// FREEBIE
8 years ago
Michael Kirk 75bab75dc8 Show no redundant error when failing to send due to changed identity
The old "blocking" style SN alerts are deprecated. We maintain the
functionality to decrypt incoming messages from legacy SN alerts so that
users have time to recover their undecrypted messages.

// FREEBIE
8 years ago
Matthew Chen c3edbd9aa4 Fix paste of text fragments.
// FREEBIE
8 years ago
Michael Kirk 842baa3072 CR: use weak self
// FREEBIE
8 years ago
Michael Kirk f7468acad2 Properly dismiss file view after proceeding with share to no-longer
verified identity

// FREEBIE
8 years ago
Michael Kirk 4e995b76f3 Don't try to share file to untrusted identity
There's a problem with this approach - specifically we need to dismiss
the external file share view controller eventually.

But more generally, because SN can present a view controller, it's kind
success/retry handling is contextual to it's presenting view controller.

So, probably the thing to do is duplicate this logic at it's various
presentation contexts.

// FREEBIE
8 years ago
Michael Kirk 1a3204bf46 create interaction in thread when missing call due to changed identity
// FREEBIE
9 years ago
Michael Kirk 022292e2e5 CR: extract method for readability
// FREEBIE
9 years ago
Michael Kirk 5b2428c8a5 debug toggle verification state
// FREEBIE
9 years ago
Michael Kirk 4000908f43 clarify assert per code review
// FREEBIE
9 years ago
Michael Kirk bae91d97d6 clearer code style
// FREEBIE
9 years ago
Michael Kirk d77addc01e extract session state debug utils into section
// FREEBIE
9 years ago
Michael Kirk 54865e43ed debug item to locally simulate a SN change
...because constantly reinstalling a secondary device takes too long

You can toggle twice to switch it back, but most of the time you'll
simply pull the latest (real) key when the message view regains focus.

// FREEBIE
9 years ago
Michael Kirk c8d547a08f Only allow callback for identities that were not previously verified
// FREEBIE
9 years ago
Michael Kirk 1127553041 restore "confirm and callback" functionality
// FREEBIE
9 years ago
Michael Kirk 146031e4d5 update copy / remove some unused "unseen" tracking
// FREEBIE
9 years ago
Michael Kirk 41a34e572b Update Safety Number alerts to work with verification
// FREEBIE
9 years ago
Matthew Chen c7c243cfed Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen b6ddea9eae Sketch out OWSIdentityManager.
// FREEBIE
9 years ago
Matthew Chen ceb210748e Sketch out OWSIdentityManager.
// FREEBIE
9 years ago
Matthew Chen 1dffdb5ca0 Indicate if censorship circumvention is active in the main app settings view.
// FREEBIE
9 years ago
Matthew Chen 15074cdb8f Clean up system message cells, make them tappable, etc.
// FREEBIE
9 years ago
Matthew Chen 2d76f2beb9 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 301c8c51a1 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen eb53958aeb Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen efa40dbdb7 Rework icons in conversation settings view.
// FREEBIE
9 years ago
Matthew Chen b3c42f0c3e Rework and unify the system messages.
// FREEBIE
9 years ago
Matthew Chen a013a7206e Rework and unify the system messages.
// FREEBIE
9 years ago
Matthew Chen 9cdf907e20 Rework and unify the system messages.
// FREEBIE
9 years ago
Matthew Chen 2cbf1e1d05 Rework and unify the system messages.
// FREEBIE
9 years ago
Matthew Chen 74209561cc Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen dab8ddb37d Rework appearance of the unread indicator.
// FREEBIE
9 years ago
Matthew Chen 165de573c5 Fix edge cases in the unseen indicator.
// FREEBIE
9 years ago
Matthew Chen 84d5ee8e47 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen a69c6cce4e Decompose MessagesViewController, add “scroll to bottom button”, improve scrolling behavior.
// FREEBIE
9 years ago
Matthew Chen 831046338e Respond to CR.
// FREEBIE
9 years ago
Matthew Chen e48bf65347 Fix “can’t paste GIF from iMessage” issue.
// FREEBIE
9 years ago
Matthew Chen 5dcdace26f Fix “can’t paste GIF from iMessage” issue.
// FREEBIE
9 years ago
Matthew Chen 5fad3304a5 Streamline observation of database modifications in home view.
// FREEBIE
9 years ago
Matthew Chen b5f5599774 Fix edge cases in the unseen indicator.
// FREEBIE
9 years ago
Matthew Chen 226a975859 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen 22fc69bbb4 Decompose MessagesViewController, add “scroll to bottom button”, improve scrolling behavior.
// FREEBIE
9 years ago
Michael Kirk 5b12f4afae Prevent outgoing calls started from various places unless have been seen
e.g. from contacts app

// FREEBIE
9 years ago
Michael Kirk 130aa132a0 Reject incoming calls from an unseen changed identity
// FREEBIE
9 years ago
Matthew Chen b31ef7231a Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 78982f2377 Fix issues around initial layout of messages view.
// FREEBIE
9 years ago
Matthew Chen 76df8431a8 Reset the unread indicator state if possible while app is in the background.
* Clean up timer usage.

// FREEBIE
9 years ago
Matthew Chen 0bccd58213 Make “send message” button easier to tap.
// FREEBIE
9 years ago
Michael Kirk 9a2f218bf3 show SN confirmation before adding to group
* Extract SN confirmation dialog

// FREEBIE
9 years ago
Michael Kirk 2d7f03a1c8 interstitial SN confirmation for attachments/voicenotes
// FREEBIE
9 years ago
Michael Kirk 47783a9df0 request confirmation when calling changed SN
...rather than failing with "SN Changed" error

// FREEBIE
9 years ago
Michael Kirk c55f7044a6 Use avatar view in group views
// FREEBIE
9 years ago
Michael Kirk 52aa8a3744 require explicit avatar diameter
This will help us get crisper text in our generated avatars.

// FREEBIE
9 years ago
Michael Kirk 19d74d91e0 Build higher res avatar for call screen
Initials avatar looks blurry on call screen

// FREEBIE
9 years ago
Michael Kirk b11f8affa7 Use AvatarImageView
Conistently apply avatar style

* contact picker
* conversation settings
* home view

// FREEBIE
9 years ago
Matthew Chen 746d131a89 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 19390abc41 Refine the unseen indicators.
* Fix sizing of the unread indicator cells.
* Fix conflicts between paging and “load window” of conversation view and unseen indicator.
* Modify unseen indicator to indicate whether there are more unseen messages and safety number changes.
* Fix conflicts between modifying the “load window” size and updating the dynamic interactions.
* Clear the “bubble size calculator” cache whenever the view changes size.
* Improve the scrolling behavior around “load more messages”.
* Improve management of “load window” size.
* Fix issues around caching of bubble sizes.

// FREEBIE
9 years ago
Matthew Chen b2fa93e2ad Skip redundant layout pass in messages view.
// FREEBIE
9 years ago
Matthew Chen 3a83f93099 Tweak appearance of registration views.
// FREEBIE
9 years ago
Matthew Chen d065c95270 Hide the socket status view when censorship circumvention is active.
// FREEBIE
9 years ago
Michael Kirk 37e0b1a004 Sending to unconfirmed idnetity presents confirmation
Rather than send/fail

// FREEBIE
9 years ago
Michael Kirk 1a03be8ae7 Fetch safety number upon entering thread
* uniform method to get recipients in group/contact thread
  * use it to clean up markAsSeenJob

// FREEBIE
9 years ago
Michael Kirk bb25d2beb6 IdentityKeyStore changes
1) Always accept keys from incoming messages

2) Block sending only if it's a recent change, or if always
   block is enabled

// FREEBIE

// FREEBIE
9 years ago
Matthew Chen 4680a2465a Remove registration storyboard.
// FREEBIE
9 years ago
Matthew Chen 964e6f1adf Improve asserts and logging in attachment adapters.
// FREEBIE
9 years ago
Matthew Chen 9577038f11 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 7547d03a78 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen 2fc683dd9d Add example phone number to registration view and make layout responsive.
// FREEBIE
9 years ago
Matthew Chen 070395e8b6 Rewrite registration view.
// FREEBIE
9 years ago
Matthew Chen eeb510b903 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 4ac78d9b41 Replace app settings segue.
// FREEBIE
9 years ago
Matthew Chen b0005ea932 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen bc501b16f2 Let users manually specify the domain fronting country.
// FREEBIE
9 years ago
Matthew Chen 98c5e7d69c Add support for manually activating censorship circumvention.
// FREEBIE
9 years ago
Matthew Chen c07f28565e Revise manual censorship circumvention.
// FREEBIE
9 years ago
Matthew Chen e746636c7c Expose manual censorship circumvention setting.
// FREEBIE
9 years ago
Matthew Chen db10cbaeea Convert AdvancedSettingsTableViewController to OWSTableView.
// FREEBIE
9 years ago
Matthew Chen 7f3d76d8bb Convert the app settings view to OWSTableView.
// FREEBIE
9 years ago
Matthew Chen 4bb702fe0d Add support for manually activating censorship circumvention.
// FREEBIE
9 years ago
Matthew Chen dac5483fdd Clean up CountryCodeViewController delegates.
// FREEBIE
9 years ago
Matthew Chen 61de84a203 Clean up CountryCodeViewController delegates.
// FREEBIE
9 years ago
Matthew Chen 867eb7d741 Convert CountryCodeViewController.
// FREEBIE
9 years ago
Matthew Chen ea9dc3fe77 Rationalize the segues between registration view and country code view.
// FREEBIE
9 years ago
Matthew Chen a37b194dc0 Add debug functions for sending media messages.
// FREEBIE
9 years ago
Matthew Chen df2ee6ba55 “Add to contacts” offer.
// FREEBIE
9 years ago
Matthew Chen bc63389d23 “Add to contacts” offer.
// FREEBIE
9 years ago
Matthew Chen 7b70fe674a “Add to contacts” offer.
// FREEBIE
9 years ago
Matthew Chen ac0c6e21de Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 14ebc58d52 Revise scrolling behavior of messages view.
// FREEBIE
9 years ago
Matthew Chen c639926f2c Revise scrolling behavior of messages view.
// FREEBIE
9 years ago
Matthew Chen 4e1dda275d Revise scrolling behavior of messages view.
// FREEBIE
9 years ago
Matthew Chen 55dab36ce1 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen b3948f27d7 Add debug functions to generate and delete random contacts.
// FREEBIE
9 years ago
Matthew Chen db07ea8a8e Persist attachment file paths.
// FREEBIE
9 years ago
Matthew Chen ac458cc7ad Add unread indicator.
// FREEBIE
9 years ago
Matthew Chen 0ec095f216 Nag users on iOS 8 to upgrade.
// FREEBIE
9 years ago
Michael Kirk 14b6294d6f code cleanup pre CR
// FREEBIE
9 years ago
Michael Kirk 4adaaa605f Hide contact editing features on iOS8
// FREEBIE
9 years ago
Matthew Chen 54faff2db2 Show alerts for missing or invalid phone numbers in registration view.
// FREEBIE
9 years ago
Matthew Chen 37a601d765 Honor the local calling code in select recipient view.
// FREEBIE
9 years ago
Matthew Chen 14fed91ea2 Fix edge cases in voice message recording.
// FREEBIE
9 years ago
Matthew Chen 5c8956f977 Dismiss keyboard before showing the “too short voice message” alert.
// FREEBIE
9 years ago
Michael Kirk c31fd0dfcc Fix flicker of "no contacts" screen on message compose
// FREEBIE
9 years ago
Matthew Chen 9dc1847ca9 Change conversation settings buttons to gray.
// FREEBIE
9 years ago
Michael Kirk 17cff1a26d Revert "Merge branch 'charlesmchen/bluetoothAudio'"
This reverts commit 48a2005aa2, reversing
changes made to de1332479c.

// FREEBIE
9 years ago
Matthew Chen 54bf103508 Fix Bluetooth audio when recording voice messages.
// FREEBIE
9 years ago
Michael Kirk 16032b9c61 strongSelf per CR
// FREEBIE
9 years ago
Michael Kirk c56ff7532c Fix confusing double permission request on new install when sending
voice notes

// FREEBIE
9 years ago
Michael Kirk e2b1cbb154 Don't show "no signal accounts" until contact intersection has completed
at least once

// FREEBIE
9 years ago
Matthew Chen fc51768197 Work around m4a vs. mp4 issue for voice messages in legacy iOS clients.
// FREEBIE
9 years ago
Matthew Chen c1a1ea7f3b Let users start new 1:1 conversations with blocked non-contacts found by phone number.
// FREEBIE
9 years ago
Matthew Chen 2048b330ac Don't hide keyboard when recording a voice message.
// FREEBIE
9 years ago
Michael Kirk abcc510341 "Conversation Settings" -> "Contact/Group Info"
Clearer heading

// FREEBIE
9 years ago
Matthew Chen ad9c715bf7 Deduplicate items in new conversation view and try to show “phone number” results as signal accounts if possible.
// FREEBIE
9 years ago
Matthew Chen 12e45eaf84 Ignore taps on outgoing messages while they are being sent.
// FREEBIE
9 years ago
Matthew Chen 1a593e5f34 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 5afe9bca6f Respond to CR.
// FREEBIE
9 years ago
Matthew Chen b316e18cfa Ensure contact delegate helper is set during initialization.
// FREEBIE
9 years ago
Matthew Chen 4a2a3ffa51 Trim whitespace from group names.
// FREEBIE
9 years ago
Matthew Chen 782e3d42bd Trim whitespace from group names.
// FREEBIE
9 years ago
Matthew Chen 3e8b4225b3 Show alert when user tries to play an invalid audio file.
// FREEBIE
9 years ago
Matthew Chen 6ec167e7e0 Disable scrolling if no contacts in “select recipient” views.
// FREEBIE
9 years ago
Michael Kirk 0a7996ffbc Perform contact intersection ~every 6 hours even if no contacts changed
// FREEBIE
9 years ago
Matthew Chen 1b99fd1df4 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen a15d11c3e6 Rework appearance of voice messages and audio attachments.
// FREEBIE
9 years ago
Matthew Chen 0ff3e5e6a3 Don’t add blocked users to new groups and handle block alert results correctly.
// FREEBIE
9 years ago
Matthew Chen f10d530410 After sending a text message, the "send" button should revert to mic.
// FREEBIE
9 years ago
Matthew Chen 37278c22d5 Remove extra period in voice message file names.
// FREEBIE
9 years ago
Michael Kirk 755d5dc4e6 resolve push-token changes from RI of hotfix/2.11.4
// FREEBIE
9 years ago
Michael Kirk 929ba06263 Merge branch 'hotfix/2.11.4' into mkirk/fix-push-sync-job 9 years ago
Matthew Chen 73f79f05ec Format example phone numbers.
// FREEBIE
9 years ago
Matthew Chen c81eed74ca Show example phone numbers.
// FREEBIE
9 years ago
Matthew Chen 0bab5ed404 Always honor filtering in contact-related views.
// FREEBIE
9 years ago
Matthew Chen 033ce90dd3 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen eabda5ad90 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen 19b80d1f4b Rework the “disappearing messages” logic.
// FREEBIE
9 years ago
Michael Kirk 737a5932c0 tapping contact label shows contact edit view
// FREEBIE
9 years ago
Michael Kirk bd343f6971 clean up some animations
// FREEBIE
9 years ago
Michael Kirk aabd56b23d Clean up comments per CR
// FREEBIE
9 years ago
Michael Kirk 9dc9813dea fix layout for long named contacts
// FREEBIE
9 years ago
Michael Kirk 3754b6f264 Edit 1:1 contact details
// FREEBIE
9 years ago
Michael Kirk e95b579d97 TODONE
// FREEBIE
9 years ago
Michael Kirk 073c0d6639 Add/Edit contacts in group list
* properly populate phone fields
* Fix appearence for CNContactViewController
* "Add Contact" vs "Show Contact"

// FREEBIE
9 years ago
Michael Kirk fee47efbea Avoid repaint by requestng contacts before Compose
This entailed passing callback params through the contact request.

// FREEBIE
9 years ago
Michael Kirk 04878bf222 rename method to better reflect new role
// FREEBIE
9 years ago
Michael Kirk 03727a27f6 compose w/o contact access -> "..by phone number"
The search field and invite buttons are not very useful without contacts
access.

// FREEBIE
9 years ago
Michael Kirk 0b6962cdd0 contacts reminder in compose view
// FREEBIE
9 years ago
Michael Kirk bf5b6d1e63 Invite Flow when "no contact"
TODO: we should probably just prevent people from getting to the invite
flow when their contacts aren't shared, but still it seems good to fix
these crashes.

// FREEBIE
9 years ago
Michael Kirk 40dead89e5 don't crash invite flow when contacts disabled
// FREEBIE
9 years ago
Matthew Chen e85aa045e1 Flag voice messages as such in protos.
// FREEBIE
9 years ago
Matthew Chen 29dd62a19a Always clear message drafts after sending a text message.
// FREEBIE
9 years ago
Matthew Chen 4506064aa6 Prefer to determine an attachment’s file extension for its file name if possible.
// FREEBIE
9 years ago
Matthew Chen 0137e01aff Try to deduce attachment MIME type from the file extension if possible.
// FREEBIE
9 years ago
Matthew Chen 73db16e068 Improve logging around push token sync.
// FREEBIE
9 years ago
Matthew Chen 2f3831e04b Respond to CR.
// FREEBIE
9 years ago
Matthew Chen dd3d63623a Pull logging into SyncPushTokensJob.
// FREEBIE
9 years ago
Matthew Chen 716aa772f6 Always sync and log push tokens. Apply OWSAlerts in more places.
// FREEBIE
9 years ago
Matthew Chen aba29ac5ce Improve logging around SyncPushTokensJob.
// FREEBIE
9 years ago
Matthew Chen b47337c0ba Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 34a7f9cba5 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen b21e5c3248 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 7f92b5a96b Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 7a37de28e5 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen bf6d8ec141 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen 8ecdc8a2eb Move voice memo button to send button.
// FREEBIE
9 years ago
Matthew Chen c34d61b93f Add cancel-by-swipe of voice memo recording.
// FREEBIE
9 years ago
Matthew Chen 608cb70a3b Add voice memo recording.
// FREEBIE
9 years ago
Matthew Chen 45c8695ab4 Sketch out the voice memo UI.
// FREEBIE
9 years ago
Michael Kirk fbcda40400 rename class, extract color
per code review

// FREEBIE
9 years ago
Michael Kirk a58a71f8f4 no contacts banner -> system settings 9 years ago
Matthew Chen 9f4b8d3b0f Slightly reduce the non-contact cell heights in “new 1:1 conversation” view.
// FREEBIE
9 years ago
Matthew Chen d0e26a58c3 Show “invite by SMS” offer for matching non-Signal contacts when searching in “new 1:1: conversation” view.
// FREEBIE
9 years ago
Matthew Chen 1e6fd385b5 Fix assert in conversation settings view.
// FREEBIE
9 years ago
Matthew Chen 0c4351a908 Use SignalAccount class to sync contacts.
// FREEBIE
9 years ago
Michael Kirk d7c7fff679 Fix some compiler warnings
* explicit optional usage in strings
* remove some unused StringUtil code
* swiftlint affected files
* more concise optional casting (and avoid a `!`)

Compiler warnings: 343 -> 318

(Actually most of these are in external libs, but 115 remain in Signal/SSK)

// FREEBIE
9 years ago
Matthew Chen 45ae8fb067 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 2bc1d44cd2 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 1b99671e0e Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen 325134c6e8 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen 363d84fd2d Update “new conversation” view to use OWSTableView, contacts view helper, etc.
// FREEBIE
9 years ago
Matthew Chen 1444cfc630 Merge remote-tracking branch 'origin/hotfix/2.11.2' 9 years ago
Michael Kirk 364f416a69 Block editing contact if user has denied contact permissions
// FREEBIE
9 years ago
Michael Kirk b24cf29189 don't request contacts until necessary
Most commonly this will be after hitting the "compose" button

But also we'll do it in the SignalViewController once you've received a
message.

- get rid blocking contacts nag
- use Contacts framework simplifies logic
- remove dead AB code

// FREEBIE
9 years ago
Matthew Chen 33415eaa0f Respond to CR.
// FREEBIE
9 years ago
Matthew Chen ae7934c117 Update appearance of audio and generic attachment adapters.
// FREEBIE
9 years ago
Matthew Chen 800715a5e0 Remove waveform from audio message bubbles.
// FREEBIE
9 years ago
Michael Kirk 2f05dcc2c5 fix crash when viewing undisplayable text
(can't init attributed string with nil)

// FREEBIE
9 years ago
Matthew Chen 0f85284b82 Fix speakerphone vs. WebRTC AND Fix CallService edge cases.
// FREEBIE
9 years ago
Matthew Chen 4bc98dba58 Rework the scaling and cropping of group avatars.
// FREEBIE
9 years ago
Matthew Chen 26f69b0063 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen f71ec9f7cb Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 2bec1db541 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen ad11c50c1b Reworking observation of Contact and SignalAccount changes.
// FREEBIE
9 years ago
Matthew Chen 994aec0d86 Add SignalAccount class.
// FREEBIE
9 years ago
Matthew Chen 6801963a1b Add SignalAccount class.
// FREEBIE
9 years ago
Matthew Chen 93700f1044 Extract labels for phone numbers.
// FREEBIE
9 years ago
Matthew Chen 42768294ee Extract labels for phone numbers.
// FREEBIE
9 years ago
Matthew Chen cb9d96be00 Clean up ahead of PR.
// FREEBIE
9 years ago
Matthew Chen da7dd1b128 Clean up debug scaffolding.
// FREEBIE
9 years ago
Matthew Chen f5cd39ea35 Apply ContactsViewHelper to SelectThreadViewController.
// FREEBIE
9 years ago
Matthew Chen 61f59067b6 Improve contact-related views.
* Add support for contacts with more than one Signal account using ContactAccount class.
* Use OWSTableViewController in contact-related views.
* Let users add non-contacts to groups.
* Improve the "new group" and "edit group" views.
* Add utility methods for displaying alerts.
* Warn users before discarding unsaved changes in "edit group" view.
* Pull out "contact view helper" to de-duplicate common logic among contact-related views.
* Pull out "group view helper" to de-duplicate common logic among group-related views.
* Pull out new base class for view used to add accounts to groups or the block list.

// FREEBIE
9 years ago
Matthew Chen 6ae3a5395e Skip attachment approval dialog for image and video shot by camera.
// FREEBIE
9 years ago
Michael Kirk 48971478dd Allow importing of any file that's not a directory
// FREEBIE
9 years ago
Matthew Chen 89c5f93aad Tweak appearance of "export with Signal" UI.
// FREEBIE
9 years ago
Michael Kirk 822f5c8415 support sending all files
use generic mimetype when file has unknown extension

// FREEBIE
9 years ago
Michael Kirk 93fe122323 display error if user picks directory/bundle e.g. .pxm
// FREEBIE
9 years ago
Michael Kirk 1d91441676 truncate really long file names in the middle
// FREEBIE
9 years ago
Matthew Chen 8a8b10b688 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen d081df9ded Respond to CR.
// FREEBIE
9 years ago
Matthew Chen c84da982ae Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 93eed73530 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 5c0c9b533e Respond to CR.
// FREEBIE
9 years ago
Matthew Chen e75ed5e477 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 6e36ce97a5 Let users share imported files to a thread or contact of their choice.
// FREEBIE
9 years ago
Matthew Chen 3c7574a908 Register Signal to handle a wide variety of common document types.
// FREEBIE
9 years ago
Matthew Chen 788ec4ce01 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen d42588b957 Improve appearance of generic attachments and the attachment approval dialog.
// FREEBIE
9 years ago
Michael Kirk 66e858a35a Validate all picked attachments/ show preview
// FREEBIE
9 years ago
Michael Kirk 4d15fbf2dc cherry-pick (rebased) charlesmchen/stressTesting/Signal/src/ViewControllers/SignalAttachment.swift
// FREEBIE
9 years ago
Michael Kirk 203009d4ef fix compiler warning / idiomatic optional unwrapping
// FREEBIE
9 years ago
Michael Kirk 26b94bf94b Always send a filename
// FREEBIE
9 years ago
Matthew Chen b99984f9d3 Fix the “message view subtitle mis-sized after muting” issue.
// FREEBIE
9 years ago
Michael Kirk 4440183414 translation comment for "group name" field
// FREEBIE
9 years ago
Matthew Chen a0a930aac3 Resolve the menu item conflicts between message view and media view.
// FREEBIE
9 years ago
Matthew Chen 866493c8ed Add icons to attachment action sheet.
// FREEBIE
9 years ago
Michael Kirk ea7c74316e capitalize *all* letters of file extension
// FREEBIE
9 years ago
Michael Kirk 474a6d3253 document picker uses approval dialog
// FREEBIE
9 years ago
Matthew Chen 1acb2d7493 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 9779527cf2 Let users edit group name and avatar by tapping on them in group settings view.
// FREEBIE
9 years ago
Matthew Chen a59f49ceac Resolve the menu item conflicts between message view and media view.
// FREEBIE
9 years ago
Matthew Chen 62e6c9a120 Fix crash unsafely accessing optional media method.
// FREEBIE
9 years ago
Michael Kirk 70d235a670 Choose arbitrary attachments from iCloud/GDrive/Dropbox/etc
// FREEBIE
9 years ago
Michael Kirk b1ea340c36 Callscreen fills buttons to show active state
// FREEBIE
9 years ago
Matthew Chen eb23252c6c Fix timer retain cycle.
// FREEBIE
9 years ago
Matthew Chen 4b2bdd9b52 Use audio attachment player in attachment preview dialog.
// FREEBIE
9 years ago
Matthew Chen 041badd295 Decouple the audio attachment player from the video attachment adapter.
// FREEBIE
9 years ago
Matthew Chen b90b71351f Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 980d726a48 Add audio attachment player.
* Fix two bugs around play/pause button appearance.
* Fix bugs around stopping playback when leaving view/entering background.
* Fix bugs around cleaning up playback state  when leaving view/entering background.
* Fix audio playback vs. hardware mute button.
* Improve handling of invalid audio attachments.

// FREEBIE
9 years ago
Michael Kirk d9e3e87735 New downloading progress view (#2006)
Replace previous "scary" warning-style attachment notifications with
something less alarming.

Includes file name and file type emoji when discernable.

// FREEBIE
9 years ago
Matthew Chen 2b09033dda Show mute status in home view.
// FREEBIE
9 years ago
Matthew Chen b2dd458f12 Fix “muted until” date format.
// FREEBIE
9 years ago
Matthew Chen b2664158b1 Pause animated gifs when offscreen; clean up media views more aggressively.
// FREEBIE
9 years ago
Matthew Chen ee765df4b1 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen e36b5a4602 Improve group members view.
// FREEBIE
9 years ago