Commit Graph
100 Commits
Author SHA1 Message Date
Torsten Grote fe963edd9d Merge branch '829-new-launcher-icon' into 'master'
Use the new launcher icon

Closes #829

See merge request !515
2017-04-07 12:59:35 +00:00
Torsten Grote b7866be38d Move HTML Sanitation to DbThread 2017-04-04 13:27:06 -03:00
Torsten Grote 58318bb79f Remove pending intents for clearning notification counters
These counters are already reset when the user clicks the notification
or vists the area of the app the notifications are for.

This also removes a potential intent hijacking vulnerability.
2017-04-04 09:02:38 -03:00
Torsten Grote da22d91ef3 Update expiry date and translations 2017-03-30 15:35:02 -03:00
Torsten Grote cd360ec877 Merge branch '909-restrict-access-to-settings-activity' into 'master'
Require a system permission to open the settings activity

See merge request !501
2017-03-30 12:58:07 +00:00
Torsten Grote ebc3402307 Merge branch '912-validate-stream-encrypter-args' into 'master'
Validate arguments to StreamEncrypter#writeFrame()

Closes #912

See merge request !497
2017-03-29 16:52:54 +00:00
Torsten Grote c5f6980c69 Fix ForumActivityTest 2017-03-28 09:34:42 -03:00
Torsten Grote 24b531e6b2 Sanitize all HTML before displaying it 2017-03-24 16:45:36 -03:00
Torsten Grote 9cffff715a Require a panic app to be set before executing any panic actions 2017-03-24 16:19:09 -03:00
Torsten Grote 804e912e19 Merge branch 'remove-placeholder-tests' into 'master'
Remove placeholder tests

See merge request !491
2017-03-24 18:12:13 +00:00
Torsten Grote 720dda784e Remove error state and reset session on error instead 2017-03-23 14:14:23 -03:00
Torsten Grote 867a233b6f Update expiry 2017-03-06 18:46:15 +01:00
Torsten Grote 36f02b36d9 Update expiry and translations 2017-02-01 11:17:53 -02:00
Torsten Grote 59af25b2cd Remove REMOTE_LEFT state from sharing client state machine 2017-01-12 15:19:28 -02:00
Torsten Grote 04508a7431 Store invitation outcome in metadata
and include in canBeOpened calculation for private groups and sharables.
2017-01-06 13:29:21 -02:00
Torsten Grote 5653c6d650 Address review comments 2017-01-06 13:25:13 -02:00
Torsten Grote ab100ad19b Properly remove the blog when deleting a contact and inform all peers
Fixes #816
2017-01-06 13:01:37 -02:00
Torsten Grote c13eafef14 Migrate blog sharing to new sharing client infrastructure 2017-01-06 13:01:34 -02:00
Torsten Grote dc6a6f27ab Fix MessageTreeImplTest 2017-01-04 16:27:49 -02:00
Torsten Grote 8d9ddeeeee Stop periodic list update only once 2017-01-04 11:15:19 -02:00
Torsten Grote baed2b8483 Merge branch '879-remove-thread-collapsing-unread-count' into 'master'
Remove code for collapsing threads and for reply count

Besides removing lots of code, this MR also improves the encapsulation between adapter and view holders.

Closes #478, #502, #526, #682,  #683,  #835,  #836

See merge request !477
2017-01-04 13:00:16 +00:00
Torsten Grote b3d3230549 Remove code for collapsing threads and for reply count 2017-01-04 10:58:31 -02:00
Torsten Grote 7034ea28f3 Merge branch '475-new-sharing-client' into 'master'
New Forum Sharing Client

This is very similar to how the private group invitations work and I am sure there's still some tiny bugs that I didn't catch.

All existing integration tests either pass or have been modified to pass.

Once this has been merged, the code should be usable for blog sharing as well.

Closes #475

