Commit Graph

653 Commits (2c9a5567865ff47c5e0412de7b133234fabd531c)

Author SHA1 Message Date
Matthew Chen 44e38709d6 Update minimum iOS version to 9.0. 7 years ago
Matthew Chen 710d164186 Update minimum iOS version to 9.0. 7 years ago
Matthew Chen 899799af92 Improve sound settings view. 7 years ago
Matthew Chen 5e8f3086de Update call sounds. 7 years ago
Matthew Chen a44a117612 Add custom ringtone sounds. 7 years ago
Matthew Chen 9aa02489b8 Custom notification sounds in local notifications. 7 years ago
Matthew Chen 5c3f6b0ee5 Custom notification sounds. 7 years ago
Michael Kirk 6eb1ce682a Debug file browser
// FREEBIE
7 years ago
Michael Kirk abb51b565a Don't de-activate audio sesion when other audio activities are happening
// FREEBIE
7 years ago
Matthew Chen 7ea1f3d926 Fix handling of file types in SAE. 7 years ago
Michael Kirk debd556e09 Fix notification % escaping, debug UI
Consolidated the notifications debug UI (and fixed it) to make testing
this a bit easier.

// FREEBIE
7 years ago
Matthew Chen 122ef91e57 Add protocol context to protocol kit. 7 years ago
Michael Kirk c646f76335 Garther audio concerns, clean up session when done
- sync speakerphone state manipulated from system call screen
  - Revert audio session after call failure, ensures media plays out of
    speaker after placing a failing call.
  - Replace notification with delegate pattern since we're already using
    delegate pattern here.
- Fixes voiceover accessibility after voice memo
- Avoid audio blip after pressing hangup
- Rename CallAudioSession -> OWSAudioSession
  Going to start using it for other non-call things since we want to
  gather all our audio session concerns.
- Resume background audio when done playing video
  - Extract OWSVideoPlayer which ensures audio is in proper state before
    playback
  - Move recording session logic to shared OWSAudioSession
  - Deactivate audio session when complete

// FREEBIE
7 years ago
Michael Kirk d22fc664f2 more granular key access
// FREEBIE
7 years ago
Matthew Chen 74cd37dd7c Clean up ahead of PR. 7 years ago
Matthew Chen 2af858c529 Add message approval view. 7 years ago
Matthew Chen b9bd21e73f Improve presentation of text attachments in attachment approval view. 7 years ago
Matthew Chen 0cc7f3e00e Clean up ahead of PR. 7 years ago
Matthew Chen c5079ed3d7 Add support for key specs. 7 years ago
Michael Kirk 468dedf581 Use debug configuration when building Signal for tests
allows proper step-through debugging of CocoaPods

// FREEBIE
7 years ago
Michael Kirk 6297137924 Disable optimizations when building tests for SignalMessaging
// FREEBIE
7 years ago
Matthew Chen 5ba5b763e4 Add tests around database conversion. 7 years ago
Matthew Chen dc73342573 Convert databases if necessary. 7 years ago
Matthew Chen 6b51be75a5 Revert "Set preprocessor symbols for internal builds."
This reverts commit a91056c5e1.
7 years ago
Matthew Chen a91056c5e1 Set preprocessor symbols for internal builds. 7 years ago
Michael Kirk baa312f449 Timer button with duration label
// FREEBIE
7 years ago
Matthew Chen 4e15e9bf2c Add Signal "internal" scheme with DEBUG and INTERNAL flags set for signal project. 7 years ago
Matthew Chen a21bc4f4b4 Convert SAE scheme to a shared scheme. 7 years ago
Michael Kirk 94d58b88b8 Play video inline in approval view
Previously we launched the MPMoviePlayerController

// FREEBIE
7 years ago
Michael Kirk a423fe8a0e WIP Merge tag '2.19.4.4'
- restore video playback in fullscreen

