70 Commits

Author SHA1 Message Date
Greyson Parrelli
b89c20ff40 Switch to 'start' and 'end' instead of 'left' and 'right'.
We can do this now that our minSdk is 19.
2019-03-21 11:19:06 -07:00
Greyson Parrelli
55699e27bc Added ability to receive long messages.
Send support is in here too. We'll enable it in a future release after
enough people have updated.
2019-03-01 14:15:08 -08:00
Greyson Parrelli
cfff10622a Move conversation classes to their own package. 2019-02-14 14:29:12 -08:00
Greyson Parrelli
c76081d99c Added support for link previews. 2019-01-30 16:10:43 -08:00
Greyson Parrelli
776b0e23ae Add support for typing indicators. 2018-11-21 01:55:25 -08:00
Greyson Parrelli
c81bc22943 Fix avatar location in a group conversation. 2018-10-03 14:25:23 -07:00
Greyson Parrelli
76428bd19b Fix issue with author names getting cut off. 2018-07-27 16:31:39 -04:00
Greyson Parrelli
d5753bc306 Fix spacing issue between short clustered group chats.
For short messages in a cluster, the contact photo was sometimes taller
than the actual bubble, leading to extra weird space. So instead we use
a container to hold the width of the cell, and set the avatar to be GONE
instead of INVISIBLE.
2018-07-25 01:16:48 -04:00
Greyson Parrelli
f82b2c0d3f Prevent author name from making media messages too wide.
The media size traditionally determines the bubble size, but the author
could make it wider, which would lead to rendering issues. In the case
of media attachments (images, videos, and shared contacts), we restrict
the width of the author name. When there's a number+profile name combo,
we split the space 50/50 between the two.
2018-07-20 18:24:52 -07:00
Greyson Parrelli
aa25f39fe9 Fix footer icon tints. 2018-07-20 15:40:13 -07:00
Greyson Parrelli
8f551c8b32 Fix various redesign issues with Android 4.x.
In particular, there were many issues with drawing corners.
Unfortunately, there's no pretty way to get masking working on every
Android version, so we have to switch back to using custom backgrounds
and then using multiple masking methods depending on Android version.

Also, I had to remove attr references in drawables. They crash on 4.x.
2018-07-18 16:53:36 -07:00
Greyson Parrelli
8579c30909 Styling improvements and code cleanup. 2018-07-17 12:06:42 -07:00
Greyson Parrelli
24b062d8dd Improve the look of message bubbles. 2018-07-17 09:53:52 -07:00
Greyson Parrelli
54dbffaf30 Added ability to share contacts.
The "contact" option in the attachments tray now brings you through an
optimized contact sharing flow, allowing you to select specific fields
to share. The contact is then presented as a special message type,
allowing you to interact with the card to add the contact to your system
contacts, invite them to signal, initiate a signal message, etc.
2018-05-21 15:45:22 -04:00
Greyson Parrelli
fa99e8f0d0 Updated reply-to UI.
All UI components are now properly styled and functioning according to
spec.
2018-04-16 17:33:26 -07:00
Moxie Marlinspike
d567534609 replies 2018-04-16 17:33:26 -07:00
Greyson Parrelli
ea374735e1 Render images in a conversation true-to-size.
Previously, we were always rendering images as squares. Instead of doing
that, we now render them as close to true-to-size as possible (within
reasonable min/max width/height boundaries).
2018-03-31 02:14:02 -07:00
Moxie Marlinspike
8d08f3969a Switch from secure indicator to insecure indicator
Instead of cluttering Signal messages with a little padlock,
let's highlight the insecurity of SMS messages instead.

// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
e7c20499ec Display profile name in when appropriate
Display in conversation list, conversation actionbar, group
messages, and group members list when address is not in system
contacts

// FREEBIE
2017-08-28 10:30:50 -07:00
Mateo Hernandez
b17cba621e Show emoji-only messages larger
Closes #6531
// FREEBIE
2017-04-26 17:52:16 -07:00
Ahmed Ibrahim Khalil
c3164a8e84 Support copying links on long click.
Fixes #6343
Closes #6454
2017-04-21 23:05:59 -07:00
Moxie Marlinspike
f67eb5f9f3 Support for receiving arbitrary attachment types
// FREEBIE
2017-03-29 18:17:34 -07:00
Moxie Marlinspike
235a8472d9 Remove dedicated MMS download controls
// FREEBIE
2017-01-20 15:26:17 -08:00
Moxie Marlinspike
183f8742a7 ViewStub for ThumbnailView in ConversationItem
// FREEBIE
2017-01-20 10:27:18 -08:00
Moxie Marlinspike
e270e8d429 ViewStub for AudioView in ConversationItems
// FREEBIE
2017-01-20 09:11:40 -08:00
Moxie Marlinspike
8af9b7fd15 Improve animations on audio controls, enable push to talk
// FREEBIE
2016-11-21 18:58:10 -08:00
Moxie Marlinspike
d7e4928f22 Support for disappearing messages
// FREEBIE
2016-08-28 17:03:23 -07:00
Clam
a8a8ec1d40 Extend DPAD support.
Allows the hardware DPAD to control more of the UI.