See merge request !467
2017-01-03 19:30:48 +00:00
Torsten Grote 51b78cf9b1 Address review comments for new sharing client 2017-01-03 17:25:45 -02:00
Torsten Grote b4c669243b Add UnreadMessageButton to threaded conversations 2017-01-03 13:25:31 -02:00
Torsten Grote 694e662028 New Forum Sharing Client 2017-01-03 11:23:02 -02:00
Torsten Grote 409e0fb5a5 ForumSharingValidator 2017-01-03 11:23:00 -02:00
Torsten Grote 279f4d668a Add new UnreadMessageButton class 2017-01-02 16:30:00 -02:00
Torsten Grote c5df2100da Fix ForumActivityTest and get rid of redundant theme definition 2017-01-02 11:57:45 -02:00
Torsten Grote a9663875f4 Update expiry date and translations 2016-12-30 12:13:43 -02:00
Torsten Grote 804966ede6 Do not log information from RSS feeds 2016-12-29 13:07:18 -02:00
Torsten Grote f0f22b42e5 Make sure contact name is initialized when needed 2016-12-29 12:29:32 -02:00
Torsten Grote 460b524e4b Merge branch 'record-reading-tests' into 'master'
Unit tests for record readers

I thought we should have some tests for the new logic that skips unrecognised record types.

See merge request !471
2016-12-21 17:14:16 +00:00
Torsten Grote 924398c829 Use unique request codes across the app 2016-12-21 12:52:11 -02:00
Torsten Grote 0a9840997f This adds a handleDbException() method to BaseActivity
and a corresponding method for fragments that calls through to the activity.
For now, the method just finishes the activity
and NavDrawerActivity overrides it to do nothing,
and all the error places marked with TODO that finish the activity call the method instead.

That gives us zero functional improvement over the status quo,
but it allows us to change the default behaviour easily,
and then we can start thinking about which cases should have non-default behaviour.
2016-12-21 12:06:20 -02:00
Torsten Grote 6a94785d9a Mark invitation unavailable to answer when creator dissolved the group
after the invitation.

Closes #876
2016-12-21 11:24:08 -02:00
Torsten Grote efb89adf41 Merge branch '793-show-open-button-after-accepting-invitations' into 'master'
Show open button in private conversation after accepting invitations

To keep the implementation simple, the Open button does appear where the Accept button had been previously.

In order to make the Open button functional, I had to make the `GroupId` of the invitation target available to the UI. Most code in this MR is due to that.

![device-2016-12-13-105228](/uploads/d0f27fc02f1411596458d9203a0810d2/device-2016-12-13-105228.png)

Closes #793

See merge request !457
2016-12-20 14:07:13 +00:00
Torsten Grote c04580e321 Don't open unsubscribed shareables 2016-12-20 12:00:01 -02:00
Torsten Grote 2ef9b8f4b6 Show open button in private conversation after accepting invitations 2016-12-20 08:47:27 -02:00
Torsten Grote 5345db0b6b Address review comments 2016-12-19 11:15:53 -02:00
Torsten Grote 501980d8fe Bring protocols in line with spec 2016-12-19 10:26:48 -02:00
Torsten Grote 1c6be2fb78 Include Commit ID in crash reports and feedback 2016-12-15 15:40:52 -02:00
Torsten Grote 09b0a8b161 Use different notification icons for different features
and use the primary color for the notification.
2016-12-15 15:29:48 -02:00
Torsten Grote a6d053a0ea Update all logos 2016-12-15 15:19:38 -02:00
Torsten Grote ea4e2f09c8 Revert dagger update 2016-12-14 16:52:38 -02:00
Torsten Grote ffc9fdbb92 Plugins throw exceptions for startup errors 2016-12-14 16:35:23 -02:00
Torsten Grote 25a4caec2a Add Unit tests for CryptoComponent#hash() 2016-12-14 13:15:44 -02:00
Torsten Grote db71472501 Also show overflow icon on devices with menu key by using Toolbar 2016-12-14 11:17:04 -02:00
Torsten Grote 1081a08ea9 Move all unit tests to their modules and remove briar-tests 2016-12-13 17:22:24 -02:00
Torsten Grote 78000375df Merge branch '155-notification-icon' into 'master'
Make notification icon less similar to superuser icon

Closes #155

See merge request !458
2016-12-13 17:24:05 +00:00
Torsten Grote 45b5040254 Add sharing information to private group ActionBar subtitle 2016-12-12 13:55:35 -02:00
Torsten Grote 378a8f0a10 Merge branch '813-add-online-status-and-creator-information-to-group-memberlist' into 'master'
Add creator and online information to group member list

![device-2016-12-06-102258](/uploads/90e19a6ca31aaf91c6ebf3ea8e218b3f/device-2016-12-06-102258.png)
![device-2016-12-06-110113](/uploads/3fd62f7cdfe75419a07262356d27b952/device-2016-12-06-110113.png)

