355 Commits

Author SHA1 Message Date
Moxie Marlinspike
fe4e2fcadb Support for direct photo capture from app.
Make the send button toggle to an attach button when the
compose text and attachments are emmpty.

Part of #520
Closes #3186

// FREEBIE
2015-05-20 13:53:00 -07:00
Moxie Marlinspike
636b11abea Refactor ContactSelectionListAdapter and associated views.
Fixes #3181
Closes #3197

// FREEBIE
2015-05-20 12:52:43 -07:00
agrajaghh
3e890e11d9 add SwitchCompat to preferences
Closes #3137
2015-05-20 12:46:36 -07:00
Jake McGinty
fa39c23d44 ReceiveKeyActivity -> ReceiveKeyDialog
Closes #3158
// FREEBIE
2015-05-20 12:39:59 -07:00
Jake McGinty
fab2296927 turn RegistrationProblemsActivity into a dialog
// FREEBIE
2015-05-20 12:39:25 -07:00
Jake McGinty
0ee46bbe5f new emoji category layout
Fixes #2962
Fixes #2954
Fixes #2941
// FREEBIE
2015-05-19 14:01:22 -07:00
Jake McGinty
c7d2ed4f7d Fix 2.3.x fragment LayoutParams issue.
Closes #3167

// FREEBIE
2015-05-14 14:59:26 -07:00
Jake McGinty
bf133c65c3 refactor emoji code into package
1) EmojiTextView and EmojiEditText are used instead of
   using code to emojify text.

2) Emoji categories' code points are specified in XML

3) EmojiDrawer itself is a fragment, and its pages are
   also fragments, allowing for better memory
   management.

Fixes #2938
Fixes #2936
Closes #3153

// FREEBIE
2015-05-14 13:54:11 -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
72f3f79016 support repeating keyevents for emoji backspace
Fixes #2945
Closes #2988

// FREEBIE
2015-05-05 10:14:35 -07:00
Jake McGinty
a585bce38e Remove side padding from emoji panel
Fixes #2956
// FREEBIE
2015-05-04 17:47:52 -07:00
Jake McGinty
b37c81ddf1 Upgrade to AppCompat v22.1
1) update material-dialogs to fix build
2) change to AppCompat autocomplete and fix visual bug in GB

Closes #3089
// FREEBIE
2015-04-30 16:51:16 -07:00
Jake McGinty
f42d100f15 Use Glide for loading part thumbnails
Closes #2885

// FREEBIE
2015-04-21 14:27:51 -07:00
Rhodey Orbits
dbc28746c0 allow scroll on message details view of long messages
Fixes #2686
Closes #2771
// FREEBIE
2015-04-16 15:04:19 -07:00
Jake McGinty
9b9363f18a add back scrollbars for conversation list
// FREEBIE
2015-04-09 14:38:03 -07:00
Jake McGinty
1cc581aed8 Migrate conversation list to RecyclerView
Closes #2890

// FREEBIE
2015-04-09 12:21:50 -07:00
Veeti Paananen
39e0639b4b Fix identity verification screen design issues
- Corrected improper usage of ScrollView that would cut off contents
  when taller than the layout.

- Adjusted margins and paddings to match Material specs (20dp from
  sides).

- Fixed monospaced font being overridden on Lollipop.

Fixes #2904. FREEBIE.
Closes #2906.
2015-04-06 13:21:05 -07:00
Jake McGinty
0ff99258ac move routing logic to all activities
Fixes #2239
Closes #27923

// FREEBIE
2015-04-01 10:23:05 -07:00
Jake McGinty
2f20bb89f3 use internal emoji pane for all android versions
1) Enter key by default (remove as option), still
   keeping "Enter key sends" option

2) New material assets for emoji and keyboard icons,
   inc a xxhdpi version finally

fixes #2300, fixes #2251, fixes #2183

Closes #2302

// FREEBIE
2015-04-01 10:20:31 -07:00
agrajaghh
1b846c0842 remove unused resources
Closes #2594