This was a large merge, so I'm opting to make some changes in separate
commits.
7 years ago
Matthew Chen 272a90d269 Add import back up UI. Begin work on import backup logic. 7 years ago
Matthew Chen 980b3d25a7 Rework "export backup" UI. 7 years ago
Matthew Chen 8769fb07cf Write backup to encrypted zip. 7 years ago
Matthew Chen 9e89502fdb Let users send to non-contacts, non-threads in SAE. 7 years ago
Michael Kirk 412fe2735e Rename FullImageViewController -> MediaDetailViewController
// FREEBIE
7 years ago
Michael Kirk 86d61eee30 Custom video player layer to avoid "double present/dismiss"
// FREEBIE
7 years ago
Michael Kirk 7d0acc94ff cleanup
// FREEBIE
7 years ago
Michael Kirk 65f79770ac rebase fixup 7 years ago
Michael Kirk 90e9b4a4f2 WIP - send all video types 7 years ago
Michael Kirk d3e7c99a63 Attachment approval: cancel/confirm to top/bottom toolbars
- avoid double-submit by disabling after hitting send.
- Animate SAE dismissal as modal
  Requires hiding the load view
- attachment is centered in screen
- add gradient to ensure controls are visible
- Fix clamp constraints - I think this was a typo
  Otherwise we couldn't show an image which was 1" wide by 2" tall
- set max zoom, hide scroll indicators
- use media view
- slower panning feels right
- white send button
- can share GIF, static, and sort of video...
- Play button for attachment approval
  - move to image assets so we can use it in SAE
  - slightly larger button for full-screen approval view
  - don't launch redundant fullscreen UI for images when in approval view
- fix scrollOffset in AttachmentApproval
- consolidate view initialization logic in loadView and fix white background
- CR: more legible arithmetic

// FREEBIE
7 years ago
Matthew Chen 74efcb9041 Rework thread safety in profile manager. 7 years ago
Matthew Chen 911c4d380b Rework thread safety in profile manager. 7 years ago
Michael Kirk ddd2004824 track dyload time 7 years ago
Michael Kirk d9cca77e23 update header references
// FREEBIE
7 years ago
Michael Kirk dd1795e337 fixup rebae 7 years ago
Michael Kirk 3ecf0a7537 Cancelling dismisses share extension, remove "import with signal"
Usinig the new ShareViewDelegate to dismiss the share extension, might
have broken the "import with signal" functionality. But because we
want to remove it anyway, I've done that now, rather than fix it up.

// FREEBIE
7 years ago
Matthew Chen 345323fe8a Add Estonian and Taiwanese Chinese localizations. 7 years ago
Matthew Chen f7bcf1d04d Fix tests. 7 years ago
Matthew Chen 36703d3bbd Add asserts around Swift singletons. 7 years ago
Matthew Chen 8312614cf7 Respond to CR. 7 years ago
Matthew Chen 99f0b9d3e8 Fix issues around statics. 7 years ago
Michael Kirk 3f6f881d3f Use assets from duplicated main bundle
// FREEBIE
7 years ago
Michael Kirk eca19e5874 Reconcile MediaMessageView zoom behavior with AppExtension
Previously it was predicated on UIApplication.shared

// FREEBIE
7 years ago
Michael Kirk 89b9887f1d Make DeviceSleepManager extension compatible
// FREEBIE
7 years ago
Michael Kirk 654d345469 remove null references to moved certificates 7 years ago
Michael Kirk c52192295b fixup rebase. move jobs to proper dir 7 years ago
Michael Kirk 56fe9d057d Attachment Approval
// FREEBIE
7 years ago
Michael Kirk a58f1f385c Share a photo from photos app
Shows the conversation picker, and sends the attachment to that
conversation.

There's still a lot TODO

-[ ] resolve JSQ dependency
-[ ] properly wait for app to load
-[ ] dismiss share extension after send is complete
-[ ] support non jpeg file types
-[ ] Fix device sleep manager

