briar issueshttps://code.briarproject.org/groups/briar/-/issues2023-02-07T15:11:21Zhttps://code.briarproject.org/briar/briar/-/issues/1282Briar loses Tor connectivity when Orbot's VPN mode is activated2023-02-07T15:11:21ZakwizgranBriar loses Tor connectivity when Orbot's VPN mode is activatedTurning on Orbot's VPN mode causes Briar to lose Tor connections to contacts, but the Tor transport is still shown as active. When VPN mode is turned off, connections to contacts are re-established.Turning on Orbot's VPN mode causes Briar to lose Tor connections to contacts, but the Tor transport is still shown as active. When VPN mode is turned off, connections to contacts are re-established.https://code.briarproject.org/briar/briar-mailbox/-/issues/184Add Mailbox strings to Transifex2023-02-07T13:24:02ZakwizgranAdd Mailbox strings to TransifexMailbox: ReleaseTorsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar-mailbox/-/issues/172Update target SDK to 332023-02-07T13:23:54ZSebastianUpdate target SDK to 33MailboxTorsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar-mailbox/-/issues/163Notification does not update when app is in background2023-02-07T13:22:57ZSebastianNotification does not update when app is in backgroundI think we had this problem before and also solved it at some point, but it seems we have a regression.
Steps to reproduce:
* start non-paired mailbox
* put mailbox into background while it is starting up
* on logs, observe that tor get...I think we had this problem before and also solved it at some point, but it seems we have a regression.
Steps to reproduce:
* start non-paired mailbox
* put mailbox into background while it is starting up
* on logs, observe that tor gets into published state
* observe that the notification is still "Starting mailbox…"
* switch back to app which should be at the qr code screen now
* observe that notification has now changed to "Waiting for Briar to scan QR code…"
We're collecting the app state in MainActivity only when the activity is started, so it makes sense that currently no updates get processed when the activity is in the background.MailboxIvanaIvanahttps://code.briarproject.org/briar/briar/-/issues/2397Misleading error message when testers tried to pair mailbox via add contact s...2023-02-07T12:55:38ZakwizgranMisleading error message when testers tried to pair mailbox via add contact screen> The error message “The QR code you have scanned comes from a newer version of briar” was misleading. Participants believed they needed to upgrade to the latest version, so they asked for new links. After I clarified that they already h...> The error message “The QR code you have scanned comes from a newer version of briar” was misleading. Participants believed they needed to upgrade to the latest version, so they asked for new links. After I clarified that they already have the correct apk and encouraged them to explore other ways to link the devices.Mailbox: Usability testingIvanaIvanahttps://code.briarproject.org/briar/briar-manual/-/issues/12Add more detailed info about the differences between private group and forum2023-02-07T10:41:42ZBirgerAdd more detailed info about the differences between private group and forumOne important aspect of Briar is that apparently in a private group all communication flow goes through the creator's device, which can significantly delay communication.
Example: If a group has three members (Alice, Bob, Creator) the f...One important aspect of Briar is that apparently in a private group all communication flow goes through the creator's device, which can significantly delay communication.
Example: If a group has three members (Alice, Bob, Creator) the following appears to be the case: Alice posts a message to the group. The message is sent from Alice's device to Creator's device only when the devices are within Wifi or Bluetooth range or simultaneously have contact to the internet. The message is then forwarded from Creator's device to Bob's device only when these two devices are within Wifi or bluetooth range or simultaneously have contact to the internet. If Creator is out of range or away from the internet for an extended time, communication between Alice and Bob is not possible and they will be confused why their messages don't arrive.
Forums are "faster", as messages can also be exchanged between forum members' devices without going through Creator's device.
This info should be available in the manual.
Of course, communication delay of both private groups and forums will likely be reduced in the future if the mailbox function is used.https://code.briarproject.org/briar/briar/-/issues/2413Show verification status of contacts when inviting them to a forum2023-02-07T10:14:37ZBirgerShow verification status of contacts when inviting them to a forumThe dialog for inviting contacts to a forum currently does not show their verification status (verified/unverified contact). In some cases I might only want to invite verified contacts to a forum. Therefore, the verification status shoul...The dialog for inviting contacts to a forum currently does not show their verification status (verified/unverified contact). In some cases I might only want to invite verified contacts to a forum. Therefore, the verification status should be shown in the contact list when selecting contacts to invite to a forum.https://code.briarproject.org/briar/briar-manual/-/issues/11Add info about verification status of contacts2023-02-07T10:09:28ZBirgerAdd info about verification status of contactsThe manual currently does not provide information about the verification status of contacts. Some figures are apparently outdated and do not show the verification status of contacts as used by the app now. Also, the manual should explain...The manual currently does not provide information about the verification status of contacts. Some figures are apparently outdated and do not show the verification status of contacts as used by the app now. Also, the manual should explain the difference between verified and unverified contacts.https://code.briarproject.org/briar/briar/-/issues/513Verify unverified contacts2023-02-07T08:56:41ZakwizgranVerify unverified contactsContacts who are added via introductions (or via long-distance transports, if we decide to support that) are considered "unverified" due to the possibility of a man-in-the-middle attack against the key exchange protocol. Contacts who are...Contacts who are added via introductions (or via long-distance transports, if we decide to support that) are considered "unverified" due to the possibility of a man-in-the-middle attack against the key exchange protocol. Contacts who are added face-to-face are considered "verified".
Design and implement a protocol and UI for verifying the identity of a previously unverified contact when the user meets the contact face-to-face.https://code.briarproject.org/briar/briar/-/issues/1747Use custom PIN for app lock2023-02-06T14:57:18ZakwizgranUse custom PIN for app lockA user asked to be able to set an app lock PIN that's different from the PIN they use to unlock their phone.A user asked to be able to set an app lock PIN that's different from the PIN they use to unlock their phone.https://code.briarproject.org/briar/briar/-/issues/1445Change app lock password2023-02-06T14:50:21ZakwizgranChange app lock passwordA user asked for the ability to change the app lock password.A user asked for the ability to change the app lock password.https://code.briarproject.org/briar/briar-desktop/-/issues/402Deterministic test data with sent and received message state2023-02-05T22:31:15ZSebastianDeterministic test data with sent and received message stateIn order for messages to appear as received and read, I currently do this:``
```diff
index fc66a39..ee38a90 100644
--- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt
+++ b/briar-deskt...In order for messages to appear as received and read, I currently do this:``
```diff
index fc66a39..ee38a90 100644
--- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt
+++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt
@@ -38,7 +38,6 @@ import androidx.compose.material.Text
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Done
import androidx.compose.material.icons.filled.DoneAll
-import androidx.compose.material.icons.filled.Schedule
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
@@ -234,7 +233,7 @@ fun ColumnScope.ConversationItemStatusView(item: ConversationItem, rowModifier:
val icon =
if (item.isSeen) Icons.Filled.DoneAll // acknowledged
else if (item.isSent) Icons.Filled.Done // sent
- else Icons.Filled.Schedule // waiting
+ else Icons.Filled.DoneAll // waiting
Icon(icon, i18n("access.message.sent"), modifier, statusColor)
}
}
```
I think in the long term, it would be nice if the test data creator could just set those flags to values that we like for such purposes via the DSL.https://code.briarproject.org/briar/briar-desktop/-/issues/456Consistent naming "Briar" throughout app2023-02-05T22:26:35ZMikolai GütschowConsistent naming "Briar" throughout appThe following discussion from !274 should be addressed:
- [ ] @ialokim started a [discussion](https://code.briarproject.org/briar/briar-desktop/-/merge_requests/274#note_73755): (+3 comments)
> While trying out the installer gener...The following discussion from !274 should be addressed:
- [ ] @ialokim started a [discussion](https://code.briarproject.org/briar/briar-desktop/-/merge_requests/274#note_73755): (+3 comments)
> While trying out the installer generated by the CI, I noticed we use "Briar" as the application name during installation and also for the `.desktop` file for Linux, but the title of the main window is "Briar Desktop". Not sure if we should instead be consistent.
TL;DR: We probably want to use "Briar" everywhere instead of "Briar Desktop".Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/397Enforce Twitter Jetpack Compose Rules using ktlint2023-02-02T22:38:06ZMikolai GütschowEnforce Twitter Jetpack Compose Rules using ktlintfound by @grote: https://twitter.github.io/compose-rules/found by @grote: https://twitter.github.io/compose-rules/https://code.briarproject.org/briar/briar-desktop/-/issues/13Forums2023-02-02T14:59:58ZMikolai GütschowForumsDesktop 0.4.0Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar-desktop/-/issues/438Fix signature of eventOccurred()2023-02-02T13:58:17ZSebastianFix signature of eventOccurred()IntelliJ shows a warning at the locations where we override `eventOccurred()` from `EventListener` with `Event?` as the argument instead of `Event`. The interface is not nullable, so I think we can make this `Event` everywhere.
```
$ gr...IntelliJ shows a warning at the locations where we override `eventOccurred()` from `EventListener` with `Event?` as the argument instead of `Event`. The interface is not nullable, so I think we can make this `Event` everywhere.
```
$ grep -rI --include "*.kt" eventOcc briar-desktop/
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StartupViewModel.kt: override fun eventOccurred(e: Event) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ThreadedConversationViewModel.kt: override fun eventOccurred(e: Event) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumViewModel.kt: override fun eventOccurred(e: Event) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupListViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactsViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt: super.eventOccurred(e)
```Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/481Move interactive tests into new source tree2023-02-01T17:04:42ZSebastianMove interactive tests into new source treeSimilar to what we did for automated screenshots: !256, see https://code.briarproject.org/briar/briar-desktop/-/merge_requests/256#note_72788Similar to what we did for automated screenshots: !256, see https://code.briarproject.org/briar/briar-desktop/-/merge_requests/256#note_72788https://code.briarproject.org/briar/briar-desktop/-/issues/480Add window border to automatically created screenshots2023-02-01T17:02:51ZSebastianAdd window border to automatically created screenshotshttps://code.briarproject.org/briar/briar/-/issues/2395Check for Bluetooth timeout setting on stock Android 132023-02-01T14:36:46ZakwizgranCheck for Bluetooth timeout setting on stock Android 13CalyxOS 4.3.0 (based on Android 13) has a "Bluetooth timeout" setting that automatically turns off Bluetooth if no devices are connected for a configurable amount of time (the timeout can also be disabled). This setting could prevent Bri...CalyxOS 4.3.0 (based on Android 13) has a "Bluetooth timeout" setting that automatically turns off Bluetooth if no devices are connected for a configurable amount of time (the timeout can also be disabled). This setting could prevent Briar from connecting to contacts via Bluetooth if the timeout period elapsed with no contact connections.
We should check whether this setting exists upstream (stock Android 13) and whether a timeout is enabled by default.https://code.briarproject.org/briar/briar-desktop/-/issues/163Consider offloading avatar loading to the IoExecutor2023-02-01T14:11:02ZSebastianConsider offloading avatar loading to the IoExecutorCurrently we load avatar images on the db thread, maybe that's not optimalCurrently we load avatar images on the db thread, maybe that's not optimal