//FREEBIE
2015-03-26 16:29:32 -07:00
agrajaghh
62181a3d7f migrate AlertDialog to material-dialogs
Closes #2743
2015-03-25 11:50:52 -07:00
Jake McGinty
b73143d7a7 fix send button assets
Closes #2757

// FREEBIE
2015-03-23 13:54:37 -07:00
Jake McGinty
761ccf4b3f Fix for inconsistent thumbnail aspect ratio
Problems arose from any app that targets below API 19 and uses
views that rely on RelativeLayouts giving correct measurement specs to
their onMeasure().

Resolves #2676
Closes #2712
// FREEBIE
2015-03-19 11:21:40 -07:00
Jake McGinty
9f804047f5 lazily initialize emoji drawer
Saves a good amount of inflation time in onCreate for new conversations.

Closes #2585
Closes #2636

// FREEBIE
2015-03-19 11:16:52 -07:00
Moxie Marlinspike
fc3aaed8a8 Remove unused layouts and strings.
// FREEBIE
2015-03-13 11:58:49 -07:00
Jake McGinty
4185006147 add borderless thumbnails, "bubble" refactor
Closes #2430

// FREEBIE
2015-03-12 18:23:08 -07:00
Moxie Marlinspike
a4e18c515c Remove encrypted SMS transport, simplify transport options.
Closes #2647

// FREEBIE
2015-03-12 17:53:38 -07:00
agrajaghh
ac312ff5d5 change FAB icon to ic_create and add more resolutions to ic_add
Closes #2634

//FREEBIE
2015-03-12 11:31:03 -07:00
Moxie Marlinspike
534df06794 Support granular "custom" MMS preferences.
1) Make each MMS preference an individual choice between custom
   and default.

2) Display default values.

Closes #2487

// FREEBIE
2015-03-05 18:42:34 -08:00
agrajaghh
2b39728ea0 fix icons in import/export dialog
Closes #2574

//FREEBIE
2015-03-05 17:35:25 -08:00
Jake McGinty
2af5c7f02e fix "verify" button spacing in details
Fixes #2566
// FREEBIE
2015-03-05 17:07:07 -08:00
agrajaghh
067b14d551 make some strings translateable
closes #2567

//FREEBIE
2015-03-03 17:09:07 -08:00
agrajaghh
a2b5bf54c8 remove PassphraseTimeoutPreference since its no longer used
closes #2565

//FREEBIE
2015-03-03 17:03:17 -08:00
Jake McGinty
753a1c7219 add FAB content description
// FREEBIE
2015-02-27 16:31:01 -08:00
Jake McGinty
ac0a1c0bc1 Conflicts UI touch-ups:
1) Fix i18n and layout naming.
2) Error header for message details.
3) Add back button to message details.

// FREEBIE

Closes #2593
2015-02-27 12:26:35 -08:00
Moxie Marlinspike
3f93731300 Adapt Conflicts UI to work with single-recipient failures. 2015-02-27 12:26:09 -08: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
4397b55ceb fix padding problem in compose text
// FREEBIE
2015-02-25 14:53:32 -08:00
Jake McGinty
5fac189736 "All images" view for conversations
// FREEBIE
2015-02-18 15:47:47 -08:00
Jake McGinty
023195dd4b make send button focusable
Fixes #2494
// FREEBIE
2015-02-17 17:55:18 -08:00
McLoo
d36d33f837 Stop crash on pasting long numbers as country code
//FREEBIE

