Commit Graph

44 Commits (bf03b31ddeca06b78b98dd077d50919008c2bbb8)

Author SHA1 Message Date
Moxie Marlinspike d2a78ea84c Fix for contrived NPE on invalid recipient during conversation compose. 11 years ago
Moxie Marlinspike ea98fe2d4f Merge pull request #181 from thoughtbox/patch-2
Some minor language.
11 years ago
Moxie Marlinspike dda5bc8838 Add a 'mark as read' button to expanded notifications. 11 years ago
thoughtbox a1e82ab403 Update strings.xml
Minor edits.
11 years ago
Moxie Marlinspike 8c1ca6c9e0 Clean up identity key view activity 11 years ago
Moxie Marlinspike 5e2b31af60 Add appropriate text for manual case when identity is trusted. 11 years ago
Moxie Marlinspike 24fc93e9ae Switch to a more heavily TOFU model for identity keys.
1) There is no longer a concept of "verified" or "unverified."
   Only "what we saw last time" and "different from last time."

2) Let's eliminate "verify session," since we're all about
   identity keys now.

3) Mark manually processed key exchanges as processed.
11 years ago
Moxie Marlinspike e07c1a8e92 Handle failed MMS connectivity state appropriately. 11 years ago
Moxie Marlinspike 1aa84b145f Add 'mark all as read' option 11 years ago
Moxie Marlinspike 4af7fdabda String resources reorganization 11 years ago
Moxie Marlinspike b1b9846971 merge liliakai-settings 11 years ago
Moxie Marlinspike 68ee1c8e62 Make a general category, move notification settings back inline. 11 years ago
Moxie Marlinspike dd0aecc811 First cut at group messaging refactor. 11 years ago
Moxie Marlinspike 83e260436b Major storage layer refactoring to set the stage for clean GCM.
1) We now try to hand out cursors at a minimum.  There has always been
   a fairly clean insertion layer that handles encrypting message bodies,
   but the process of decrypting message bodies has always been less than
   ideal.  Here we introduce a "Reader" interface that will decrypt message
   bodies when appropriate and return objects that encapsulate record state.

   No more MessageDisplayHelper.  The MmsSmsDatabase interface is also more
   sane.

2) We finally rid ourselves of the technical debt associated with TextSecure's
   initial usage of the default SMS DB.  In that world, we weren't able to use
   anything other than the default "Inbox, Outbox, Sent" types to describe a
   message, and had to overload the message content itself with a set of
   local "prefixes" to describe what it was (encrypted, asymetric encrypted,
   remote encrypted, a key exchange, procssed key exchange), and so on.

   This includes a major schema update that transforms the "type" field into
   a bitmask that describes everything that used to be encoded in a prefix,
   and prefixes have been completely eliminated from the system.

   No more Prefix.java

3) Refactoring of the MultipartMessageHandler code.  It's less of a mess, and
   hopefully more clear as to what's going on.

The next step is to remove what we can from SmsTransportDetails and genericize
that interface for a GCM equivalent.
11 years ago
Lilia Markham 14d88f615c Sentence case settings
Let's be consistent and conformant with android style guide for settings
labels.
11 years ago
Lilia Markham 815613cfaa Reorganize settings menu
Mostly xml work, with one small hack to fix the sub menu themes, found
here: http://code.google.com/p/android/issues/detail?id=4611#c35
11 years ago
Moxie Marlinspike 07c59d969a Prompt user for APN details when missing.
If TextSecure is running on a device without APN details, we prompt
the user to manually specify them when the user goes to send an MMS
message.
12 years ago
Moxie Marlinspike f73adfc8f5 Change MMS network request pattern.
Currently we're flipping the radio in "MMS" mode, and connecting through
any proxies specified in the APN.  This always work, or at least doesn't
seem to work on Sprint, since the configured mms proxy rejects proxy
requests.

Instead we try the following in this order:

1) Connect over normal data connection directly to MMSC.
2) Connect over MMS radio connection to MMSC.
3) Connect over MMS radio connection with any configured proxy to MMSC.

Hopefully this doesn't fuck up shit on other unknown networks.
12 years ago
Moxie Marlinspike 1e2adadae2 Resource cleanup 12 years ago
Moxie Marlinspike 5eb04328d3 Improve passphrase and onboarding UI. Abstract out routing.
1) Update the create, prompt, and change passphrase activities.
   They are no longer dialog themed, and should look a little
   less ugly.

2) Update the import DB activity to be less ugly and more robust.

3) Abstract all of the state handling stuff out of
   ConversationListActivity.  This is now handled by RoutingActivity,
   which all launch intents move through.
12 years ago
Moxie Marlinspike 471ef16a5b Support for robust delivery.
1) If a message fails to be delivered, post a notification in the
   status bar if that thread is not active and visible.

