This shouldn't have any affect on behavior, we're just removing unused
strings, extracting comments, and re ordering.
Going forward we can use auto-genstrings to get a sensible diff without
having to manually add/remove/update strings and comments.
Thanks @nixnuex!
// FREEBIE
* Inline #define strings, so genstrings can find them
* Make all strings single line so they don't get truncated by auto-genstrings
* Properly quote LHS in strings file
// FREEBIE
Fix animation memory leak exacerbated every time you reload a
conversation with expiration timers.
Stop animation on cells that aren't currently being displayed. This is
relatively minor compared to the above, but still, no reason to waste
cycles.
// FREEBIE
* lighter tint for icons, their bold stroke width makes them darker than
the text
* Replace double hourglass icons with a single one. It aligns better,
and the "small time" vs "big time" is confusing
* Add description of what disappearing messages do
// FREEBIE
* calculate size of info message using the info message font.
* offset by the info message header
There were instances of lines getting cropped, or an extra line being
added. The previous, more conservative, solution was to just make every
bubble too big, but it looked terrible.
// FREEBIE
* ContactsUI framework is not available on ios<9.
And it never was, so this framework should not be "required".
* Fix conversation settings title font on ios8
* Fix fingerprint not displaying on ios8
* ios8 safety number indented on third line.
* Fix glitchy table cell animation (not ios8 specific)
The defaut slide-under animation only looks good if you're using a
standard table cell height, but our duration slider is taller than the
rest of the table's cells.
Plus add a little bottom padding to the slider cell
// FREEBIE
fixes#1368
Apple switched emoji fonts from AppleColorEmoji to AppleColorEmojiUI.
The new font doesn't compute it's size correctly, causing containing
rectangles to be too small.
This commit scrubs strings of the new emoji font, and replaces it with
the old.
// FREEBIE
* Per thread settings menu accessed by tapping on thread title
This removed the toggle-phone behavior. You'll be able to see the phone
number in the settings table view.
This removed the "add contact" functionality, although it was already
broken for ios>=9 (which is basically everybody).
The group actions menu was absorbed into this screen
* Added a confirm alert to leave group (fixes#938)
* New Translation Strings
* Extend "Add People" label to fit translations.
* resolved issues with translations not fitting in group menu
* Fix the long standing type warning where TSCalls were assigned to a TSMessageAdapter.
* Can delete info messages
Follow the JSQMVC pattern and put UIResponder-able content in the
messageBubbleContainer. This gives us more functionality *and* allows us
to delete some code. yay!
It's still not yet possible to delete phone messages. =(
* Fixed some compiler warnings.
* xcode8 touching storyboard. So long xcode7!
* Fixup multiline info messages.
We were seeing info messages like "You set disappearing message timer to
10" instead of "You set disappearing message timer to 10 seconds."
Admittedly this isn't a very good fix, as now one liners feel like they
have too much padding.
If the message is well over one line, we were wrapping properly, but
there's a problem when the message is *just barely* two lines, the cell
height grows, but the label still thinks it's just one line (as evinced
by the one line appearing in the center of the label frame. The result
being that the last word of the label is cropped.
* Disable group actions after leaving group.
// FREEBIE
Rather than verifying eachothers keys separately, you now verify the
privacy with your recipient by sharing a single composite number or
QRCode.
This is a breaking change, in coordination with Desktop and Android.
UX
--
Fingeprint is no longer in line with identity key error. Instead you
have the option of going to the full-screen safety number verification
experience.
Overhauled fingerprint design
-----------------------------
* use same modal dismiss button as elsewhere
* remove fingerprint from settings.
* quick slide in animation vs slow fade
* existing was painfully slow
* blur effect is better metaphor for something slide over top
* anyway there was a rendering glitch in the end of fade where
underlying navbar would "snap" out
Also Fixed
----------
Always provide a name string for contact
* Centralize all the nil-checking
* Fall back to "unknown contact"
allow multi-line error messages
// FREEBIE
I botched a migration 6 months ago, which left some lingering TSRecipients serialized in our data store, laying in wait to explode the next time we enumerate every object in the database (e.g. when we add an index).
The bloom filter migration failed to remove TSRecipients in the somewhat rare event that the local user had no downloaded bloom filters. This could happen e.g. if they were low on disk space at the time of running the migration, I believe the app would remove the bloom filter cache.
// FREEBIE