Closes #2311
2015-02-13 14:38:35 -08:00
AsamK
d586893402 Also crop contact photos in ShareList
// FREEBIE
2015-02-05 14:14:48 -08:00
Jake McGinty
2e253fb6a8 provisioning dialog rework
// FREEBIE
2015-01-24 10:15:47 -08:00
Moxie Marlinspike
0c32001fe4 Support for multi-device provisioning flow.
// FREEBIE
2015-01-24 10:15:47 -08:00
Jake McGinty
48f6c2c526 Fix 'indicator tab' coloring
Was previously white-on-near-white
// FREEBIE
2015-01-23 10:59:22 -10:00
Jake McGinty
39fd1e8f46 fix incoming lock asset
// FREEBIE
2015-01-21 20:06:05 -10:00
Jake McGinty
810abe0275 material actionbar and fab
// FREEBIE
2015-01-21 19:01:23 -10:00
Jake McGinty
62816ee51a rounded ImageView instead of Bitmap, crop-select
// FREEBIE
2015-01-21 17:39:54 -10:00
Calvin Hu
a0599c1639 add theme to import/export activity
closes #2359
2015-01-16 10:41:01 -10:00
Jake McGinty
42da687602 Revert "add theme to import/export activity"
This reverts commit e64c0676362451f1861ea8b2439fc191831fa702.
2015-01-14 10:23:10 -10:00
Calvin Hu
e64c067636 add theme to import/export activity 2015-01-14 10:03:02 -10:00
Jake McGinty
5e5531805b disable android's landscape keyboard fullscreen
in composition, it stops the custom send icon from appearing, and
doesn't pay attention to theming.

// FREEBIE
2015-01-04 02:30:16 -08:00
Jake McGinty
30232c1635 transport selection refactor
Closes #1724
// FREEBIE
2014-12-11 19:27:24 -08:00
Moxie Marlinspike
3c4ac4b105 Add option that allows disabling MMS fallback with TS users.
// FREEBIE

Closes #1444
2014-12-11 16:12:36 -08:00
Jake McGinty
15613894f0 load image previews asynchronously
// FREEBIE
2014-12-03 13:03:03 +00:00
Jake McGinty
b0891fa986 move log submission to new library
// FREEBIE

Closes #1655
2014-11-29 11:42:25 -08: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
5ca8a6d421 materialize conversation item indicators
// FREEBIE
2014-11-18 11:27:08 -08:00
Jake McGinty
020920d988 silly actionbar shadow issue
// FREEBIE
2014-11-17 11:28:57 -08:00
Jake McGinty
db6f8618e6 padding workaround for bug in appcompat-v7 21.0.0
bug: https://code.google.com/p/android/issues/detail?id=77982

// FREEBIE
2014-10-29 18:28:20 -07:00
Jake McGinty
98af1fb6ee shorten blocks of text
// FREEBIE
2014-10-29 16:53:25 -07:00
Jake McGinty
7df49811b7 replace ABS with AppCompat
// FREEBIE
2014-10-29 16:51:55 -07:00
Jake McGinty
53da1f849a in-app image media preview
// FREEBIE
2014-10-28 00:50:01 -05:00
Moxie Marlinspike
40495a2261 Merge pull request #1854 from mcginty/content-description
improve some content descriptions
2014-08-19 21:00:20 -07:00
Jake McGinty
a6c1fdd914 improve some content descriptions
// FREEBIE
2014-08-19 19:10:15 -07:00
Jake McGinty
020d61dd6e migrate nav panel items to actionbar
Fixes #1819
Closes #1839
// FREEBIE
2014-08-19 15:20:57 -07:00
Jake McGinty
8bf537bb09 remove old, unused resources
// FREEBIE
2014-08-12 12:12:08 -07:00
Veeti Paananen
bef5b8f3e9 Occupy all vertical space for emoji grid
Fixes the recent emoji list leaving an empty gap at the bottom of the
drawer depending on the number of items shown.
2014-08-01 13:40:19 -07:00
Veeti Paananen
3597915d17 Add a backspace key to the emoji drawer 2014-08-01 13:40:19 -07:00
Jake McGinty
7d688846f9 Move default SMS and system import to "reminders"
// FREEBIE
Closes #1730
2014-07-27 01:09:39 -07:00
Jake McGinty
530ad7bc86 new emoji drawer
// FREEBIE
Closes #1746
2014-07-26 13:35:03 -07:00
Jake McGinty
bea3c33223 disable passphrase creation on registration
// FREEBIE
Closes #1726
2014-07-25 17:46:50 -07:00
Jake McGinty
a82d2dfc5c Revert "change out key cached icon to be more unique"
This reverts commit d6d76fa95315068ab5457b23fb4908c4a8586982.
2014-06-24 19:20:16 -07:00
Moxie Marlinspike
8f85eb1822 Remove unused files.
Fixes #1522