2) If a message fails to be delivered because there is no service,
   keep retrying every time service becomes available again.
12 years ago
Moxie Marlinspike 71f43075a9 Distinguish unread threads with background color. 12 years ago
Moxie Marlinspike 0a8c62e0e3 Include incoming message body in notifications.
1) Refactor the master secret reset logic to properly interact with
   services.

2) Add support for "BigText" and "Inbox" style notifications.

3) Decrypt message bodies when unlocked, display 'encrypted' when
   locked.
12 years ago
Moxie Marlinspike 01a5c889b0 Export stray strings for localization. 12 years ago
Moxie Marlinspike fe43ef65ab Support for auto-deleting old messages beyond a certain conversation thread length. 12 years ago
Moxie Marlinspike 25f75cb3d2 Change wording around local APN configuration preference. 12 years ago
Moxie Marlinspike 83f90ddd4e Display both sent and received time in message details.
1) We record time sent in SMS database (date_sent).

2) We record time received in MMS database (date_received).

3) We union this information correctly in MmsSmsDatabase.
12 years ago
Moxie Marlinspike ead97953e8 Add proxy port option to local APN settings. 12 years ago
Moxie Marlinspike 54fad30f9f Add ability to specify APN information in TextSecure settings.
1) Add configuration options for APN information in TextSecure settings.

2) Fall back to TextSecure settings if system settings are unavailable
while sending/receiving MMS.

3) Catch sqlite exception when devices randomly don't have the same
APN db or table structure.
12 years ago
Moxie Marlinspike 187ec95817 Add collating support for group SMS/MMS messages.
1) When sending an SMS or MMS to multiple recipients, only show one
ConversationItem, but provide statistics on the number of recipients
delivered to.

2) Still break up the messages for secure and insecure messages.
12 years ago
Moxie Marlinspike 0b3e939ac8 Improve support for "me" contact.
1) Add >= ICS profile support (the system-supported "me" contact).

2) Improve <= Gingerbread support for me contact by auto-detecting
contacts that have the same number as the SIM card.

3) Tie in identity key import/export support to the "me" contact.

4) Don't display a "me" selection option in preference if it can
be auto-detected.

5) Refactor out the ContactAccessorNewApi back into the base class.
12 years ago
Moxie Marlinspike 1bd260b981 Improve UI for group SMS ConversationActivity
1) Change title to indicate it's a group message, and specify
the number of recipients.

2) Add an ActionBar icon to display a list of the recipients.
12 years ago
Moxie Marlinspike 05ce6d6cac Added Play Store description to strings file (for translation). 12 years ago
Tor Houghton 73bde7accd Localisation change
Localisation of the message prefix when forwarding a message (in
Norwegian, this would be "VS:" for instance).
12 years ago
Moxie Marlinspike 030b39cd9c Updated attachment selection dialog.
1) Added nice-looking holo-themed graphics for each attachment type.

2) Removed old un-scaled graphics.

3) Stringified the attachment types.
12 years ago
Tor Houghton ff878c09db More localisation
I knew there were some I missed out.
12 years ago
Tor Houghton b89a72dbeb Localisation commit
You know, it's much more fun listening to you in a lecture theatre. :-P

Right; any nit picks now might have to wait 3 weeks, depending on
available connectivity. Hope I did not screw this one up.
12 years ago
Moxie Marlinspike bb0ec65744 Include source origin in string key name.
This should help eliminate string duplicates, as well as provide
visibility into where strings in a resource file are being used.
12 years ago
Moxie Marlinspike faad1e57ea Resolved some duplicate strings 12 years ago
Moxie Marlinspike 4715512194 Fixed auto-initiate layout on GB. 12 years ago
Moxie Marlinspike 7a7dba66ad Update passphrase caching notification strategy.
On platforms (API >= 11) that support receiving click events within
a notification, we change the notification format so that users
can "lock" TextSecure with a click.

For all platforms, we change the notification icon in the status
bar from a "lock" to an "unlock," to better reflect the situation.

This is all part of the master plan for eliminating the passphrase
timeout option.
12 years ago
Moxie Marlinspike f39b8e5fc8 Fix up whitespace tagging and tag detection prompt.
1) Fix up the whitespace tagging so that it's a little more strict.

2) Don't display whitespace tags that we add to our own messages.

3) Make the tag detection prompt a little more visually pleasing.
12 years ago
Moxie Marlinspike 4c3b7cbe08 Extract TextSecure strings for i18n.
1) Change all instances which use concatenation to build strings
with variables in them to use string formatting instead.

2) Extract all string literals from layouts and menus into strings.xml

3) Extract all string literals from code into strings.xml
12 years ago
Moxie Marlinspike bbea3fe1b1 Initial Project Import 13 years ago