Commit Graph

851 Commits (c4baf5a625f93fb27f5e1ba797f6e003fd82da50)
 

Author SHA1 Message Date
Michael Kirk 7e67fb1939 Some style for the QR code scanner.
Also made identity key scanner appear faster. Previously we were
waiting for camera to initialize. Now we do this after the view has
loaded - with a black background, the affect is preferable than
lagging on the transition.

// FREEBIE
8 years ago
Michael Kirk f28400146f bump build
// FREEBIE
8 years ago
Michael Kirk 7c3a07960f Device manager fixes
* Avoid intermittent crash in device manager via YapDatabaseModified
* Properly align refresh text when expecting new device
* Avoid glitchy activityIndicator while polling
* Expose edit mode toggle

Much of the code changes here were in the corresponding SSK update.

// FREEBIE
8 years ago
Michael Kirk dee26e6e0a Use PNG constant
// FREEBIE
8 years ago
Michael Kirk 9006ff604f Multi device read receipts.
All the heavy lifting is in SignalServiceKit.

// FREEBIE
8 years ago
Michael Kirk 428f7fca19 Adapt to nullability annotations in SignalServiceKit
// FREEBIE
8 years ago
Michael Kirk 92290a5d4d Fix: Inbox count not updating while viewing archive
e.g. If I'm viewing the archive when a new message comes in

// FREEBIE
8 years ago
Michael Kirk ef6784ed95 Device Manager
* List linked devices
* Adding a new device
* Removing a device

TODO: design on the QRScanner

// FREEBIE
8 years ago
Michael Kirk 84156698c4 Provision device from QRCode.
NEEDS DESIGN - will likely have an intermediate "device manager" screen.

* extracted QRCode Scanner into re-usable ViewController

// FREEBIE
8 years ago
Michael Kirk 6545161192 thread is set during notification callback.
It should *not* be non-atomic