// FREEBIE
7 years ago
Matthew Chen 848f055da1 Add SAE error views. 7 years ago
Matthew Chen 310cf1330d Continue conversion of app setup. 7 years ago
Matthew Chen 69e0bcd308 Fix tests. 7 years ago
Matthew Chen 9da165b846 Continue conversion of app setup. 7 years ago
Matthew Chen ce899edf10 Respond to CR. 7 years ago
Matthew Chen b4e8df79da Migrate environment to SignalMessaging. 7 years ago
Matthew Chen a16058e477 Migrate environment to SignalMessaging. 7 years ago
Matthew Chen 6d87df88aa Migrate environment to SignalMessaging. 7 years ago
Matthew Chen c817aa51b3 Migrate environment to SignalMessaging. 7 years ago
Michael Kirk e3b0333b97 CR: Separate class files
// FREEBIE
7 years ago
Michael Kirk cd440b839f Consolidate search logic
// FREEBIE
7 years ago
Michael Kirk 71bafcc8f0 Search SignalAccounts by profile name
...and fixup some tests
7 years ago
Michael Kirk 2af818b3ba Make SignalMessaging AppExtension safe
// FREEBIE
7 years ago
Matthew Chen bf21d0c0ed Enable logging in SAE; rework log file management to include multiple log directories. 8 years ago
Matthew Chen 8cc33b3de1 Refine loading view of share extension. 8 years ago
Matthew Chen f728f5c09b Incorporate l10n strings from main app into SAE. 8 years ago
Matthew Chen 074664f735 Revert "Modify l10n string extraction script to copy strings to SAE."
This reverts commit c61490c0b4.
8 years ago
Matthew Chen efe0758e3d Revert "Modify l10n string download script to copy strings to SAE."
This reverts commit 9f31c048a2.
8 years ago
Matthew Chen 9f31c048a2 Modify l10n string download script to copy strings to SAE. 8 years ago
Matthew Chen c61490c0b4 Modify l10n string extraction script to copy strings to SAE. 8 years ago
Matthew Chen e7b32899cb Sketch out SAE load screen; make a number of infrastructure changes. 8 years ago
Matthew Chen 61b33b1a45 Make SignalMessaging a build dependency of the share extension. 8 years ago
Matthew Chen 2aafdcf577 Add app extension context, bridging header and PCH to app extension. 8 years ago
Matthew Chen f896bf99d5 Update share extension capabilities. 8 years ago
Matthew Chen 8706d8f599 Update share extension capabilities. 8 years ago
Matthew Chen 66fae5bd54 Clean up ahead of PR. 8 years ago
Matthew Chen cd11ec5698 Add app group, share keychain. Take a first pass at file migration to shared data directory. 8 years ago
Michael Kirk 961727814b Move pinning certificates into App
// FREEBIE
8 years ago
Michael Kirk a11d83187b WIP: Framework-friendly - compiles but crashes on launch
// FREEBIE
8 years ago
Michael Kirk b56f0e0d25 Pod setup for SignalMessaging framework
// FREEBIE
8 years ago
Michael Kirk de028404bb Shared framework between app and extension
// FREEBIE
8 years ago
Michael Kirk d96eb8932b ShareExtension template
Only modification was to target down to iOS9

(targeting iOS8 failed to build)

// FREEBIE
8 years ago
Matthew Chen 5ef9d53c91 Update conversation view UI to reflect unread state. 8 years ago
Matthew Chen d9fcfdeeb7 Fix deadlock when responding to contacts sync messages. 8 years ago
Matthew Chen 9d4ec557dc Update l10n strings; add Persian l10n. 8 years ago
Matthew Chen 5e61307ce3 Don't ask for microphone permissions if app is not active.
// FREEBIE
8 years ago
Matthew Chen 2d21e2ae2c Fix build warnings from XCode 9. 8 years ago
Matthew Chen 3952f717a5 Add Burmese l10n.
// FREEBIE
8 years ago
Matthew Chen e07a240ee5 Merge tag '2.18.0.9' 8 years ago
Michael Kirk 81cff837ae Include root certs from pki.goog
// FREEBIE
8 years ago
Michael Kirk a30533e7b5 Add GTSGIAG3 to censorship circumvention trust store
openssl x509 -outform der -in GIAG3.pem -out GIAG3.crt