// FREEBIE
2014-06-24 08:32:59 -07:00
Moxie Marlinspike
358c923891 Merge pull request #1630 from mcginty/remove-keys-list
remove ReviewIdentitiesActivity
2014-06-23 11:17:17 -07:00
Jake McGinty
5121ab0eed temporarily disable encrypted backup
// FREEBIE
2014-06-22 16:40:02 -07:00
Jake McGinty
f63f95404e remove ReviewIdentitiesActivity
// FREEBIE
2014-06-22 16:21:30 -07:00
phenx-de
a54d20f3ef Add "%s selected" subtitle to Conversation List batch mode. 2014-06-13 09:35:36 -07:00
phenx-de
ea0fa58265 Add preview of encryption channel in compose text hint. 2014-06-12 16:32:31 -07:00
phenx-de
d8e6a93584 Use contextual action bar menu for conversation items. 2014-06-12 14:27:34 -07:00
phenx-de
5ae8a7a8c4 Improved the warning icon: Higher resolution, better size. 2014-06-12 14:24:08 -07:00
Jake McGinty
ce7b8ab75a new passphrase prompt activity
// FREEBIE
2014-05-19 12:16:42 -07:00
Manuel
d8d5848dae Change draw selector to background 2014-05-16 11:43:47 -07:00
Jake McGinty
d6d76fa953 change out key cached icon to be more unique
Fixes #651
// FREEBIE
2014-05-14 17:52:49 -07:00
Jake McGinty
7349378d8d fix contact selection header theming
Fixes #1343
// FREEBIE
2014-04-14 17:43:13 -07:00
Santoso Wijaya
12dac6ccc3 ShareActivity, destruction of RecipientsPanel
// FREEBIE
2014-04-10 13:16:14 -07:00
Jake McGinty
e2f7c1529a group and contact list fixes
1) Updating a group without changing the avatar will keep that
   avatar

2) Prohibit adding non-push users to an existing push group

3) Add Android contacts to the same database. Takes a small amount
   more time and memory, but allows queries to not be a hack, and
   enables us to dedupe numbers in JB and higher devices.

// FREEBIE
2014-04-10 11:14:06 -07:00
Jake McGinty
d4d684b670 simplified layouts 2014-04-03 09:59:32 -07:00
Jake McGinty
54a882a11d new send icons, fix logic for disabling/enabling
// FREEBIE
2014-04-03 09:49:50 -07:00
Jake McGinty
ca6d8a8a0d refactor and improve contact selection
* unify single and multi contact selection activities
* follow android listview design recommendations more closely
* add contact photos to selection
* change indicator for push to be more obvious
* cache circle-cropped bitmaps
* dedupe numbers when contact has multiple of same phone number