// FREEBIE
8 years ago
Michael Kirk eef2002224 Clean up settings (#1316)
* Remove unused (hidden) button from settings
* dynamic type for settings cells
* prefer property vs ivar access
* property attributes

// FREEBIE
8 years ago
Michael Kirk cc2d47fbd3 Update protocol (#1315)
* Update to latest SignalServiceProtocol
* Show SignalServiceKit compiler warnings

// FREEBIE

* Update to latest signal protocol

// FREEBIE
8 years ago
Michael Kirk e56d41edc7 Otherwise we'll never run future migrations. (#1314)
// FREEBIE
8 years ago
Michael Kirk bff6e5613a Avoid collision with iOS10 SSKeychain framework (#1308)
FIXES #1296

Our pod SSKeychain was renamed to -> SAMKeychain to avoid collision with
the iOS10 library SSKeychain.

* log failure to write keychain (this seems to only happen on simulator)
* ensure we exit if we fail to set DB cipher key

// FREEBIE
8 years ago
James Barclay f8a0be4c70 Return immutable data from generateSecureRandomData:length and use OSStatus to check the status of SecRandomCopyBytes. (#1306) 8 years ago
Michael Kirk b29174a374 Merge pull request #1305 from WhisperSystems/default-screen-security
Enable screen security by default / code cleanup
8 years ago
Michael Kirk 9a86ca76ce screen security is enabled by default
// FREEBIE
8 years ago
Michael Kirk 58548c68cc code cleanup
- refactor screen protection code for clarity
- remove unused settings cell class
- remove unused preferences

// FREEBIE
8 years ago
Michael Kirk 006c4ba958 Update dependencies. (#1304)
* SSK update adds emoji for incoming animated GIFs

// FREEBIE
8 years ago
Adam Stiles 52861a6ef5 Fix incorrect GIF message bubble sizing (#1300)
TSAnimatedAdapter is used when rendering GIFs. TSAnimatedAdapter
inherits from JSQMediaItem but does not provide a custom implementation
of the hash method. The default implementation of hash in JSQMediaItem
results in all messages of a given interaction type (incoming,
outgoing) sharing a cached bubble size. For this reason, JSQMediaItem
subclasses are required to implement hash (see
https://github.com/jessesquires/JSQMessagesViewController/issues/631).

This commit fixes issue #1275 by implementing hash in TSAnimatedAdapter
the same way TSPhotoAdapter does.
8 years ago
Michael Kirk 6120bd9e8e Orphan-data cleanup no longer causes timeout (#1303)
On older devices with lots of data, the orphan data cleaner can time
out. Here we're trading certainty that the migration completed for
confidence that the boot process doesn't time out.

// FREEBIE
8 years ago
Vitali Lovich 547cd9797a Improve audio waveform scrolling performance (#1292)
The object is already cached & the waveform view constructed when scrolling,
so there's no need to re-create the view.

This doesn't fix the problem with the wave-form generation on the first
view of the message.  That is a more critical problem in the underlying
SCWaveformView class which renders on the main thread instead of doing
it asynchronously.

FIXES #1258
8 years ago
Michael Kirk 92b3ea5d25 Re-enable attachment cleanup migration after fixing it in SSK (#1298)
// FREEBIE
8 years ago
Michael Kirk 000a5941f4 Delete attachment cleanup migration.
After running locally, I noticed many old threads missing old
attachments. I'll do some further investigation.

// FREEBIE
8 years ago
Michael Kirk 9f2bb5d2cc Fixes lingering interactions after removing thread (#1297)
Most of the work was done in SignalServiceKit 0.0.7, this adapts to
those changes.

Migration to clean any orphaned interactions/attachments.

- don't set new migration version until migration was successful.
- remove dead code from migrations

- rename message.attachments->message.attachmentIds
- Remove unused parameter from GroupModel
- formatting touched method/'s signatures

//FREEBIE
8 years ago
Michael Kirk f09af989b7 2.4 update translations (#1291)
// FREEBIE
8 years ago
Michael Kirk 73856c3e44 bump release target to 2.4.0.4
// FREEBIE
8 years ago
Michael Kirk 147cc15105 Input toolbar fits text size (#1290)
* Set height of toolbar based on actual font height. FIXES #1282
* max height for compose field FIXES #1186

Still absent is resizing to fit draft.

// FREEBIE
8 years ago
Michael Kirk bb3bda2364 bump build 2.4.0.3
// FREEBIE
8 years ago
Michael Kirk 86f06593d8 Fix "can't reattach saved GIF" (and others) (#1288)
The root of the problem is we were using the deprecated ALAssetsLibrary
framework, which couldn't find certain assets.

By using the photos framework not only are we able to find these
assets, but it also cleans up our code:
* no more copying byte buffers
* no more detecting file type

// FREEBIE
8 years ago
Michael Kirk 3c2846274c Prevent crash when copying corrupted image attachment. (#1287)
// FREEBIE
8 years ago
Michael Kirk 06618c99b5 Merge pull request #1285 from WhisperSystems/network_error_desc
Network error desc
8 years ago
Michael Kirk c4209e793a Don't use "we" in error message copy.
per @RiseT on transifex

// FREEBIE
8 years ago
Panos Sakkos c5f6b7b7bd Improved error message when network doesn’t allow to access Signal port.
Fixes #130

FREEBIE
8 years ago
Brandon Cheng 583d3e82ad Alternative solution for requiring direct taps for launching media view (#1235) (#1261)
// FREEBIE
8 years ago
Michael Kirk 29769b4b76 Don't highlight text bubble when long pressing adjacent to text bubble (#1281)
Previously, if you tapped in the white space adjacent to the text bubble,
the bubble would highlight. No menu was show or interaction made
available. This is confusing.

It was fixed upstream, so this was as simple as:

    pod update JSQMessagesViewController

// FREEBIE
8 years ago
Ronny e7affecc17 FIX: Leaving group should dismiss keyboard #1274 (#1278)
If we hide the input toolbar, we should hide the keyboard too

//FREEBIE
8 years ago
Ronny 0455f03615 Fixes Call Error message text should adapt size to fit localized texts (#1164) (#1178)
- adding constraints and changing properties for _callStatusLabel to
fit 3 lines of text

//FREEBIE
8 years ago
Michael Kirk 97fdabf9a2 Narrow the bubbles a bit. (#1269)
This is closer to the 2.3 version.

Seems like upstream sizing has changed since our JSQMVC upgrade. This wider size calculation makes sense if you're losing space to the avatar, but since we're not using avatars the full width bubbles can make the whole view seem a bit crowded when you have large blobs of text.

// FREEBIE
8 years ago
Michael Kirk 835021b0d3 Fix extra tall error messages by rendering timestamp (#1268)
We were ocassionally seeing extra tall error messages. This is because,
when appropriate, we were adding the space for a timestamp, but then
never actually rendering the time stamp.

So now:

- Error Messages aren't rendered too-tall
- Error Messages get a printed timestamp when appropriate

// FREEBIE
8 years ago
Michael Kirk f205ff19fa new translations (#1265)
// FREEBIE
8 years ago
Michael Kirk b22eafc25a Merge pull request #1264 from WhisperSystems/fix-audio-notification
Fix "message received" audio notification
8 years ago
Michael Kirk f899cff128 Fix in-app audio
- sound is set by passing in reference
- don't access properties in constructor
- distinguish multiple variables with same name

// FREEBIE
8 years ago
Michael Kirk df63c8624d fix compiler warnings
// FREEBIE
8 years ago
Michael Kirk 68b36f7074 Fix double sends in group thread when accepting keychange (#1263)
FIXES #951

// FREEBIE
8 years ago
Michael Kirk e7d4763715 Must tap directly on bubble to launch fullscreen media view (#1260)
// FREEBIE
8 years ago
Michael Kirk bd1e99026f Merge pull request #1105 from michaelkirk/fix-cannot-delete-media-messages#704
consistent Delete/Copy/Save UX across media types
8 years ago
Michael Kirk 9db3b0db27 Consistent and efficient media Delete/Copy/Save UX
copy/save/delete is accessed via longpress for all media messages, just
like for simple text messages.

Notes
-----
We don't support saving audio attachments as it's not clear where they should go.
(I don't think users expect them to end up in their iTunes library.)

There is still no UX for "pasting" media into Signal.

Removed the now redundant (and confusing) "share" button interface.

//FREEBIE
8 years ago
Michael Kirk 70197fb482 bump version to 2.4.0
// FREEBIE
8 years ago
Michael Kirk cca4bc451c Merge pull request #1255 from WhisperSystems/update-jsqmvc
Unfork/Update JSQMessagesViewController
8 years ago