// FREEBIE
8 years ago
Michael Kirk a63a767bf2 connecting ping quieter, ringer is louder
- outring: Raised gain on ringer, max is now  -0.6 dB
- outring: clipped hiss
- connecting-ping: reduced volume, max is now -17.8 dB

- remove unused audio files

// FREEBIE
8 years ago
Matthew Chen 9cc4521d07 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen bcf83a4c8e Rework handling of oversize text messages.
// FREEBIE
8 years ago
Matthew Chen 3927815a35 Fix tests broken by the JSQ rewrite.
// FREEBIE
8 years ago
Michael Kirk d87f000051 Interactive/Cancelable slide left for details
// FREEBIE
8 years ago
Matthew Chen 722fc4d7a7 Fix size of message previews.
// FREEBIE
8 years ago
Matthew Chen 5cde74f505 Add Hebrew l10n.
// FREEBIE
8 years ago
Matthew Chen 9b57df67e0 Fix broken build.
// FREEBIE
8 years ago
Michael Kirk 1fee5d97e6 Merge branch 'release/2.18.0' 8 years ago
Michael Kirk efd58022d0 bump version
// FREEBIE
8 years ago
Matthew Chen bd5639baaf Linkify text messages.
// FREEBIE
8 years ago
Matthew Chen 032ec59d1c Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 3723a4845f Restore message cell footers.
// FREEBIE
8 years ago
Matthew Chen c2f07bb3d8 Restore message cell footers.
// FREEBIE
8 years ago
Michael Kirk 0f859d6b20 Merge branch 'release/2.18.0' 8 years ago
Michael Kirk 3080cb512b Compose View: collation index and group search
- 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
8 years ago
Matthew Chen 5621fe893c Clean up ahead of PR.
// FREEBIE
8 years ago
Matthew Chen fb408f980c Remove JSQ.
// FREEBIE
8 years ago
Michael Kirk df15c904bc Rework push registration
== Account Registration ==

Not complete until push tokens are uploaded

== Remote Notifications Registration ==

Extracted from PushManager

- wait for notification-settings registration to complete before
  requesting push tokens, otherwise it's possible token requests will
  be ignored.

- Less state required for push notification callbacks, specifically, we
  no longer need to ensure we've created a promise before the
  registration delegate methods get called.

- no more TOCFuture in Signal-iOS (still in SSK for now). It's not in
  cases of inexplicable behavior - one a recently, push notification
  premature free, in redphone, and more popular use, and I've seen two
  futures inexplicably being nil.  Instead, let's consolidate around
  PromiseKit for popularly used, maintained, strongly-typed futures.

- separate logic for registering for vanilla push/voip notifications
  (few dependencies) from responding to UILocalNotifications (lots of
  dependencies). Ultimately I'd like to consolidate the remaining
  UILocalNotifications logic with the existing NotificationsManager

== Misc ==

more debug logging
more uniform logging
remove stale logic around newly registered user

// FREEBIE
8 years ago
Matthew Chen 5999178e78 Remove FLAnimatedImage.
// FREEBIE
8 years ago
Michael Kirk 2e196e21c6 update third party dependencies
// FREEBIE
8 years ago
Michael Kirk ff2f9ebaf0 fix compiling on 32bit.
// FREEBIE
8 years ago
Matthew Chen a0c9a84390 Clean up ahead of PR.
// FREEBIE
8 years ago
Matthew Chen 789cea118d Pull out GifDownloader class.
// FREEBIE
8 years ago
Matthew Chen 3b9726a4fa Sketch out the GIF picker.
// FREEBIE
8 years ago
Matthew Chen 206f96c9af Sketch out GIF picker.
// FREEBIE
8 years ago
Matthew Chen 27e5a2f1b2 Sketch out GIF picker.
// FREEBIE
8 years ago
Matthew Chen 9710964e38 Sketch out the GIF manager.
// FREEBIE
8 years ago
Michael Kirk e2445e6ed2 Fix RTL bubbles in conversation and message detail view
// FREEBIE
8 years ago
Matthew Chen 9f9ac746d1 Sketch out message metadata view.
* Show message metadata view from conversation view.
* Pull out MediaMessageView class.
* Track recipient read timestamps.
* Add per-recipient status to message metadata view.
* Add share button to message metadata view.