Closes #4989
// FREEBIE
2016-05-20 13:09:38 -07:00
Moxie Marlinspike
6da86e482d Support for dual-sim SMS/MMS functionality
Allow source selection for sending SMS/MMS, and display the
SIM that received SMS/MMS.

Fixes #555
Closes #5199
// FREEBIE
2016-02-09 16:53:15 -08:00
agrajaghh
4fa6680f83 RTL support
Closes #4916
Fixes #4714
2015-12-24 07:47:25 -08:00
haffenloher
7c95adc7e6 Add delivery status icons to the conversation list
Closes #4710
2015-12-03 11:28:04 -08:00
Moxie Marlinspike
15c6f18750 Support for an audio view to allow in-app playback of audio.
Closes #4270
// FREEBIE
2015-10-22 10:32:45 -07:00
Jake McGinty
99d3374d35 migrate conversation list to RecyclerView
fixes #2488
fixes #2333
// FREEBIE
2015-09-24 14:12:09 -07:00
Jake McGinty
f13ad54ba1 ditch RoundedImageView, make animated gifs work
// FREEBIE
2015-07-29 16:17:26 -07:00
Jake McGinty
9b2aabfdc8 add EmojiSpan that scaled w/ TextView
Fixes #3317
Closes #3605
// FREEBIE
2015-07-10 16:53:34 -07:00
Moxie Marlinspike
98b99ef5b1 Reduce right margin on incoming message bubbles.
Fixes #3499
// FREEBIE
2015-07-08 17:11:31 -07:00
Moxie Marlinspike
e5035a9c4b Make incoming links the same color as the rest of the text.
// FREEBIE
2015-06-29 17:20:37 -07:00
Moxie Marlinspike
fe74ca3529 Add margin right to outgoing text bubbles.
// FREEBIE
2015-06-29 16:09:23 -07:00
Moxie Marlinspike
78289ded8f Fully colorize conversations.
1. Switch from 300 to 500 colors.

2. Colorize incoming conversation bubbles.

3. Colorize recipeint preference activity toolbar.

4. Support inverted colors in avatars.

5. Make status bar icons tint according to secondary color.

// FREEBIE
2015-06-29 16:06:59 -07:00
Jake McGinty
99c9c73c9d Add drop shadows and roundier corners to new bubbles.
// FREEBIE
2015-06-29 16:05:41 -07:00
Moxie Marlinspike
db9656c70c Update conversation style.
1) No more blue/green for outgoing messages. Just lock or no lock.

2) Use 9-patches instead of shapes for better bubble performance.

3) Use tinting rather than different colored assets.

4) Change outgoing status indicators so that they don't change
   width of the bubble as they update.

5) Switch to using ..., check, double-check for pending, sent,
   delivered rather than using bubble tone to indicate pending.

// FREEBIE
2015-06-29 16:05:33 -07:00
Jake McGinty
bd2e984963 reduce GPU overdraw
Closes #3305
// FREEBIE
2015-06-03 11:14:03 -07:00
Moxie Marlinspike
41cad291f9 Display a generated avatar icon rather than a single default.
If the contact doesn't have an image, render a color-coded
background and the first letter of the contact's name.

1) Don't display anything during recipient resolution.

2) Display a # icon in material gray for recipients with no name.

3) Display a material group icon in material gray for groups with
   no avatar icon set.

Closes #3104

// FREEBIE
2015-05-07 10:36:54 -07:00
Jake McGinty
4185006147 add borderless thumbnails, "bubble" refactor
Closes #2430

// FREEBIE
2015-03-12 18:23:08 -07:00
Moxie Marlinspike
00d7b5c284 Better UX handling on identity key mismatches.
1) Migrate from GSON to Jackson everywhere.

2) Add support for storing identity key conflicts on message rows.

3) Add limited support for surfacing identity key conflicts in UI.
2015-02-27 12:26:09 -08:00
Jake McGinty
39fd1e8f46 fix incoming lock asset
// FREEBIE
2015-01-21 20:06:05 -10:00
Jake McGinty
62816ee51a rounded ImageView instead of Bitmap, crop-select
// FREEBIE
2015-01-21 17:39:54 -10:00
Jake McGinty
eaf89735b8 encapsulated delivery icon to separate from lock
and as a bonus some tweaked text sizes and colors
// FREEBIE
2014-11-19 12:56:44 -08:00
Jake McGinty
a6c1fdd914 improve some content descriptions
// FREEBIE
2014-08-19 19:10:15 -07:00
phenx-de
d8e6a93584 Use contextual action bar menu for conversation items. 2014-06-12 14:27:34 -07:00