briar issueshttps://code.briarproject.org/groups/briar/-/issues2018-09-14T13:21:11Zhttps://code.briarproject.org/briar/briar/-/issues/1379StartupFailureActivity shows wrong error message2018-09-14T13:21:11ZakwizgranStartupFailureActivity shows wrong error messageWhen the database fails to open and returns DB_ERROR, StartupFailureActivity shows the message for DATA_TOO_OLD_ERROR, which gives the wrong description of the problem.When the database fails to open and returns DB_ERROR, StartupFailureActivity shows the message for DATA_TOO_OLD_ERROR, which gives the wrong description of the problem.Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1277BdfReaderImpl accepts any string/raw length up to Integer.MAX_VALUE2018-09-07T11:16:32ZakwizgranBdfReaderImpl accepts any string/raw length up to Integer.MAX_VALUEThis leads to a remotely triggerable OOM by sending, for example, a private message with the body 0x604406400000, which is the start of a BDF list containing a 100 MB string, causing the BdfReaderImpl to try to allocate a 100 MB buffer.This leads to a remotely triggerable OOM by sending, for example, a private message with the body 0x604406400000, which is the start of a BDF list containing a 100 MB string, causing the BdfReaderImpl to try to allocate a 100 MB buffer.Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1251Implement dark theme2018-09-06T12:38:40ZakwizgranImplement dark themeSubtask of #976.Subtask of #976.Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1246Design UX for PIN lock2018-09-03T18:55:43ZakwizgranDesign UX for PIN lockSubtask of #1245.
These specifications are a summary of the discussion in #1247. Please look there for details:
* Give the user the possibility to lock the app
* This is different from signing out, in the sense that the user will stay ...Subtask of #1245.
These specifications are a summary of the discussion in #1247. Please look there for details:
* Give the user the possibility to lock the app
* This is different from signing out, in the sense that the user will stay online and can receive messages
* Only the content of the app will be inaccessible
* This PIN lock feature should be optional and needs to be activated by the user
* Ideas for how to lock the app:
* action in navigation drawer
* action button below the permanent "signed in" notification
* panic response (out of scope of this ticket) #1345
* There should also be an option to automatically lock the app after a period of time. Maybe the user can define this time.
* It should be easy for the user to unlock the app. Ideally they don't need to remember another PIN or password. Signal uses the existing lockscreen security mechanism (secret or fingerprint) for unlocking. We can do the same. If there is no lockscreen security set, we can deactivate the feature.
* Open question: How to handle notifications when app is locked?
* option 1: show them as they are now, but ask for unlocking when they are clicked (Signal is doing this)
* option 2: don't show any notifications while the app is lockedAndroid 1.1Elio Qoshielio@ura.designElio Qoshielio@ura.designhttps://code.briarproject.org/briar/briar/-/issues/1253Update manual for dark theme2018-09-03T18:53:45ZakwizgranUpdate manual for dark themeSubtask of #976.Subtask of #976.Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1267Automatically enable Tor bridges when current location needs them2018-09-03T14:34:17ZakwizgranAutomatically enable Tor bridges when current location needs themSubtask of #647.Subtask of #647.Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/684Inject EmojiProvider2018-09-03T12:14:34ZakwizgranInject EmojiProviderInject a singleton EmojiProvider so we can get rid of the static instance. (It needs to be a singleton because it loads the emoji bitmaps and keeps references to them.)Inject a singleton EmojiProvider so we can get rid of the static instance. (It needs to be a singleton because it loads the emoji bitmaps and keeps references to them.)Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/749Emoji are invisible on some devices when using LAYER_TYPE_NONE2018-09-03T12:14:15ZakwizgranEmoji are invisible on some devices when using LAYER_TYPE_NONEThis issue can be reproduced on master with the Samsung Galaxy Ace 2 (Android 4.1.2) by creating a large EmojiTextView (for example a long forum post), so that rendering switches from LAYER_TYPE_SOFTWARE to LAYER_TYPE_NONE. In the screen...This issue can be reproduced on master with the Samsung Galaxy Ace 2 (Android 4.1.2) by creating a large EmojiTextView (for example a long forum post), so that rendering switches from LAYER_TYPE_SOFTWARE to LAYER_TYPE_NONE. In the screenshot below, the post at the top of the screen is below the threshold and uses LAYER_TYPE_SOFTWARE, while the invisible post filling the rest of the screen is above the threshold and uses LAYER_TYPE_NONE.
![device-2016-11-10-144841](/uploads/c55ea098cebfb45b5974816af3be4353/device-2016-11-10-144841.png)
The issue can be reproduced with EmojiTextViews of any size by changing the code to always use LAYER_TYPE_NONE. This makes it easier to see that emoji are sometimes drawn and sometimes not. For example, the screenshot below shows a mixture of posts, all of which use LAYER_TYPE_NONE and contain strings of emoji.
![device-2016-11-10-135603](/uploads/e0a04004b56ed1a4cc3286b09c60b3fa/device-2016-11-10-135603.png)
The issue also affects EmojiEditText if the rendering type is changed to LAYER_TYPE_NONE. In the screenshot below, one emoji has been typed but it's invisible.
![device-2016-11-10-135216](/uploads/9c3b4a7ca9afbf2ed24ab741d6c9d1cc/device-2016-11-10-135216.png)
Selecting invisible emoji makes them visible.
![device-2016-11-10-144910](/uploads/e7fecfe91ad52b0676343fde866fa805/device-2016-11-10-144910.png)
The issue also occurs on master with the Huawei Ascend Y330 (Android 4.2.2).
![device-2016-11-10-152529](/uploads/6893ab42d5ae585c38a76337c9186ad6/device-2016-11-10-152529.png)
If an EmojiTextView contains a mixture of emoji and text, the text is rendered normally. In the following screenshot, the post starts with one emoji, which is invisible.
![device-2016-11-10-150808](/uploads/de3bd61eb4f0aa9cf3955d5a837dbecb/device-2016-11-10-150808.png)Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/930Recent emoji page isn't updated2018-09-03T12:13:56ZakwizgranRecent emoji page isn't updatedSteps to reproduce:
* Choose an emoji from the first page (smilies)
* Switch to the recent emoji page
* Expected behaviour: the chosen emoji has been added to the page
* Actual behaviour: the chosen emoji isn't added until the page is de...Steps to reproduce:
* Choose an emoji from the first page (smilies)
* Switch to the recent emoji page
* Expected behaviour: the chosen emoji has been added to the page
* Actual behaviour: the chosen emoji isn't added until the page is destroyed and recreated
The recent emoji page is destroyed and recreated if you switch to any non-adjacent page, such as animals and plants, so the behaviour is inconsistent depending on which pages you switch to.
The problem occurs because the EmojiPageView doesn't know when its model has been updated. The model can keep a reference to the view (via some listener interface) to notify the view of changes, but the reference must be removed when the view is destroyed and restored when the view is recreated. I had a quick look at this but couldn't find a clean way to implement it in the current structure.Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/940Update to the latest emoji2018-09-03T12:13:35ZakwizgranUpdate to the latest emojiSignal's emoji code and resources were updated in December 2016:
https://github.com/WhisperSystems/Signal-Android/commit/f7474362ff8bc75fff70ed75a1caad31fd55374e
New emoji were released in March 2017:
http://emojipedia.org/emoji-5.0/Signal's emoji code and resources were updated in December 2016:
https://github.com/WhisperSystems/Signal-Android/commit/f7474362ff8bc75fff70ed75a1caad31fd55374e
New emoji were released in March 2017:
http://emojipedia.org/emoji-5.0/Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1314Missing or repeated flags in emoji chooser2018-09-03T12:12:48ZakwizgranMissing or repeated flags in emoji chooser* Android version: 6.0.1
* Briar version: 1.0.1
* User feedback: "In icon section, some flags are missing and most of them are repeated several times."* Android version: 6.0.1
* Briar version: 1.0.1
* User feedback: "In icon section, some flags are missing and most of them are repeated several times."Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1343Use vanniktech's library for emojis2018-09-03T12:12:25ZNicoUse vanniktech's library for emojisSo I was working on [updating to the latest emojis](https://code.briarproject.org/briar/briar/issues/940) in https://code.briarproject.org/briar/spritegen/merge_requests/1 but [did not have success generating updated sprites](https://cod...So I was working on [updating to the latest emojis](https://code.briarproject.org/briar/briar/issues/940) in https://code.briarproject.org/briar/spritegen/merge_requests/1 but [did not have success generating updated sprites](https://code.briarproject.org/briar/spritegen/merge_requests/1#note_28391). The process is currently [quite complicated](https://code.briarproject.org/briar/spritegen/merge_requests/1/diffs#8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_0_7) involving several dependencies and many steps in order to generate the emoji sprites.
In https://code.briarproject.org/briar/briar/issues/940 I mentioned there's a [library by vanniktech](https://github.com/vanniktech/Emoji/blob/master/README.md) which serves exactly the functionality Briar wants to have:
> A simple library to add Emoji support to your Android app. In a PopupWindow Emojis can be chosen.
One can choose from four different emoji providers, where Briar likely wants to use Google's one (https://code.briarproject.org/briar/briar/issues/940#note_28412):
> It's true that we can't provide the same icons for all users, but we can reduce the number of users who see different icons by using the latest Android icons.
This issue is for discussing and implementing the switch from Briar's current way of implementing emojis to vanniktech's library. Interesting for this task are [all commits with 'emoji' in their name](https://code.briarproject.org/briar/briar/commits/master?utf8=%E2%9C%93&search=emoji).Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1250UX design for dark theme2018-08-30T09:00:47ZakwizgranUX design for dark themeSubtask of #976.Subtask of #976.Android 1.1Elio Qoshielio@ura.designElio Qoshielio@ura.designhttps://code.briarproject.org/briar/briar/-/issues/1268Design UX for enabling Tor bridges manually2018-08-30T08:56:01ZakwizgranDesign UX for enabling Tor bridges manuallySubtask of #647.Subtask of #647.Android 1.1Elio Qoshielio@ura.designElio Qoshielio@ura.designhttps://code.briarproject.org/briar/briar/-/issues/467Migrate web, etherpad and email servers2018-08-24T17:51:52ZakwizgranMigrate web, etherpad and email serversSet up a new VM for web, etherpad and email. Migrate the web and etherpad servers from 213.108.108.22, preserving pad contents. Migrate the email and mailman servers from 66.228.56.76, preserving mailbox contents, list membership and lis...Set up a new VM for web, etherpad and email. Migrate the web and etherpad servers from 213.108.108.22, preserving pad contents. Migrate the email and mailman servers from 66.228.56.76, preserving mailbox contents, list membership and list archives.akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1304Share access to contact email account2018-08-24T17:51:17ZakwizgranShare access to contact email accountAllow team members other than @akwizgran to read and respond to contact emails. This involves sharing access to the account and establishing a workflow for avoiding duplicate responses, such as moving messages into a folder before dealin...Allow team members other than @akwizgran to read and respond to contact emails. This involves sharing access to the account and establishing a workflow for avoiding duplicate responses, such as moving messages into a folder before dealing with them.https://code.briarproject.org/briar/briar/-/issues/1305Share access to crash reports and feedback2018-08-24T17:50:57ZakwizgranShare access to crash reports and feedbackAllow team members other than @akwizgran to read crash reports and feedback and create tickets from them. This involves sharing access to the reports and establishing a workflow for avoiding duplicate tickets. Each member should be able ...Allow team members other than @akwizgran to read crash reports and feedback and create tickets from them. This involves sharing access to the reports and establishing a workflow for avoiding duplicate tickets. Each member should be able to search past reports to find reports that relate to the same issue.
The private key for decrypting reports should not be stored on a server. To protect the confidentiality of future reports, we should either replace the encryption key pair when a member leaves the team, or re-encrypt the reports to another key pair that can be replaced when a member leaves.https://code.briarproject.org/briar/briar/-/issues/1306Share access to Play Store reviews2018-08-24T17:49:56ZakwizgranShare access to Play Store reviewsAllow team members other than @akwizgran to respond to Play Store reviews. I'm assuming there's a mechanism for this, we just need to find out what it is.Allow team members other than @akwizgran to respond to Play Store reviews. I'm assuming there's a mechanism for this, we just need to find out what it is.https://code.briarproject.org/briar/briar/-/issues/758Throw an exception if deleted message is requested from DB2018-08-24T09:21:46ZakwizgranThrow an exception if deleted message is requested from DB`DatabaseComponent#getRawMessage()` returns null if the message has been deleted. It should throw an exception instead. (If clients want to check whether a message has been deleted, we can add a separate method for that.)`DatabaseComponent#getRawMessage()` returns null if the message has been deleted. It should throw an exception instead. (If clients want to check whether a message has been deleted, we can add a separate method for that.)Android 1.1akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1368Sign the Fdroid repo with a pgp key2018-08-22T18:28:39ZJoseph BurchettaSign the Fdroid repo with a pgp keyThe purported repo is https://briarproject.org/fdroid/repo?fingerprint=1FB874BEE7276D28ECB2C9B06E8A122EC4BCB4008161436CE474C257CBF49BD6
Please provide a signature if that is correct. It would be useful for people if it were here: https:...The purported repo is https://briarproject.org/fdroid/repo?fingerprint=1FB874BEE7276D28ECB2C9B06E8A122EC4BCB4008161436CE474C257CBF49BD6
Please provide a signature if that is correct. It would be useful for people if it were here: https://briarproject.org/fdroid.html
Or even putting the repo link in the readme and signing the commit.
Thanks!