// FREEBIE
8 years ago
Matthew Chen 11cadf4200 Send, receive & show read receipts to senders/from receivers.
* Send read receipts to senders.
* Honor "send read receipts" preference.
* Process read receipts from recipients.
* Refactor "mark as read" logic.
* Serialize and apply recipient read receipts received before sync transcript.
* Show recipient read receipts in conversation view.

// FREEBIE
8 years ago
Matthew Chen bd416176ae Add stress group to debug UI.
// FREEBIE
8 years ago
Matthew Chen 3eaeb4e0ec Add read receipts manager.
* Simplify read receipts plumbing.
* Rework incoming read receipts handling.
* Rework outgoing read receipts handling.
* Make "database view registration complete" check thread-safe.
* Don't send sync messages to self if no linked devices.

// FREEBIE
8 years ago
Matthew Chen 183f0f1ccd Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 80e5f281c6 Rename app preferences class.
// FREEBIE
8 years ago
Matthew Chen 3367292ba0 Merge branch 'hotfix/2.16.1' 8 years ago
Matthew Chen 5be2014ec7 Create Flat UI rounded button class.
// FREEBIE
8 years ago
Matthew Chen ab00342d67 Add modal activity indicator view.
// FREEBIE
8 years ago
Matthew Chen 69816cdf0e Convert DataSource to Objective-C.
// FREEBIE
8 years ago
Matthew Chen 2282733fa9 Add data source class.
// FREEBIE
8 years ago
Michael Kirk 0ec2ac862a Marquee label for callview controller
// FREEBIE
8 years ago
Michael Kirk ad76155bdd audit/fix up supported l10ns (added km and lt)
As policy we don't include a language in Signal until it has at least
80% of strings translated. We don't currently remove languages that fall
below that threshold.

There are two things that must happen to add a localization in Signal.

1. Pull the Localizable.strings from transifex for each language, add
   them to git.
2. Add the localization to the Xcode project file

These four languages were in the repository (step 1) but not properly
added to the project file (step 2):

- khmer (km)
- lithuanian (lt)
- hebrew (he)
- persian (fa)

Of these, only khmer and lithuanian were sufficiently translated, so I
added them properly to the Xcode project file, making them available to
our users.

To make this process slightly easier to track in the future, I've
removed the insufficiently complete `he` and `fa` files from the
repository. Once they fall above 80% translated they will be
automatically downloaded by our sync-translations script, appearing as
new files, being the cue to the developer to add those new translations
to the project (step 2).

Note: the fa/he translations were never available to users, so we're not
going removing anyones existing functionality.

