briar issueshttps://code.briarproject.org/groups/briar/-/issues2021-05-05T16:14:52Zhttps://code.briarproject.org/briar/briar/-/issues/1986Introducing same two contacts not possible after self-destructing non-answere...2021-05-05T16:14:52ZSebastianIntroducing same two contacts not possible after self-destructing non-answered response to one-sided declined introductionUnder certain circumstances, an introduction can fail and leave the introducer in a state where they are not able to retry the introduction.
Situation to reproduce this: A introduces B and C with self-destructing messages enabled among ...Under certain circumstances, an introduction can fail and leave the introducer in a state where they are not able to retry the introduction.
Situation to reproduce this: A introduces B and C with self-destructing messages enabled among A-B and A-C. At the time of the introduction being sent, C is offline to simulate a delay.
* introduction arrives at B
* 30 seconds pass
* C comes online
* introduction arrives at C
* another 30 seconds pass
* B didn't do anything, the introduction self-destructs, and auto-declines it
* A forwards the decline to C
* another 30 seconds pass
* C didn't do anything, the introduction self-destructs, but doesn't auto decline it because B already declined and the
introduction can no longer succeed
* C didn't send a response and hence A cannot try again to introduce B and C, although it should. Also C has no way to respond to the introduction any longer to fix that
Test instructions:
* Variant 1
* Let A introduce B and C, with self-destructing messages enabled among A and C but not necessarily enabled among A and B.
* let B **decline** the introduction
* observe that C receives the response from B
* let the timer of the introduction expire at C
* observe that A received a decline from both B and C
* try to let A introduce B and C again. Make sure it is possible to actually send a new introduction that arrives at B and C
* Variant 2
* Let A introduce B and C, with self-destructing messages enabled among A and C but not necessarily enabled among A and B.
* let B **accept** the introduction
* in this case, C does not receive any response from B
* let the timer of the introduction expire at C
* observe that A received an accept from B and a decline from C
* try to let A introduce B and C again. Make sure it is possible to actually send a new introduction that arrives at B and CSelf-destructing messagesIvanaIvana2021-01-31https://code.briarproject.org/briar/briar/-/issues/1989Blog post created snackbar re-appears after screen rotation2021-04-26T12:03:55ZTorsten GroteBlog post created snackbar re-appears after screen rotation* write a blog post
* wait until snackbar disappears
* rotate screen
* observe the snackbar coming back* write a blog post
* wait until snackbar disappears
* rotate screen
* observe the snackbar coming backAdapt to changes in the Android platformIvanaIvana2021-04-30https://code.briarproject.org/briar/briar/-/issues/1990Clicking re-blogged author opens blog of reblogging author2021-04-26T12:08:41ZTorsten GroteClicking re-blogged author opens blog of reblogging author* get a blog post from a contact
* re-blog this post
* click the author of the original post in the reblogged post
* observe how your own blog opens and not the one of the author of the original post* get a blog post from a contact
* re-blog this post
* click the author of the original post in the reblogged post
* observe how your own blog opens and not the one of the author of the original postAdapt to changes in the Android platformIvanaIvana2021-04-30https://code.briarproject.org/briar/briar/-/issues/1991Panic button preferences screen doesn't use material design switches on API 192021-05-05T16:14:53ZakwizgranPanic button preferences screen doesn't use material design switches on API 19![device-2021-03-26-154413](/uploads/0dc8a6696c9159263f6e2f24e695dd69/device-2021-03-26-154413.png)![device-2021-03-26-154413](/uploads/0dc8a6696c9159263f6e2f24e695dd69/device-2021-03-26-154413.png)Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1992Initial experiments to decide whether to use Bluetooth or Wi-Fi2021-07-06T09:40:57ZakwizgranInitial experiments to decide whether to use Bluetooth or Wi-FiInstall via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/1993Define overall technical and UX approach2021-07-13T10:34:36ZakwizgranDefine overall technical and UX approachUX/dev collaboration to define the overall technical and UX approach for this feature.UX/dev collaboration to define the overall technical and UX approach for this feature.Transfer content securely via SD cards and USB memory sticksTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar-gtk/-/issues/100RuntimeError: Requests dependency 'chardet' must be version >= 3.0.2, < 3.1.0!2021-04-20T23:36:56ZJohn KennedyRuntimeError: Requests dependency 'chardet' must be version >= 3.0.2, < 3.1.0!I've been getting this error for a couple of weeks while trying to build on Arch (both stable and git).
`RuntimeError: Requests dependency 'chardet' must be version >= 3.0.2, < 3.1.0!`I've been getting this error for a couple of weeks while trying to build on Arch (both stable and git).
`RuntimeError: Requests dependency 'chardet' must be version >= 3.0.2, < 3.1.0!`https://code.briarproject.org/briar/briar/-/issues/1995Test sharing an app when offline2022-07-20T10:38:40ZTorsten GroteTest sharing an app when offlineYou will need *two* Android phones to help with testing sharing an app in an offline scenario.
It starts by download this test app on the first phone: https://grobox.de/tmp/hotspot.apk
Then please respond to this ticket, copying and pa...You will need *two* Android phones to help with testing sharing an app in an offline scenario.
It starts by download this test app on the first phone: https://grobox.de/tmp/hotspot.apk
Then please respond to this ticket, copying and pasting the text below into your response, giving the phone models in the first line.
You can check boxes by replacing `[ ]` with `[x]` or sending your response and then go through the steps, checking boxes by clicking them.
If you don't have or want an account to respond here, you can also send your response to `contact@briarproject.org` via email.
Please also respond, if you fail to complete all the steps. We would especially like to hear from you!
If something didn't go as expected, please feel free to add extra info to the questionnaire.
This is an example, how going through these steps could look like on the first phone:
[<img src="/uploads/b78344755319ed1b0830ce528b8c9637/device-2021-04-13-141128.png" width="200">](/uploads/b78344755319ed1b0830ce528b8c9637/device-2021-04-13-141128.png)
[<img src="/uploads/cdf3ae921106e98ee9dabbec2dfb3ac8/device-2021-04-13-141146.png" width="200">](/uploads/cdf3ae921106e98ee9dabbec2dfb3ac8/device-2021-04-13-141146.png)
[<img src="/uploads/750cd78087a215ede1c8a295eb9eb8a2/device-2021-04-13-142703.png" width="200">](/uploads/750cd78087a215ede1c8a295eb9eb8a2/device-2021-04-13-142703.png)
[<img src="/uploads/2e720826106e1fbedad1dde85b1683cd/device-2021-04-13-142720.png" width="200">](/uploads/2e720826106e1fbedad1dde85b1683cd/device-2021-04-13-142720.png)
[<img src="/uploads/6ccedfa1a0f8475383e43eb202645258/device-2021-04-14-102618.png" width="200">](/uploads/6ccedfa1a0f8475383e43eb202645258/device-2021-04-14-102618.png)
```
1. My phone models are: **[ModelOfPhone1]** and **[ModelOfPhone2]** running **[AndroidVersion1]** and **[AndroidVersion2]**
1. Download and install app on the first phone only
1. Start app and allow location permission (if requested)
1. [ ] Below the `START HOTSPOT` button, it says that `5GHz Wi-Fi is supported`.
1. Press the `START HOTSPOT` button
1. [ ] A QR code for a Wi-Fi appears
1. [ ] The Wi-Fi's name starts with `DIRECT-`
1. [ ] Below the `START HOTSPOT` button, it says `Hotspot started` and there's this text behind: **[no text]**
1. With a second phone I was able to connect to this Wi-Fi by
1. [ ] Scanning the QR code with a reader app
1. [ ] Entering the Wi-Fi data manually in the phone's Wi-Fi settings
1. Once the second phone is connected, press the `PEER CONNECTED` button
1. [ ] The app shows `http://192.168.49.1:9999` at the bottom
1. Press the menu/overflow icon and select `Network interfaces`
1. [ ] A new page shows text that includes the line `p2p0: /192.168.49.1`
1. Press the back button to come back to the (second) QR code screen
1. I was able to visit the shown site with the second phone by
1. [ ] Scanning the QR code with a reader app
1. [ ] Entering the link manually in my browser app
1. [ ] I could not visit this site
1. [ ] I could download the app on the second phone
1. [ ] I could install and open the app on the second phone
1. [ ] The second phone stayed connected to the first phone's Wi-Fi and I did not need to reconnect
1. While still connected to the first phone's Wi-Fi, go to system settings on the second phone.
* Open Wi-Fi settings and select the first phone's Wi-Fi.
* Try to find the `Frequency` (e.g. `5 GHz`) the Wi-Fi is using and write it down here: **[frequency]**
1. [ ] Bonus step: I could repeat the process by switching phones and it works the same or different in what aspect?
```
You can see how this will look like below or when using the "Preview" tab in your response.
Subtask of #1992Install via Bluetooth or Wi-FiTorsten GroteTorsten Grote2021-07-31https://code.briarproject.org/briar/briar/-/issues/1999Android 11 - possible to connect with nearby contact without the location per...2021-07-06T10:03:22ZIvanaAndroid 11 - possible to connect with nearby contact without the location permission - after a dirty shutdownSteps to reproduce:
Fresh install of Briar on Android 11 device (PIxel 2)(Bulid of 15.4, githash 2ddb7b...)
Go to settings > privacy > permissions manager > camera and verify that the Briar access to camera is denied.
Go to settings >...Steps to reproduce:
Fresh install of Briar on Android 11 device (PIxel 2)(Bulid of 15.4, githash 2ddb7b...)
Go to settings > privacy > permissions manager > camera and verify that the Briar access to camera is denied.
Go to settings > privacy > permissions manager > location and verify that the Briar access to location is denied.
1. Log into Briar app.
2. Tap on + to add a nearby contact
3. Tap continue when prompted
4. A pop-up dialog asks for user's permission to use the camera. Options are: Allow while using the app, Only this time, and Deny. User choses deny.
5. A pop-up dialog asks for user's permission to use the location. Options are: Allow while using the app, Only this time, and Deny. User choses deny.
6. A message comes up: "To scan the QR code, briar needs access to the samera. To discover bluetooth devices, Briar needs to access your location. Briar does not store your location or share it with anyone" User taps the button 'Continue'
7. Popup dialogs come up again and ask the user's permission... User selects deny again (for both camera and location user had the same options on dialogues as in step 5)
8. A message titled 'Camera permission' comes up and says this: "You have denied access to the camera, but adding contacts requires using the camera. Please consider granting access". User has options to Cancel or OK.
9. User taps OK
10. This action takes the user to the App info screen for Briar app. User goes to permissions > camera and gives the Briar app acess to camera by chosing 'allow while in use'
11. User goes to permissions > location and gives the Briar app acess to location by chosing 'allow while in use'.
12. Before leaving the previous screen, User then changes their mind and decides to deny Briar access to location- they set Location to denied.
13. User navigates back to Briar by tapping the back button several times
14. User is logged out of Briar
15. User logs back in.
Expected results:
- User should be shown the initial Briar screen (Contacts) and should be able to restart the process of creating nearby contacts?
Actual results:
- The first screen the user sees is: the info screen that explains to user how to scan the QR codes. User taps Continue.
- The previsouly started process of creating the nearby contact (which was started before the logout, in step 2 above) continues successfully, the QR code of another device can be scanned and contact created.
- The location setting for Briar app in privacy > permissions manager > Location = Denied for Briar app.
Question: Is the workflow as described in actual results correct?Adapt to changes in the Android platformIvanaIvana2021-04-30https://code.briarproject.org/briar/briar/-/issues/2000Android 11 - 'Ask every time' - should the user be asked to give permissions ...2021-07-06T10:03:14ZIvanaAndroid 11 - 'Ask every time' - should the user be asked to give permissions for every new contact?When giving permissions for camera and location during the creation of a new nearby contact, user is given three choices in dialog popups: Allow while in use, Just this time, and Deny.
If the user select 'Just this time' - what does th...When giving permissions for camera and location during the creation of a new nearby contact, user is given three choices in dialog popups: Allow while in use, Just this time, and Deny.
If the user select 'Just this time' - what does that mean? Should the user be asked to grant permissions for Briar to access their camera or location every time they try to create a neaby contact? Or not?
in Pixel2, Android 11, user is not asked it every time.
Steps to reproduce:
precoditions: Briar is denied access to location and camera.
1. Tap + to create new nearby contact
2. Tap continue
3. Dialog/popup comes up and asks the user to grant permission for Briar to access their camera. User selects Just this time.
4. 3. Dialog/popup comes up and asks the user to grant permission for Briar to access their location. User selects Just this time.
5. User continues the process and creates a nearby contact.
6. User then starts a new process to create another neaby contact.
7. User taps continue.
Expected results:
- User expects to be asked again to give Briar permission to access the camera and location.
Actual results:
- User is not asked for their permission, instead, after tapping Continue, user is shown a message: your device will be visible to other bluetooth devices during 120 seconds and the options are OK and cancel.
- User taps OK
- the process can be completed successfully.
Question: Should user be asked to give permission for Briar to access their camera and location every time the app needs to do it? (ie for creation of every new nearby contact?)Adapt to changes in the Android platform2021-04-30https://code.briarproject.org/briar/briar/-/issues/2001Android 10 - 'Deny' and 'Deny and don't ask again' workflow2022-02-25T15:02:15ZIvanaAndroid 10 - 'Deny' and 'Deny and don't ask again' workflowFresh installation of Briar (15.4 githash
Steps:
1. In permission manager for apps, Briar access is set to denied for both camera and location.
2. IN Briar, user taps on + to create a new nearby contact
3. User taps continue.
4. Pop...Fresh installation of Briar (15.4 githash
Steps:
1. In permission manager for apps, Briar access is set to denied for both camera and location.
2. IN Briar, user taps on + to create a new nearby contact
3. User taps continue.
4. Popup comes up and asks the user to grant Briar permissions to access camera. Options are Allow or Deny.
5. Popup comes up and asks the user to grant permission for Briar to access their location - Option are Allow only whle using the app, and Deny.
6. Use denies permission for location.
7. Location permission info box comes up and says this: To discover bluetooth devices, Briar needs permission to access your location. Briar does not store your location or share it with anyone.User taps continue.
8. A popup comes up and request the access once again. Options now are: Allow only while using the app, Deny, and Deny and don't ask again.
9. User selects the 'Deny and don't ask again'
10. A message comes up that says: "Location permission - You hve denied access to your location, but Briar needs this permission to discover bluetooth devices. Please consider granting the access."
11. User taps OK
12. user is taken to the app permissions manager, where they set the Briar permission for location to 'Allow while using the app'
13. User navigates back to Briar and continues the process
14. The message 'your device will be visible to other devices during 120 seconds' shows. User taps OK
15. QR code shows and contact can be created
16 For The next contact user is not asked the permission, because in the step 12 they gave Briar permission to use their location... so no need to ask again.
Is this correct? And does it need any further work?https://code.briarproject.org/briar/briar/-/issues/2002Android 11 PIxel2 - 'Ask every time' - workflow user asked for permission in...2021-07-06T10:03:06ZIvanaAndroid 11 PIxel2 - 'Ask every time' - workflow user asked for permission in popup after they just selected 'ask every time' on deviceScenario: When user is taken to the pages Briar app settings on their device - they decide to grant Briar permission to access the camera and location by selecting 'Ask every time'. They then navigate back to Briar and are given the dial...Scenario: When user is taken to the pages Briar app settings on their device - they decide to grant Briar permission to access the camera and location by selecting 'Ask every time'. They then navigate back to Briar and are given the dialog/popup again with the same question to giv Briar permissions to access their location and camera again - They have just done that, so they shoudln't be asked it again.
Steps to reproduce:
Preconditions: Briar's access to location and camera are denied.
1. Start a new process of creating a nearby contact
2. Tap continue.
3. Popup asks the user to grant Briar permissions to access the camera and location.
4. User denies both.
5. User gets this message: you have denied access to the camera but adding contacts requires using the camera. Please consider granting access. User taps OK.
6. User is then taken to the Briar app settings to grant the Briar access to their camera.
7. User selects the 'Ask every time' option.
8. User navigates back to Briar by tapping the back button.
9. Briar create nearby contacts info screen shows, and user tap Continue
10. A popup comes up and asks the user to grant Briar access to their camera.
Expected results:
- The popup should nto be asking the user to grant permissions after their have just done so.
Actual result:
- A popup comes up and asks the user to grant Briar access to their camera.
- After granting the camera access once more, the user can continue and create the nearby contact OKAdapt to changes in the Android platform2021-04-30https://code.briarproject.org/briar/briar/-/issues/2003Check for API/behaviour changes in Android 12 that could affect Briar2022-10-31T14:20:43ZakwizgranCheck for API/behaviour changes in Android 12 that could affect Briar* [x] [Safer component exporting](https://developer.android.com/about/versions/12/behavior-changes-12#exported) activities, services, or broadcast receivers that use intent filters must explicitly declare the `android:exported` attribut...* [x] [Safer component exporting](https://developer.android.com/about/versions/12/behavior-changes-12#exported) activities, services, or broadcast receivers that use intent filters must explicitly declare the `android:exported` attribute
* [x] [Pending intents mutability](https://developer.android.com/about/versions/12/behavior-changes-12#pending-intent-mutability)
* [x] [Unsafe intent launches](https://developer.android.com/about/versions/12/behavior-changes-12#unsafe-intent-launches)
* [x] `allowBackup="false"` doesn’t disable D2D transfers for the app. https://developer.android.com/about/versions/12/backup-restore
* [x] `SCHEDULE_EXACT_ALARM` permission https://developer.android.com/about/versions/12/behavior-changes-12#exact-alarm-permission
* [x] Restrictive App Standby bucket https://developer.android.com/about/versions/12/behavior-changes-all#restrictive-app-standby-bucket
* [x] [`BLUETOOTH_CONNECT`](https://developer.android.com/reference/android/Manifest.permission.html#BLUETOOTH_CONNECT) and [`BLUETOOTH_SCAN`](https://developer.android.com/reference/android/Manifest.permission.html#BLUETOOTH_SCAN) permissions
* [x] [`usesPermissionFlags`](https://developer.android.com/reference/android/R.attr.html#usesPermissionFlags) and `neverForLocation`
* [x] Location permission dialog
* [x] Splash screen
* [x] Camera notification
* [x] Multi-window mode
* [x] Camera preview on large screensAndroid 1.4Torsten GroteTorsten Grote2022-11-01https://code.briarproject.org/briar/briar/-/issues/2004Use different Tor ports for debug builds2021-11-04T11:01:28ZakwizgranUse different Tor ports for debug buildsConfigure Tor to use different SOCKS and control ports when running a debug build, so that we can run debug and release builds on the same device without connectivity issues.Configure Tor to use different SOCKS and control ports when running a debug build, so that we can run debug and release builds on the same device without connectivity issues.Android 1.4SebastianSebastianhttps://code.briarproject.org/briar/briar/-/issues/2005Connect Via Bluetooth shows error even if connection succeeds2021-07-06T10:00:49ZTorsten GroteConnect Via Bluetooth shows error even if connection succeedsIt can happen that we tell the user that no connection could be made even if it could be made.
It might help to show the error toast only after some delay.It can happen that we tell the user that no connection could be made even if it could be made.
It might help to show the error toast only after some delay.Adapt to changes in the Android platformIvanaIvana2021-04-30https://code.briarproject.org/briar/briar/-/issues/2009Give instructions during setup for protecting app from Xiaomi/Redmi power man...2021-07-06T10:02:52ZakwizgranGive instructions during setup for protecting app from Xiaomi/Redmi power managementWhile working on #1743 I found that the [Snooze app](https://code.briarproject.org/akwizgran/snooze) was killed when running overnight on the Redmi Note 7. [Locking the app to the recent apps list](https://code.briarproject.org/briar/bri...While working on #1743 I found that the [Snooze app](https://code.briarproject.org/akwizgran/snooze) was killed when running overnight on the Redmi Note 7. [Locking the app to the recent apps list](https://code.briarproject.org/briar/briar/-/issues/1743#note_49341) prevented this from happening. We should recommend this during account setup, as we do for Huawei's protected apps and app launch settings.
(The user can also [change the app's background setting to "No restrictions"](https://code.briarproject.org/briar/briar/-/issues/1743#note_49269), which is recommended in various places but didn't help in the case of the Snooze app.)Adapt to changes in the Android platformIvanaIvana2021-04-30https://code.briarproject.org/briar/briar/-/issues/2011App offline sharing UX2021-10-29T11:45:23ZElio Qoshielio@ura.designApp offline sharing UX![All_Screens](/uploads/bd9eb2dd5bbb58e2287fd8e9a036f12f/All_Screens.png)
I drafted an initial UX proposal for sharing an app offline.
Figma specs: https://www.figma.com/file/NgBKOW1GcLk1NXzHQBcYdY/Offline-App-Installer-Sharing?node-id=...![All_Screens](/uploads/bd9eb2dd5bbb58e2287fd8e9a036f12f/All_Screens.png)
I drafted an initial UX proposal for sharing an app offline.
Figma specs: https://www.figma.com/file/NgBKOW1GcLk1NXzHQBcYdY/Offline-App-Installer-Sharing?node-id=1%3A5491
Considerations:
- This doesn't take into account that we are automatically detecting if a fellow peer connects to the hotspot. The hosting user needs to manually confirm this.
- There should be plenty of space for instructions and help text, as well as a separate help option via the dropdown menu if needed. The texts are of course only placeholders, though their I included their notion, more or less.
- An illustration should make the process feel more engaging (like the start of onboarding).
- Not sure about the steppers on the bottom. Open to hear what you think.Install via Bluetooth or Wi-FiElio Qoshielio@ura.designElio Qoshielio@ura.design2021-07-31https://code.briarproject.org/briar/briar/-/issues/2012Special bubbles not updating correctly when messages self-destruct2021-07-06T09:56:29ZSebastianSpecial bubbles not updating correctly when messages self-destructSelf-destructing messagesIvanaIvana2021-01-31https://code.briarproject.org/briar/briar/-/issues/2013Add database method for getting amount of data to sync2021-05-10T12:00:48ZakwizgranAdd database method for getting amount of data to syncSubtask of #1802Subtask of #1802Transfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2014Update MessagesSentEvent to include amount of data sent2021-05-10T12:00:41ZakwizgranUpdate MessagesSentEvent to include amount of data sentSubtask of #1802Subtask of #1802Transfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31