Closes #813

See merge request !448
2016-12-12 15:36:02 +00:00
Torsten Grote 562866494b Add creator and online information to group member list 2016-12-12 13:33:23 -02:00
Torsten Grote 97d4c68f43 Move integration tests to their proper packages 2016-12-12 10:27:41 -02:00
Torsten Grote 4226ba40c2 Merge branch '570-consistent-use-of-animations' into 'master'
Make animations more consistent

![animations6](/uploads/0ac694d3561515e04fbb9032d31f183c/animations6.mp4)

Closes #570, #621

See merge request !439
2016-12-09 16:49:26 +00:00
Torsten Grote 3df3d19a07 Address review comments 2016-12-09 14:40:20 -02:00
Torsten Grote e3dcc62509 Use back transition when backing out of creating private group 2016-12-09 14:22:05 -02:00
Torsten Grote db3c3eee44 Move OnBlogPostClickListener from activity to fragment 2016-12-09 14:22:03 -02:00
Torsten Grote 5a522d64df Don't show splash screen when signed in
This also removes the BriarFragmentActivity that was only really used by
the NavDrawerActivity.
2016-12-09 14:14:47 -02:00
Torsten Grote 68b216d580 Make animations more consistent 2016-12-09 14:13:18 -02:00
Torsten Grote d5c6fcc85b Fix merge accident after renaming event 2016-12-09 14:12:27 -02:00
Torsten Grote a099104d08 Merge branch '646-shared-with-subtitle-forums' into 'master'
Add sharing info to ForumActivity action bar subtitle

This indirectly does also most of the work for adding the same information to private groups. However, completing this is blocked by !448.

![device-2016-12-07-152915](/uploads/5bb42f2e78a87931b0307e7597ba72c5/device-2016-12-07-152915.png)

Second part of #646

See merge request !451
2016-12-09 16:06:21 +00:00
Torsten Grote 4e159bbb1f Add sharing info to ForumActivity action bar subtitle 2016-12-09 14:02:42 -02:00
Torsten Grote 7c6232db9d Address review comments (rename event, fix annotations, final field) 2016-12-09 13:54:39 -02:00
Torsten Grote 6cf1480d2d Merge branch '766-unit-tests-for-peer-protocol-engine' into 'master'
Add unit tests for PeerProtocolEngine

Although not all classes have unit tests, this

Closes #766

See merge request !450
2016-12-08 16:14:34 +00:00
Torsten Grote 2679e6932f Add unit tests for PeerProtocolEngine 2016-12-08 14:13:00 -02:00
Torsten Grote d04dda1566 Add sharing information to toolbar subtitle of blogs
The toolbar subtitle shows information about how many contacts the
current blog is shared with and how many of those are online.
2016-12-07 15:16:44 -02:00
Torsten Grote 5588855667 Fix intent of some CreatorProtocolEngine unit tests 2016-12-07 15:07:01 -02:00
Torsten Grote 7df6abbcbe Merge branch '810-fix-sharing-status-screens' into 'master'
Fix Sharing Status screens

* Remove distinction between "shared with" and "shared by"
* Show all contacts a blog is shared with
* Show online status of contacts in sharing screen

![device-2016-12-05-142949](/uploads/703fbd2d52815374e57edd89f754bf6c/device-2016-12-05-142949.png)

Closes #810

See merge request !445
2016-12-07 16:52:29 +00:00
Torsten Grote 001f5faeaa Two small review details: comment and initializing boolean 2016-12-07 14:49:57 -02:00
Torsten Grote ba1a19d236 Address review issues 2016-12-07 14:31:24 -02:00
Torsten Grote b7ce7de42a Add unit tests for InviteeProtocolEngine 2016-12-07 14:31:23 -02:00
Torsten Grote 7f5a5d40dc Remove verbose logging from introduction client 2016-12-06 15:36:54 -02:00
Torsten Grote 98dd8ec7f7 Fix Sharing Status screens
* Remove distinction between "shared with" and "shared by"
* Show all contacts a blog is shared with
* Show online status of contacts in sharing screen
2016-12-06 10:53:50 -02:00
Torsten Grote b98ab93e77 Merge branch '283-die-bluetooth-die' into 'master'
Ensure key agreement tasks finish if they ignore interrupts

The problem here was that `BluetoothSocket#connect()` was throwing an IOException when the task was interrupted - the task treated this like any other connection failure and retried, so the task never finished.