// FREEBIE
8 years ago
Matthew Chen c106794fe8 Rename conversation view.
// FREEBIE
8 years ago
Matthew Chen 928525c31e Rename home view.
// FREEBIE
8 years ago
Matthew Chen fd4f00fa4d Rename new contact thread view.
// FREEBIE
8 years ago
Michael Kirk ae174d4a87 proper handling for multibyte characters
// FREEBIE
8 years ago
Matthew Chen cc048b3971 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 5fcf89dff1 Ignore "GIF of death."
// FREEBIE
8 years ago
Matthew Chen 44f071bdfb Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 6f5437ee0d Revisit the [UIScrollView _adjustContentOffsetIfNecessary] issue. Fix glitches in the initial scroll state in message view. Don't reset scroll state when returning to the message view.
// FREEBIE
8 years ago
Matthew Chen 7f717c0ca6 Revisit the [UIScrollView _adjustContentOffsetIfNecessary] issue. Fix glitches in the initial scroll state in message view. Don't reset scroll state when returning to the message view.
// FREEBIE
8 years ago
Michael Kirk 6c63009e9e Dedicated "Profile" debug section
// FREEBIE
8 years ago
Michael Kirk 526d5e33b9 Sync profile key to sibling devices when updating contact
// FREEBIE
8 years ago
Matthew Chen 2aaa9155de Add view to Crop and scale avatar.
// FREEBIE
8 years ago
Matthew Chen 2c301feeb7 Add view to Crop and scale avatar.
// FREEBIE
8 years ago
Michael Kirk bde40a1f9c Ensure avatar upates right after profile change.
// FREEBIE
8 years ago
Michael Kirk f6720f9afa properly clear all cached avatar images
// FREEBIE
8 years ago
Matthew Chen 14d472781f Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 5f2f8ec6d8 Start reworking the contact offers.
// FREEBIE
8 years ago
Michael Kirk 72fbb02028 aes-gcm via openssl
// FREEBIE
8 years ago
Matthew Chen 08347478a2 Implement alternative approach to veto-able back buttons.
// FREEBIE
8 years ago
Michael Kirk 7c386b1d1e CR: RTL, trim profile names, ensure not empty
- RTL support with localizable format strings
- Trim decrypted profile names
- more rigorous empty check

// FREEBIE
8 years ago
Michael Kirk 3d9796db77 Debug actions for calling
For testing stale hangup/busy messages

Extracted MessageSender promise API
Moved call debug actions to their own page

// FREEBIE
8 years ago
Matthew Chen 6ec756de44 Move profile manager to Signal.
// FREEBIE
8 years ago
Matthew Chen 282ac4bb29 Add “share profile” row to conversation settings.
// FREEBIE
8 years ago
Matthew Chen 873f5208c4 Sketch out the profile view.
// FREEBIE
8 years ago
Matthew Chen 72ea096970 Sketch out the profile view.
// FREEBIE
8 years ago
Michael Kirk d809a30fa2 fix tests
// FREEBIE
8 years ago
Michael Kirk 020bd48496 Fix tests
// FREEBIE
8 years ago
Matthew Chen 75c7cc4abf Add debug UI to enable manual censorship circumvention.
// FREEBIE
8 years ago
Matthew Chen 75fb55e018 Merge tag '2.14.1.2'
// FREEBIE
8 years ago
Matthew Chen 31ab9a00da Add script to extract and gather analytics event names.
// FREEBIE
8 years ago
Matthew Chen 1009b1ba77 Fix tests.
// FREEBIE
8 years ago
Matthew Chen f0cecfad11 Surface memory leaks by logging the deallocation of view controllers.
// FREEBIE
8 years ago
Matthew Chen 863fd27abe Respond to CR.
// FREEBIE
8 years ago
Michael Kirk a5f067936c migration to fix any half-registered users
// FREEBIE
8 years ago
Matthew Chen 04fb3642b2 Remove .xib for home view cells; adapter home view to RTL.
// FREEBIE
8 years ago
Matthew Chen e15432720c Add arabic translation; begin work on right-to-left layout.
// FREEBIE
8 years ago
Michael Kirk 84e9c33f12 Optionally link Metal/MetalKit frameworks used by WebRTC
// FREEBIE
8 years ago
Michael Kirk 17b1b70726 Remove verification debug UI
There is a more true-to-life way to set verification state - mark
someone as verified or default via the SN UI.

If they are marked as verified, you can mark them as no-longer-verified
by toggling a keychange in the debug UI

// FREEBIE
8 years ago
Matthew Chen 81555d1225 Add “new contact” and “add to existing contact” buttons in 1:1 conversation settings view.
// FREEBIE
8 years ago
Michael Kirk c0aa455714 fix tests
// FREEBIE
8 years ago
Michael Kirk 3eb90ba383 Disable singleton assert for tests
introduce a new build configuration, used by tests, which disables
singleton asserts