// FREEBIE
2014-04-01 14:56:45 -07:00
Jake McGinty
d827ab1b36 more precise sms controls
// FREEBIE
2014-03-13 20:59:20 -07:00
phenx-de
f51989b23e Fix conversation list view for larger text sizes. 2014-03-10 10:32:32 +01:00
Veeti Paananen
42aeca26f1 Fix overdraw issues in the conversation view
Remove the redundant window background and row backgrounds to improve
drawing performance.
2014-03-05 08:03:55 +02:00
Jake McGinty
90169e9468 pending messages more accurately conveyed to user 2014-03-03 11:56:54 -08:00
Moxie Marlinspike
5cd8c922d2 Merge pull request #648 from veeti/tweaks-and-polish
Assorted tweaks and polish
2014-03-02 14:01:20 -08:00
Benedict Pregler
ee921a8f49 fixed some hardcoded strings 2014-03-02 13:22:02 -08:00
Veeti Paananen
757cb1c846 Add touch highlight to contact photos 2014-03-02 09:40:35 +02:00
Veeti Paananen
4f066757e7 Use the touch highlight background for the emoji toggle 2014-03-02 09:40:35 +02:00
Veeti Paananen
633aa9b057 Fix the send button's touch highlight color
Introduce a generic touch highlight background drawable, and use the
proper shades of blue (and gray on v19+).
2014-03-02 09:40:35 +02:00
Tim Bücher
6fb85aff6d Fix hpyerlinking recieved/sent date in messages 2014-02-26 13:43:55 +01:00
Jake McGinty
a8c23413ba Merge pull request #745 from mcginty/logcat_submit
activity to submit logcat to pastebin
2014-02-25 22:20:34 -08:00
Jake McGinty
ce68429a9b activity to submit logcat to pastebin 2014-02-25 22:14:21 -08:00
Buck Doyle
5d42110d6c Make outgoing links readable 2014-02-25 22:46:49 -05:00
Tim Bücher
bd167cbb17 Fix missing localozation strings for custom LED blink pattern. 2014-02-25 11:38:31 +01:00
Jake McGinty
3dd27ed59a push conversation messages are now blue
// FREEBIE
2014-02-23 15:29:07 -08:00
Moxie Marlinspike
056dbd1a4e tweak text
//FREEBIE
2014-02-22 14:42:02 -08:00
Jake McGinty
7beab36c6a updates to conversation menu, and updating of group info
// FREEBIE
2014-02-21 11:33:31 -08:00
Jake McGinty
0cdc6fd87d embrace the darkness, don't open quickcontact for groups
// FREEBIE
2014-02-19 15:01:10 -08:00
Jake McGinty
0688dd0c2c repurpose ImageDivet for avatar, minor lint, fix bitmap decoding
// FREEBIE
2014-02-19 00:01:37 -08:00
Moxie Marlinspike
760c96171d Merge branch 'master' into groups 2014-02-18 13:53:35 -08:00
Jake McGinty
93329df530 avatar selection on gb fixed, disable push groups if not push registered 2014-02-17 17:33:20 -08:00
Jake McGinty
725e943842 fixed date floating in funky location 2014-02-17 15:48:08 -08:00
Jake McGinty
5810062b25 group action conversation items, tweaks to single contact selection 2014-02-16 21:09:15 -08:00
Jake McGinty
8e3aa94a05 group member name tags, group convo iconography, tweaks 2014-02-15 04:21:56 -08:00
Jake McGinty
b2fdd74a1c fix error indicator visibility/placement for sent messages 2014-02-14 17:10:05 -08:00
Jake McGinty
556b0dec1d pretty up the interface/colors a bit. 2014-02-14 16:21:48 -08:00
Jake McGinty
9b41675f8f single contact selection 2014-02-14 16:21:48 -08:00
Jake McGinty
bb4a4d33c9 handlePush and handleMms prototypes 2014-02-13 12:15:26 -08:00
Jake McGinty
c5d010c86f Quick progressbar sample for network operations during group create 2014-02-13 11:44:07 -08:00
Jake McGinty
fe55ac57d9 strings, strings, strings 2014-02-12 18:12:58 -08:00
Jake McGinty
01a438de09 basic messaging when non-push users are added 2014-02-12 17:17:33 -08:00
Jake McGinty
9cd5a67ec5 directory changes to use number instead of token, group ui progress 2014-02-12 11:35:04 -08:00
Jake McGinty
5a75ff9299 Merge pull request #537 from veeti/registration
Registration activity fixes
2014-01-26 01:02:41 -08:00
Jake McGinty
9fd2c4753e ui wip 2014-01-25 23:39:56 -08:00
Veeti Paananen
fc458770ea Reduce margin between registration text 2014-01-20 15:31:09 +02:00
Veeti Paananen
0d2ce2528c Use equal margins in the registration view 2014-01-20 15:13:11 +02:00
Veeti Paananen
6bfae9ebc9 Fix registration activity being cut off on small screens or large fonts 2014-01-20 15:13:11 +02:00
Jake McGinty
8f7c9d45aa pngcrush and removal of unused layout // FREEBIE 2014-01-11 10:55:52 -10:00
Jake McGinty
28c1c5006b icon, contact list and conversation redesign 2014-01-09 19:06:41 -10:00
Moxie Marlinspike
04b2c3772a Support skipping password creation at setup 2014-01-07 16:27:00 -08:00
Moxie Marlinspike
a4a3b4a453 Update registration strings 2014-01-07 15:16:23 -08:00
Moxie Marlinspike
5e6d39beea Move classes into library 2014-01-06 14:35:53 -08:00
Moxie Marlinspike
2042ca6cb7 Generate "prekeys" at push registration time.
This generates a large number of key exchange messages and
registers them with the server during signup.
2014-01-06 14:34:47 -08:00
Moxie Marlinspike
d7070e7ecf Inserted the Registration activity into initial setup flow.
1) Added push messaging toggle to preferences.