The fix is to check whether the timeout has expired before retrying, so the task eventually finishes even if it ignores the original interrupt.

Closes #283

See merge request !443
2016-12-06 11:02:19 +00:00
Torsten Grote 81337fe7ad Introduce Dialog Theme for Onboarding 2016-12-05 14:54:39 -02:00
Torsten Grote 062ed4ef4b Require a label for hashing
* Add a string label argument to CryptoComponent#hash()
* Convert DoubleDigest from implementing MessageDigest
  to implementing org.spongycastle.crypto.Digest
  (we need to keep DoubleDigest for FortunaGenerator)
* Convert all other uses of MessageDigest to CryptoComponent#hash()
* Remove CryptoComponent#getMessageDigest(), MessageDigest and DigestWrapper
2016-12-05 09:57:18 -02:00
Torsten Grote 9458b185f8 Add unit test for CreatorProtocolEngine 2016-12-02 10:57:00 -02:00
Torsten Grote a9ddb0019e Add missing IdentityManager unit tests 2016-12-01 13:21:09 -02:00
Torsten Groteandakwizgran 67d9f3a7c2 Add integration tests for GroupInvitationManager 2016-11-30 10:23:35 +00:00
Torsten Grote 8c7a532e2e Update translations before user testing 2016-11-27 13:38:26 -02:00
Torsten Grote 6fc42f7296 Update also Malaysian translation (removes unused strings) 2016-11-23 21:08:51 -02:00
Torsten Grote 55af22ca04 Update translations and expiry date 2016-11-23 21:05:06 -02:00
Torsten Grote b37a7531ca Add unit tests for group validators 2016-11-23 18:53:03 -02:00
Torsten Grote 2850763ec6 Refactor Integration Tests 2016-11-22 13:31:58 -02:00
Torsten Grote f10ac13350 Make navigation drawer scrollable 2016-11-22 09:59:42 -02:00
Torsten Grote e69139bc24 Bring back the toolbar shadow 2016-11-21 18:32:29 -02:00
Torsten Grote 38f46a9c60 Make dialog actions consistent 2016-11-21 17:42:23 -02:00
Torsten Grote b0b932a01c Add unit tests for group invitation client 2016-11-21 16:57:28 -02:00
Torsten Grote 20de6f1aa5 Merge branch '747-remove-injected-field-from-unit-test' into 'master'
Remove injected field from unit test

Getting this off my todo list...

Closes #747

See merge request !428
2016-11-21 16:43:49 +00:00
Torsten Grote b0098fb054 Fix KeyAgreement after regression 2016-11-21 10:32:06 -02:00
Torsten Grote a7c28f04de Make original author look like commenter when reblogged
This wasn't as simple as changing the persona in the XML,
because the same layout is used for a post whether reblogged or not.
So the persona needs to be changed programmatically for reblogged posts.
For this, the `AuthorView#setPersona()` method has been made public and
was changed to always set all views into the desired state to support
usage in a RecyclerView.
2016-11-21 09:43:22 -02:00
Torsten Grote ea0ad08f57 Merge branch '763-remove-signature-api' into 'master'
Remove old signature class from API

I decided not to remove the SignatureImpl class, as it's not a trivial wrapper around the Bouncy Castle class, but I moved the interface into briar-core and made it  package-private.

Closes #763

See merge request !424
2016-11-18 16:23:01 +00:00
Torsten Grote 1697c2af04 Remove Device ID 2016-11-18 12:30:25 -02:00
Torsten Grote cb8e0beea9 Fix Transport IDs 2016-11-18 12:29:57 -02:00
Torsten Grote 98cb077dd9 Migrate all custom signature code to new methods and add test 2016-11-18 12:19:03 -02:00
Torsten Grote c86d971166 Require a label for signing
This adds a sign() and a verify() method to the CryptoComponent
that take a mandatory label argument to ensure that signatures can't be
repurposed.
2016-11-18 11:05:19 -02:00
Torsten Grote d5f8808597 Add visibility information to group member list 2016-11-18 11:02:54 -02:00
Torsten Grote 20708bc156 Introduce a @Scheduler annotation
and make sure work is offloaded to an executor, so exceptions can be
caught.
2016-11-18 10:48:20 -02:00
Torsten Grote e32313c30b Use namespaced strings for Transport IDs 2016-11-17 17:06:26 -02:00