// FREEBIE
8 years ago
Michael Kirk 82180f6a97 fix compilation problems
// FREEBIE
8 years ago
Matthew Chen d639d6557e Add owsFail free function for swift.
// FREEBIE
8 years ago
Matthew Chen 0244e134f5 Block device from sleeping during certain activities.
// FREEBIE
8 years ago
Matthew Chen 944cd7beef Show app update nag on launch if necessary.
// FREEBIE
8 years ago
Matthew Chen 284d55ef6c Rework the debug UI.
* Move debug stats to the about view.
* Convert about view to OWSTableView.
* Add DebugUIPage.
* Add non-thread Debug UI.

// FREEBIE
8 years ago
Matthew Chen 6a5fe94d59 Improve perf of attachment stream file path upgrade.
// FREEBIE
8 years ago
Michael Kirk 4f3278db1e Fix layout of timestamp for system messages
Incorporate topLabelSize into cell size for system messages.

We are using the term "bubble size" to describe the interaction specific
views of a collection cell. It's a crappy name, but coincides with other
usage.

// FREEBIE
8 years ago
Matthew Chen c7426f9343 Avoid crashing on startup due to database view creation.
* Substitute unread view for unseen view until unseen view is ready.
* Register as many views as possible async.
* Perform blocking, safe migrations before async registration of views.
* Add debug settings view for internal app stats.
* Show blocking overlay until async registration of database views is complete.
* Convert version migrations to use AppVersions.

// FREEBIE
8 years ago
Matthew Chen 11ca51c95f Show verification state banner. Show verification state in conversation settings view.
// FREEBIE
8 years ago
Matthew Chen 58ebebc97f Move QR code scanning to a separate view.
// FREEBIE
8 years ago
Matthew Chen 3508feaec3 Convert FingerprintViewController to programmatic layout.
// FREEBIE
8 years ago
Michael Kirk d77addc01e extract session state debug utils into section
// FREEBIE
8 years ago
Matthew Chen b6ddea9eae Sketch out OWSIdentityManager.
// FREEBIE
8 years ago
Matthew Chen a013a7206e Rework and unify the system messages.
// FREEBIE
8 years ago
Matthew Chen 2cbf1e1d05 Rework and unify the system messages.
// FREEBIE
8 years ago
Matthew Chen a69c6cce4e Decompose MessagesViewController, add “scroll to bottom button”, improve scrolling behavior.
// FREEBIE
8 years ago
Michael Kirk 130aa132a0 Reject incoming calls from an unseen changed identity
// FREEBIE
8 years ago
Michael Kirk 9a2f218bf3 show SN confirmation before adding to group
* Extract SN confirmation dialog

// FREEBIE
8 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
8 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
8 years ago
Matthew Chen 4680a2465a Remove registration storyboard.
// FREEBIE
8 years ago
Matthew Chen db097ab8de Fix caching of message bubble sizes.
// FREEBIE
8 years ago
Matthew Chen bc501b16f2 Let users manually specify the domain fronting country.
// FREEBIE
8 years ago
Matthew Chen 867eb7d741 Convert CountryCodeViewController.
// FREEBIE
8 years ago
Matthew Chen a37b194dc0 Add debug functions for sending media messages.
// FREEBIE
8 years ago
Matthew Chen 7b70fe674a “Add to contacts” offer.
// FREEBIE
8 years ago
Matthew Chen ac458cc7ad Add unread indicator.
// FREEBIE
8 years ago
Matthew Chen 0ec095f216 Nag users on iOS 8 to upgrade.
// FREEBIE
8 years ago
Michael Kirk 557488bc7d return iOS8 support in project files
// FREEBIE
8 years ago
Matthew Chen ea34cec0d9 Clean up ahead of PR.
// FREEBIE
8 years ago
Matthew Chen 96e155c75e Rework appearance of voice messages and audio attachments.
// FREEBIE
8 years ago
Matthew Chen 19b80d1f4b Rework the “disappearing messages” logic.
// FREEBIE
8 years ago
Matthew Chen ad3a1a671a Merge remote-tracking branch 'origin/hotfix/2.11.3' 8 years ago
Matthew Chen 34a7f9cba5 Respond to CR.
// FREEBIE
8 years ago
Michael Kirk fbcda40400 rename class, extract color
per code review