2) Added push messaging registration screen to setup flow.

3) Migrated rest of SharedPreferences accessors to
   TextSecurePreferences.
2014-01-06 14:30:03 -08:00
Moxie Marlinspike
0ed9da9a2c Strings and slight cleanup 2014-01-06 14:21:50 -08:00
Moxie Marlinspike
7eef93c829 Stringify and clean layout 2014-01-06 14:19:05 -08:00
Moxie Marlinspike
3634ba0b55 Registration with voice verification. 2014-01-06 14:18:30 -08:00
Veeti Paananen
eb1b762a76 Improve password caching notification UI & UX
On Jelly Bean and above:

- Use the standard notification style for a better and consistent visual
  appearance

- Use the JB notification actions API for the locking action

- Use a lower notification priority to prioritize other notifications
  over TextSecure

On ICS:

- Use the existing custom notification layout

Everywhere:

- Allow opening the app itself from the notification

- Simplify strings: don't talk about a "cached passphrase" but about the
  app being "unlocked"/"locked"
2013-12-22 04:48:39 +02:00
Veeti Paananen
bee964dcf8 Improve appearance of "no contacts" indicators by centering them.
Also remove pointless scroll views.
2013-12-16 22:27:10 +02:00
Veeti Paananen
f18324e2d6 Add tab swiping in the contact picker 2013-12-16 22:17:52 +02:00
Veeti Paananen
89ae5ed4ed Clean up password unlock layout
Remove unnecessary and redundant nested layouts, fix the alignment of
the unlock button to the right edge of the screen, use cleaner margins
and replace the deprecated fill_parent sizes with match_parent.
2013-12-02 23:19:42 +02:00
Veeti Paananen
9ddfa6499c Gingerbread pls go
Look like an Android app from 2013.

Remove the redundant Gingerbread button styles from buttons to
automatically use the Holo theme on phones that don't run a 3+ year old
operating system.

Create a new style for horizontal progress bars that uses the Holo
progress bar style on v11 and above.
2013-12-01 01:36:21 +02:00
rhodey
2c2a03e5e2 Enhanced MMS configuration prompts and processing.
1) Added a new message status to MmsDatabase to
   signify a pending MMS download which requires
   APN settings.

2) Added a database method to query MMS messages
   based on status.

3) Added login to SendReceiveService for processing
   of MMS pending APN information.

4) Moved all APN/MMS settings into ApnPreferencesActivity
   and transformed PromptApnActivity into a simple
   informational activity.

5) Added logic to check for APN settings on send and
   receive of all MMS (media, group, email) and direct
   user to PromptApnActivity then ApnPreferencesActivity
   if necessary.

6) Vocab/grammar adjustments.
2013-10-20 16:56:34 -07:00
Moxie Marlinspike
d97252d8d6 Add ability to disable local encryption passphrase. 2013-07-01 10:15:36 -07:00
Moxie Marlinspike
7f532fc37f Fix dark theme recipients editor font color. 2013-06-29 15:34:18 -07:00
Moxie Marlinspike
767d790b3d Dark theme fixes.
1) Make the conversation background all black with no column.

2) Fix the font color on identity key review.
2013-06-29 10:33:58 -07:00
Moxie Marlinspike
93c222fe9c Added "recent emoji" panel as an LRU cache. 2013-06-29 09:51:08 -07:00
Moxie Marlinspike
2e31cfed11 Basic support for composing emoji 2013-06-27 20:57:27 -07:00
Moxie Marlinspike
408672b0b8 Fix or invisible delivery status regression with MMS. 2013-06-26 09:19:50 -07:00
Moxie Marlinspike
614e962110 Remove unused resources. 2013-06-25 10:47:59 -07:00
Moxie Marlinspike
aa25f94291 Enhanced import/export support.
1) Allow imports from the stock SMS database at any time.

