Commit Graph

22799 Commits

Author SHA1 Message Date
Michael Kirk
2858694ee0 style changes // fix compiler warnings
- log errors
- forward declare where possible
- clang-format
- remove inaccurate file headers
- include Pods in Example app build target to get SignalServiceKit warnings
- Fix those warnings!

// FREEBIE
2016-07-31 08:48:46 -07:00
Michael Kirk
5458a73cee Fix travis build
- specify destination, seeing it install app on different device than it
  was running the tests
- xcpretty for legible output

// FREEBIE
2016-07-29 11:37:35 -07:00
Michael Kirk
f09af989b7 2.4 update translations (#1291)
// FREEBIE
2016-07-22 00:39:01 -07:00
Michael Kirk
73856c3e44 bump release target to 2.4.0.4
// FREEBIE
2016-07-22 00:11:21 -07:00
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
2016-07-22 00:05:24 -07:00
Michael Kirk
bb3bda2364 bump build 2.4.0.3
// FREEBIE
2016-07-21 17:16:33 -07:00
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
2016-07-21 17:15:34 -07:00
Michael Kirk
3c2846274c Prevent crash when copying corrupted image attachment. (#1287)
// FREEBIE
2016-07-21 15:55:32 -07:00
Michael Kirk
06618c99b5 Merge pull request #1285 from WhisperSystems/network_error_desc
Network error desc
2016-07-21 12:56:17 -07:00
Michael Kirk
c4209e793a Don't use "we" in error message copy.
per @RiseT on transifex

// FREEBIE
2016-07-21 10:36:23 -07:00
Panos Sakkos
c5f6b7b7bd Improved error message when network doesn’t allow to access Signal port.
Fixes #130

FREEBIE
2016-07-21 10:36:07 -07:00
Brandon Cheng
583d3e82ad Alternative solution for requiring direct taps for launching media view (#1235) (#1261)
// FREEBIE
2016-07-21 10:23:39 -07:00
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
2016-07-21 10:22:16 -07:00
Ronny
e7affecc17 FIX: Leaving group should dismiss keyboard #1274 (#1278)
If we hide the input toolbar, we should hide the keyboard too

//FREEBIE
2016-07-21 08:50:41 -07:00
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
2016-07-21 07:53:26 -07:00
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
2016-07-20 13:21:20 -07:00
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
2016-07-20 11:59:18 -07:00
Michael Kirk
f205ff19fa new translations (#1265)
// FREEBIE
2016-07-19 11:26:07 -07:00
Michael Kirk
b22eafc25a Merge pull request #1264 from WhisperSystems/fix-audio-notification
Fix "message received" audio notification
2016-07-19 09:44:07 -07:00
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
2016-07-19 09:12:18 -07:00
Michael Kirk
df63c8624d fix compiler warnings
// FREEBIE
2016-07-19 09:10:39 -07:00
Michael Kirk
68b36f7074 Fix double sends in group thread when accepting keychange (#1263)
FIXES #951

// FREEBIE
2016-07-19 09:09:45 -07:00
Michael Kirk
36cab4691c Accepting keychange only resends to single recipient (#18)
// FREEBIE
2016-07-19 08:32:09 -07:00
Michael Kirk
e7d4763715 Must tap directly on bubble to launch fullscreen media view (#1260)
// FREEBIE
2016-07-18 18:51:40 -07:00
Michael Kirk
d66c8bd427 Avoid deadlock while accepting new key (#17)
Using description in log output crashes when the description is a media
message, since printing media description uses a transaction within our
existing transaction.

Instead we'll use a simpler debugDescription for simple text building,
like logging.

// FREEBIE
2016-07-18 16:00:59 -07:00
Michael Kirk
bd1e99026f Merge pull request #1105 from michaelkirk/fix-cannot-delete-media-messages#704
consistent Delete/Copy/Save UX across media types
2016-07-18 09:49:29 -07:00
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
2016-07-18 09:20:48 -07:00
Michael Kirk
70197fb482 bump version to 2.4.0
// FREEBIE
2016-07-17 09:41:19 -07:00
Michael Kirk
cca4bc451c Merge pull request #1255 from WhisperSystems/update-jsqmvc
Unfork/Update JSQMessagesViewController
2016-07-15 13:25:11 -07:00
Michael Kirk
db3b2d443c Use upstream corner radius
The history here is that the radius I'm removing was added in #884 after
having straight edges added in our custom fork for a while.

So, rather than override our override, I'm just reverting to the
upstream value, which is close in proximity, and closer to iMessages
radius.

// FREEBIE
2016-07-14 23:28:42 -07:00
Michael Kirk
4ccb295dbb Send button disabled color and dynamically sized
Using upstream button and change notification allows us to delete some
code.

// FREEBIE
2016-07-14 23:15:06 -07:00
Michael Kirk
f8d65ab0f5 Post JSQMVC code cleanup
* formatting
* referencing TODOS
* remove unnecessary logging

// FREEBIE
2016-07-14 23:15:06 -07:00
Michael Kirk
b7dd51438e Move colors into style class
// FREEBIE
2016-07-14 23:15:06 -07:00
Michael Kirk
1a4b38e34b Modernize init, dealloc, dicts
* Use NS_DESIGNATE_INTIALIZER to ensure we're setting all the variables we need to be in OWSCall
* no need to nil properties in dealloc on ARC
* use declarative dictionaries for legability

// FREEBIE

use declarative dictionaries for clarity
2016-07-14 23:15:06 -07:00
Michael Kirk
f7f1b6877b Remove unused call thumbnail code
// FREEBIE
2016-07-14 23:15:06 -07:00
Michael Kirk
e930574b1b rename our custom JSQ classes to OWS so it's clear what is/not our code.
This was done as part of unforking JSQMessagesViewController, but is
intentionally a separate commit so we can separate formatting changes
from code changes in git history.

* Import frameworks like:
    #import <FrameworkName/HeaderName.h>
* instead of:
    #import "HeaderName.h"

// FREEBIE
2016-07-14 23:15:06 -07:00
Michael Kirk
933281f234 format objc.
This is part of unforking JSQMVC, but I'm only reformatting files
otherwise changed rather than reformatting the entire project for git
sanity.

This is intentionally a second commit so we can separate formatting
changes from code changes

* brace should drop after method definition (this is common across
  almost all objc projects, and allows you to quickly differentiate
  multi-line method signatures from their implementation.
* aligning consecutive assignments ongoingly muddies git history

// FREEBIE
2016-07-14 23:15:06 -07:00
Michael Kirk
4d320d6015 Unfork JSQMessagesViewController
Geting back on upstream fixes a couple bugs (see ##Bugfixes), and also
will make future updates easier.

The unforking process was basically this:

* move custom message types (Calls and DisplayedMessages) classes from our
  custom JSQMVC fork into Signal-iOS.
* Move any method customization into our subclass. Including
  ColletionView stuff, bubble sizing, and gesture behavior

Bug Fixes
---------
* Fix mis-sized incoming media bubbles.

Bubble size was being cached by interaction id. Which broke when
receiving an attachment. The problem is that incoming media messages
were initially the height of a "Downloading Attachment" info message.
Instead we use the mediaHash for media messages to expire the bubble
size when the media changes.

* fix missized bubble when MVC did appear

The MessagesViewController isn't sized correctly until ViewWillAppear.
This caused the first round of bubbles to be rendered incorrectly (they
assumed a larger container than they had).  I think is reflected in the
current version of the app by a reflow occurring shortly after the view
appears.

Chores
------
* bump travis to build with xcode8
* specify RQV development team for device build. required by xcode 8 beta

Cleanup
------
* Refactor messageing XIB so that elements are hangning outside of
  the views frame
* Fix compiler warning with explicit cast
* delete deprecated lineBreakmode, it's the default value anyway.

// FREEBIE
2016-07-14 23:15:05 -07:00
Michael Kirk
987ce5f832 bump release target to 2.3.6.0 (#1256)
// FREEBIE
2016-07-13 16:59:20 -07:00
Michael Kirk
d24d54d4f2 small IOS9 Fixes (#1253)
* Fix compiler warnings by explicitly casting to int.
* Show a better permissions message when viewing attachments.
* Fix comment.

// FREEBIE
2016-07-08 16:39:28 -07:00
Michael Kirk
992dbe586a Fix crash on unknown attachment (#1249)
// FREEBIE
2016-07-07 17:13:51 -07:00
Michael Kirk
cc47a6df7e Merge pull request #1248 from WhisperSystems/release-target-2.3.5
bump release target to 2.3.5.0
2016-07-07 16:29:53 -07:00
Michael Kirk
f537b6f192 Fix (and test) description for corrupted attachments (#16)
// FREEBIE
2016-07-07 16:05:58 -07:00
Michael Kirk
01b00e3814 bump release target to 2.3.5.0
// FREEBIE
2016-07-07 15:17:31 -07:00
Michael Kirk
385126027b Merge pull request #1247 from WhisperSystems/ios10-crash-on-attaching-media
Ios10 crash on attaching media
2016-07-07 15:14:59 -07:00
Michael Kirk
1f1920b648 Fix crash on iOS10 when attaching media
New permissions strings are required.

// FREEBIE
2016-07-07 12:17:53 -07:00
Michael Kirk
d4f2c0f249 ensure picker source available to prevent crash
This is crashing on simulator, but presumable if it weren't available
for other reasons (permissions?) it would also crash.

// FREEBIE
2016-07-07 10:31:51 -07:00
Michael Kirk
1e43e139fd Get back on upstream SocketRocket (#1241)
* Latest SocketRocket includes
  * crash fixes.
  * our new security policy management, so we don't have to
    keep rebasing to incorporate updates.

* Adapt to policy renaming in SignalServiceKit
* bump XCode version to play nice with SWIFT_NAME

// FREEBIE
2016-06-30 23:08:49 -07:00
Michael Kirk
664162fe24 Use SocketRocket pluggable policies (#15)
* Use SocketRocket pluggable policies

Pluggable policies are currently only in our fork, but pending upstream
PR: https://github.com/facebook/SocketRocket/pull/429

Also:
* rebased SocketRocket against latest upstream to incorporate bug fixes.
* adapt to new upstream API for error handling (vs previous exception throwing)
* renamed AFSecurityOWSPolicy -> OWSHTTPSecurityPolicy to differentiate
  it from OSWWebSocketSecurityPolicy
* Follow conventional singleton pattern with onceToken
* bump xcode version to play nice with SWIFT_NAME in SocketRocket

// FREEBIE
2016-06-30 20:39:01 -07:00
Michael Kirk
2fed645c0e Merge pull request #1239 from WhisperSystems/update-translations
updated french and japanese translations
2016-06-28 22:19:18 -07:00