// FREEBIE
8 years ago
Michael Kirk a58a71f8f4 no contacts banner -> system settings 8 years ago
Matthew Chen 0c4351a908 Use SignalAccount class to sync contacts.
// FREEBIE
8 years ago
Michael Kirk ce2ee759f8 Update to latest recommended xcode.proj settings
// FREEBIE
8 years ago
Matthew Chen 363d84fd2d Update “new conversation” view to use OWSTableView, contacts view helper, etc.
// FREEBIE
8 years ago
Michael Kirk 2ec893d315 Ensure we're retaining all promises to completion
// FREEBIE
8 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
8 years ago
Matthew Chen 2bec1db541 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 6801963a1b Add SignalAccount class.
// FREEBIE
8 years ago
Matthew Chen 42768294ee Extract labels for phone numbers.
// FREEBIE
8 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
8 years ago
Matthew Chen 6e36ce97a5 Let users share imported files to a thread or contact of their choice.
// FREEBIE
8 years ago
Michael Kirk 70d235a670 Choose arbitrary attachments from iCloud/GDrive/Dropbox/etc
// FREEBIE
8 years ago
Matthew Chen eb23252c6c Fix timer retain cycle.
// FREEBIE
8 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
8 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
8 years ago
Matthew Chen b2664158b1 Pause animated gifs when offscreen; clean up media views more aggressively.
// FREEBIE
8 years ago
Matthew Chen bfd29cd994 Send contacts sync messages whenever the contacts change.
// FREEBIE
8 years ago
Matthew Chen f38f3d8887 [SSK] Update SignalAttachment to allow arbitrary attachments.
// FREEBIE
8 years ago
Matthew Chen 54cd8cfa3c Add blacklist controls to 1:1 conversation view.
// FREEBIE
8 years ago
Matthew Chen 271cc6f07e Sketch out BlockListViewController and AddToBlockListViewController.
// FREEBIE
8 years ago
Matthew Chen a155df161f Pull out OWSTableViewController.
// FREEBIE
8 years ago
Matthew Chen d12a582ee3 Rename source directories with a space in their name.
// FREEBIE
8 years ago
Michael Kirk 0b49037179 Remove some more RP related code
// FREEBIE
8 years ago
Matthew Chen 4649fcfd20 Add "oversize test message" view.
// FREEBIE
8 years ago
Matthew Chen 80fbc093d9 Handle oversize text messages and arbitrary attachments.
// FREEBIE
8 years ago
Matthew Chen 6b8d4ea7ae Sketch out debug UI.
// FREEBIE
8 years ago
Matthew Chen 9db33a9651 Remove RedPhone code.
// FREEBIE
8 years ago
Michael Kirk f29ca7851f Move PureLayout back to cocoapods for now
This introduced some unexpected crashes related to frameworks in Swift.

// FREEBIE
8 years ago
Michael Kirk f2728d461b Remember to copy PureLayout.framework
// FREEBIE
8 years ago
Matthew Chen 814c6d2505 Only initiate WebRTC calls, not RedPhone calls.
// FREEBIE
8 years ago
Michael Kirk da32570dc6 [SSK] remove convoluted dependency
Moved query method to PhoneNumberUtil since that's they only caller.
Moved corresponding tests to SSK

// FREEBIE
8 years ago
Michael Kirk c39a26659e Merge pull request #1860 from WhisperSystems/mkirk/intern-pastelog
Intern pastelog
8 years ago
Matthew Chen 9ae047a1da Add progress & disable media views while uploading attachments.
// FREEBIE
8 years ago