2) Provide plaintext export support, in a format compatible with
   the "SMS Backup And Restore" app.

3) Fix the DB weirdness on encrypted restore that previously
   required killing the app.
2013-06-24 21:02:30 -07:00
Moxie Marlinspike
903ab92f5f Basic navigation drawer support. 2013-06-22 21:44:12 -07:00
Moxie Marlinspike
5263ac1f1a Theme Support
1) Broke out the UI elements of the major Activites into stylable
   attributes.

2) Created a 'light' and 'dark' theme for the newly stylable attrs.

3) Touched up some of the UI spacing.

4) Implemented dynamic theme switching support.
2013-06-21 12:14:40 -07:00
Moxie Marlinspike
8c1ca6c9e0 Clean up identity key view activity 2013-05-23 18:54:16 -07:00
Moxie Marlinspike
95eb62190a Remove checkboxes from the multi-select UI 2013-05-23 18:37:04 -07:00
Moxie Marlinspike
3743c57edd Clean up list of identity keys. 2013-05-23 17:47:42 -07:00
Moxie Marlinspike
5e2b31af60 Add appropriate text for manual case when identity is trusted. 2013-05-23 17:17:28 -07:00
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.
2013-05-23 16:36:24 -07:00
Moxie Marlinspike
7c47ea5cec Make MMS more asynchronous and consistent with new SMS types.
1) We now delay MMS notifications until a payload is received,
   or there's an error downloading the payload.  This makes
   group messages more consistent.

2) All "text" parts of an MMS are combined into a second text
   record, which is stored in the MMS row directly rather than
   as a distinct part.  This allows for immediate text loading,
   which means there's no chance a ConversationItem will resize.

   To do this, we need to include MMS in the big DB migration
   that's already staged for this application update.  It's also
   an "application-level" migration, because we need the MasterSecret
   to do it.

3) On conversation display, all image-based parts now have their
   thumbnails loaded asynchronously.  This allows for smooth-scrolling.
   The thumbnails are also scaled more accurately.
2013-05-06 08:40:55 -07:00
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.
2013-05-06 08:40:55 -07:00
Moxie Marlinspike
303d1acd45 Initial client support for GCM message send/receive 2013-05-06 08:40:55 -07:00
Moxie Marlinspike
2f39283da3 Initial GCM registration 2013-05-06 08:40:55 -07:00
Moxie Marlinspike
09ce848b16 Remove default disabled tint from send button. 2013-03-15 07:47:09 -07:00
Jake McGinty
674cd68ebd Modern-style Android chat icons (incl. secure icon)
Make the send-button appearance more similar to the default Android
messenger application
2013-03-10 16:05:35 -07:00
Lilia Markham
5dabe1069d Avoid auto-scroll after deleting a message
See WhisperSystems/TextSecure#139

This fix involves setting transcriptMode to normal on conversation view,
which resolves the issue but comes with the side effect that if you
have scrolled away from the bottom of the list, new incoming messages
will not trigger auto-scroll as they arrive.
2013-03-05 01:33:55 -08:00
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.
2013-03-04 17:43:04 -08:00
Moxie Marlinspike
6c1572e0ec Layout touchup 2013-02-19 10:36:04 -08:00
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.
2013-02-17 15:09:01 -08:00
Moxie Marlinspike
5cb02445e8 Add support for "delivery notifications." Currently SMS-only. 2013-01-06 21:38:36 -08:00
Moxie Marlinspike
01f5ec5ab8 Align date for GB devices. Compromise nice checkbox alignment. 2012-11-20 20:56:21 -08:00
Moxie Marlinspike
9bf434cb3b The <= GB QuickContactBadge is ugly. Let's do something nicer for them.
Unfortunately GB is 50% of the TS userbase, best not to neglect them.
2012-11-20 20:14:30 -08:00
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.
2012-10-29 16:51:42 -07:00
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.
2012-09-19 19:56:04 -07:00
Moxie Marlinspike
4715512194 Fixed auto-initiate layout on GB. 2012-09-12 19:47:40 -07:00
Moxie Marlinspike
a834ccad55 Fix for 2.3 ugliness. 2012-09-09 19:49:02 -07:00
Moxie Marlinspike
3d3db421d3 Lint warning changes. 2012-09-09 16:10:46 -07:00
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.
2012-09-09 09:18:17 -07:00
Moxie Marlinspike
312942439d Fixed RecipientsPanel white-on-white weirdness for Android <= 2.3.
Only appeared when the RecipientsEditor was in the unselected state.
2012-09-07 21:34:29 -07:00
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.
2012-09-07 21:21:12 -07:00
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
2012-09-07 21:19:37 -07:00
Moxie Marlinspike
07305d939a Fix display problem on <= Gingerbread devices. 2012-08-06 19:40:59 -07:00
Moxie Marlinspike
bffeed7cd3 Removed old drawable resources. 2012-08-04 16:52:07 -07:00
Moxie Marlinspike
7883d09573 Fix success/failure status on conversation item. 2012-08-03 17:34:09 -07:00
Moxie Marlinspike
cffedb09a1 Do migration in backgrounded service. 2012-08-02 20:23:41 -07:00
Moxie Marlinspike
31d59dddef Remove key exchange indicator from list view, spruce up create passphrase dialog. 2012-07-31 17:02:50 -07:00
Moxie Marlinspike
bc8f26c591 Correctly initialize conversation after message sent. 2012-07-31 16:27:58 -07:00
Moxie Marlinspike
853e12693d Fix Auto/Save activities for GB. 2012-07-31 15:48:14 -07:00
Moxie Marlinspike
edb286a44d Add search support for v11+ 2012-07-31 13:53:00 -07:00
Moxie Marlinspike
e641a28cf5 New lock icons. 2012-07-30 17:51:31 -07:00
Moxie Marlinspike
5918353fc7 Updated lock icon image 2012-07-30 17:28:55 -07:00
Moxie Marlinspike
1ff278dc81 Update the key exchange icon look. 2012-07-30 17:15:49 -07:00
Moxie Marlinspike
7cab26750b Switch to Contextual Action Bar goodness. 2012-07-26 16:21:45 -07:00
Moxie Marlinspike
a66cc636c6 Fix review identity activity UI. 2012-07-23 21:43:55 -07:00
Moxie Marlinspike
a1b077c349 Fix view identity key QR code action. 2012-07-23 13:50:12 -07:00
Moxie Marlinspike
78998d0c93 Clean up key/identity verification Activites.
1) Get ride of the crazy button situation.
2) Actionbar-ify and abstract out the common actions.
3) Switch to full activities from dialog themes.
2012-07-23 13:42:29 -07:00
Moxie Marlinspike
863e1c6508 Fix the look of tabbed multi-contact selector.
1) Updated to ActionBar style.
2) Split out into fragments.
3) Switch to cursor loaders.
2012-07-20 22:23:25 -07:00
Moxie Marlinspike
c7e891eda4 Fix passphrase prompt dialog activity. 2012-07-19 22:54:44 -07:00
Moxie Marlinspike
a7cc47d259 Update conversation item style.
1) Don't print sender/recipient name in message body.
2) Do the split conversation icon view.
3) Adjust font sizes and colors.
2012-07-19 19:23:49 -07:00
Moxie Marlinspike
1ac1cec634 Update look for RecipientsPanel.
1) Make the "add contacts" graphic more holo-ific.
2) Adjust the graphic position on holo-themed devices.
2012-07-19 15:16:07 -07:00
Moxie Marlinspike
b377fe84df New design for Conversation Activity.
1) Move to Fragments for the list view.
2) Switch to CursorLoader from my jankey self-managed cursor.
3) Add session security logic to the ActionBar.
4) Fix colors to be less ugly.
2012-07-19 14:22:03 -07:00