briar issueshttps://code.briarproject.org/briar/briar/-/issues2020-11-15T16:34:24Zhttps://code.briarproject.org/briar/briar/-/issues/1709CameraException: No camera on LineageOS2020-11-15T16:34:24ZakwizgranCameraException: No camera on LineageOS* Android version: 9
* Phone model: OnePlus 3T (reported by user - ACRA says unknown)
* Briar version: 1.2.4 (75dfa80)
* User feedback: "Camera error when adding nearby contact. Lineage 16, OnePlus 3T, microG."
Log:
```
11-21 18:59:15.3...* Android version: 9
* Phone model: OnePlus 3T (reported by user - ACRA says unknown)
* Briar version: 1.2.4 (75dfa80)
* User feedback: "Camera error when adding nearby contact. Lineage 16, OnePlus 3T, microG."
Log:
```
11-21 18:59:15.386 I/CameraView: Opening camera
11-21 18:59:15.391 W/KeyAgreementFragment: org.briarproject.briar.android.keyagreement.CameraException: No camera
org.briarproject.briar.android.keyagreement.CameraException: No camera
at org.briarproject.briar.android.keyagreement.CameraView.start(CameraView.java:106)
at org.briarproject.briar.android.keyagreement.KeyAgreementFragment.onStart(KeyAgreementFragment.java:149)
at android.support.v4.app.Fragment.performStart(Fragment.java:2477)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1494)
at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1784)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1852)
at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:802)
at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2625)
at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2411)
at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2366)
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:2273)
at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:733)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6718)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
```
The phone has front- and back-facing cameras.https://code.briarproject.org/briar/briar/-/issues/1710Wrong camera used for adding contacts on Iconia tablet2020-11-15T16:33:49ZakwizgranWrong camera used for adding contacts on Iconia tablet* Android version: 6.0.1
* Phone model: Android-x86 ICONIA W700P (cm_android_x86_64)
* Briar version: 1.1.6 (4d26628)
* User feedback: "Front camera reversed on any app. Please add option to switch camera. I'm unable to add contacts on t...* Android version: 6.0.1
* Phone model: Android-x86 ICONIA W700P (cm_android_x86_64)
* Briar version: 1.1.6 (4d26628)
* User feedback: "Front camera reversed on any app. Please add option to switch camera. I'm unable to add contacts on this device."
Edited log:
```
10-14 21:44:21.325 I/CameraView: Opening camera
10-14 21:44:21.325 I/CameraView: Using back-facing camera
10-14 21:44:21.339 I/CameraView: Screen rotation 0 degrees, camera orientation 0 degrees
10-14 21:44:21.339 I/CameraView: Scene modes: [auto]
10-14 21:44:21.339 I/CameraView: Focus modes: [fixed]
10-14 21:44:21.339 I/CameraView: Video stabilisation enabled: false
10-14 21:44:21.339 I/CameraView: Scene mode: auto
10-14 21:44:21.339 I/CameraView: Focus mode: fixed
10-14 21:44:21.339 I/CameraView: Flash mode: off
10-14 21:44:21.339 I/CameraView: Preview size: 1280x720
...
10-14 21:44:21.379 I/CameraView: Surface created
10-14 21:44:21.379 I/CameraView: Surface changed: 1920x944
10-14 21:44:21.379 I/CameraView: Size 160x120, stretch 1.5254238, zoom 26.041666, score 0.025173334
10-14 21:44:21.379 I/CameraView: Size 176x144, stretch 1.6640986, zoom 19.728535, score 0.030459736
10-14 21:44:21.379 I/CameraView: Size 240x160, stretch 1.3559322, zoom 13.020833, score 0.056640003
10-14 21:44:21.379 I/CameraView: Size 320x200, stretch 1.2711865, zoom 7.8125, score 0.10069333
10-14 21:44:21.379 I/CameraView: Size 320x240, stretch 1.5254238, zoom 6.5104165, score 0.10069334
10-14 21:44:21.379 I/CameraView: Size 352x288, stretch 1.6640986, zoom 4.9321337, score 0.12183894
10-14 21:44:21.379 I/CameraView: Size 432x320, stretch 1.5065913, zoom 3.616898, score 0.18351361
10-14 21:44:21.379 I/CameraView: Size 480x320, stretch 1.3559322, zoom 3.2552083, score 0.22656001
10-14 21:44:21.379 I/CameraView: Size 640x480, stretch 1.5254238, zoom 1.6276041, score 0.40277335
10-14 21:44:21.379 I/CameraView: Size 1280x720, stretch 1.1440678, zoom 1.8432, score 0.47421557
10-14 21:44:21.379 I/CameraView: Best size 1280x720
10-14 21:44:21.380 I/CameraView: Video stabilisation enabled: false
10-14 21:44:21.380 I/CameraView: Scene mode: auto
10-14 21:44:21.380 I/CameraView: Focus mode: fixed
10-14 21:44:21.380 I/CameraView: Flash mode: off
10-14 21:44:21.380 I/CameraView: Preview size: 1280x720
10-14 21:44:21.380 I/CameraView: Starting preview
```https://code.briarproject.org/briar/briar/-/issues/1711PinePhone, linux native app.2020-04-02T10:01:52ZVladislavPinePhone, linux native app.Hi,
I think would be nice to have Briar on PinePhone, to be in close with FOSS community's, and FOSS devices.
Don't know if it is a good idea to develop it now, because PinePhone is not in production stage yet.
But, may be, that is a rea...Hi,
I think would be nice to have Briar on PinePhone, to be in close with FOSS community's, and FOSS devices.
Don't know if it is a good idea to develop it now, because PinePhone is not in production stage yet.
But, may be, that is a reason to develop it in this early stage.
Thank you, for everything you do for the world!https://code.briarproject.org/briar/briar/-/issues/1712Detect Bluetooth connection limit2022-02-25T15:09:28ZakwizgranDetect Bluetooth connection limitDifferent devices can support different numbers of simultaneous Bluetooth connections. Since we don't have a way to determine a priori how many connections a given device can support, we should try to detect the device's limit and stay b...Different devices can support different numbers of simultaneous Bluetooth connections. Since we don't have a way to determine a priori how many connections a given device can support, we should try to detect the device's limit and stay below it.
Related to #1130.akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1713Computer client?2020-03-16T11:32:23ZSnowCodeComputer client?Hello!
I am very interested in this project, and I was wondering if a computer (Linux) client will arrive one day? I am using Anbox to get it on my computer but Anbox is far from perfect. Is there already implementation of the Briar prot...Hello!
I am very interested in this project, and I was wondering if a computer (Linux) client will arrive one day? I am using Anbox to get it on my computer but Anbox is far from perfect. Is there already implementation of the Briar protocol online or on laptop? Will this arrive one day?https://code.briarproject.org/briar/briar/-/issues/1714Upgrade to Tor 0.3.5.102020-11-16T10:36:56ZakwizgranUpgrade to Tor 0.3.5.10Tor 0.3.5.10 fixes a CPU exhaustion attack that directory servers can launch against clients and hidden services. (Relays are also vulnerable, but we don't run relays.)Tor 0.3.5.10 fixes a CPU exhaustion attack that directory servers can launch against clients and hidden services. (Relays are also vulnerable, but we don't run relays.)Android 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1715Support for Disappearing/Self-destructing messages like in Signal/Keybase2020-03-23T11:52:46ZRjyork FlrenSupport for Disappearing/Self-destructing messages like in Signal/KeybaseIs there any plan on adding this feature? Signal and Keybase offer this system where you can set a specific lifespan of messages and after the lifespan is up, they are deleted/destructed from all systems of all users.Is there any plan on adding this feature? Signal and Keybase offer this system where you can set a specific lifespan of messages and after the lifespan is up, they are deleted/destructed from all systems of all users.https://code.briarproject.org/briar/briar/-/issues/1716Need to tap "Use Password" twice in unlock screen2020-09-04T12:08:04ZakwizgranNeed to tap "Use Password" twice in unlock screenAndroid version: 9
User feedback:
> When the app is locked on device with registered biometrics, it shows two fingerprint dialogs when clicking "Use Password", instead of transitioning to Password dialog. First it opens BiometricPrompt,...Android version: 9
User feedback:
> When the app is locked on device with registered biometrics, it shows two fingerprint dialogs when clicking "Use Password", instead of transitioning to Password dialog. First it opens BiometricPrompt, then KeyguardManager which again shows the fingerprint dialog. The end result is that user need to tap twice on "Use Password" to use the password option. If BiometricPrompt is removed/disabled from UnlockActivity there are no issues. Further, if device does not have password but PIN instead, it shows on first dialog "Use Password" then "Use PIN" which is correct.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1717Window content is visible before UnlockActivity is shown on Android 11 dev pr...2020-11-15T16:05:04ZakwizgranWindow content is visible before UnlockActivity is shown on Android 11 dev previewAndroid version: 11 developer preview 2
User feedback:
> Opening NavDrawerActivity leaks visual content (contact list, time of the messages etc) for ≤1s before UnlockActivity is shown. Same result when the app is locked, and tapping a n...Android version: 11 developer preview 2
User feedback:
> Opening NavDrawerActivity leaks visual content (contact list, time of the messages etc) for ≤1s before UnlockActivity is shown. Same result when the app is locked, and tapping a notification to unlock the app. Interesting that this behaviour does not exist on AOSP R version at the moment, but on Google Pixel factory R versions.https://code.briarproject.org/briar/briar/-/issues/1718Tor doesn't start with targetSdkVersion set to 292020-09-04T10:18:06ZakwizgranTor doesn't start with targetSdkVersion set to 29As expected, Android's restrictions on launching processes are getting tighter. Setting the targetSdkVersion to 29 prevents Tor from starting on the API 29 emulator:
```
2020-03-30 17:46:55.672 7943-8057/org.briarproject.briar.android.d...As expected, Android's restrictions on launching processes are getting tighter. Setting the targetSdkVersion to 29 prevents Tor from starting on the API 29 emulator:
```
2020-03-30 17:46:55.672 7943-8057/org.briarproject.briar.android.debug I/TorPlugin: Starting Tor
2020-03-30 17:46:55.680 7943-8057/org.briarproject.briar.android.debug W/PluginManagerImpl: org.briarproject.bramble.api.plugin.PluginException: java.io.IOException: Cannot run program "/data/user/0/org.briarproject.briar.android.debug/app_tor/tor" (in directory "/data/user/0/org.briarproject.briar.android.debug/app_tor"): error=13, Permission denied
org.briarproject.bramble.api.plugin.PluginException: java.io.IOException: Cannot run program "/data/user/0/org.briarproject.briar.android.debug/app_tor/tor" (in directory "/data/user/0/org.briarproject.briar.android.debug/app_tor"): error=13, Permission denied
at org.briarproject.bramble.plugin.tor.TorPlugin.start(TorPlugin.java:221)
at org.briarproject.bramble.plugin.PluginManagerImpl$PluginStarter.run(PluginManagerImpl.java:220)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: java.io.IOException: Cannot run program "/data/user/0/org.briarproject.briar.android.debug/app_tor/tor" (in directory "/data/user/0/org.briarproject.briar.android.debug/app_tor"): error=13, Permission denied
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1050)
at org.briarproject.bramble.plugin.tor.TorPlugin.start(TorPlugin.java:219)
at org.briarproject.bramble.plugin.PluginManagerImpl$PluginStarter.run(PluginManagerImpl.java:220)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: java.io.IOException: error=13, Permission denied
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:133)
at java.lang.ProcessImpl.start(ProcessImpl.java:141)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
at org.briarproject.bramble.plugin.tor.TorPlugin.start(TorPlugin.java:219)
at org.briarproject.bramble.plugin.PluginManagerImpl$PluginStarter.run(PluginManagerImpl.java:220)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
```
Tor starts OK with the current targetSdkVersion of 28. Same results on the API 30 emulator.https://code.briarproject.org/briar/briar/-/issues/1719Briar + "Scrammbled Exif"2020-11-15T16:02:42ZParanoid Computing Inc.Briar + "Scrammbled Exif"Hello everyone!
At first - sorry for my poor and awfull english - is it not my native language. So i have a question for maintainers of Briar? What do you think about implementing (on core-level or like a microsevice) in Briar functional...Hello everyone!
At first - sorry for my poor and awfull english - is it not my native language. So i have a question for maintainers of Briar? What do you think about implementing (on core-level or like a microsevice) in Briar functionality of "Scrammbled Exif" from F-Droid? This (imho) small tiny and fast .apk able to convert original picture metadata in a useless junk, when users share some stuff. So why we do not use this finctionality into app core?
Thank for reading.https://code.briarproject.org/briar/briar/-/issues/1720ACRA 4.11 crashes during init with targetSdkVersion set to R (30)2021-01-06T12:31:44ZakwizgranACRA 4.11 crashes during init with targetSdkVersion set to R (30)Looks like we'll need to migrate to ACRA 5 before targetting API 30. The crash doesn't happen on the API 30 emulator with targetSdkVersion set to 29, so this isn't urgent.
```
2020-03-31 11:02:33.685 25167-25167/org.briarproject.briar.a...Looks like we'll need to migrate to ACRA 5 before targetting API 30. The crash doesn't happen on the API 30 emulator with targetSdkVersion set to 29, so this isn't urgent.
```
2020-03-31 11:02:33.685 25167-25167/org.briarproject.briar.android.debug E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.briarproject.briar.android.debug, PID: 25167
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/android/internal/util/Predicate;
at org.acra.util.IOUtils.streamToString(IOUtils.java:84)
at org.acra.ACRA.getCurrentProcessName(ACRA.java:303)
at org.acra.ACRA.isACRASenderServiceProcess(ACRA.java:294)
at org.acra.ACRA.init(ACRA.java:210)
at org.acra.ACRA.init(ACRA.java:173)
at org.acra.ACRA.init(ACRA.java:157)
at org.acra.ACRA.init(ACRA.java:140)
at org.briarproject.briar.android.BriarApplicationImpl.attachBaseContext(BriarApplicationImpl.java:100)
at android.app.Application.attach(Application.java:351)
at android.app.Instrumentation.newApplication(Instrumentation.java:1159)
at android.app.LoadedApk.makeApplication(LoadedApk.java:1203)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6521)
at android.app.ActivityThread.access$1300(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1885)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7464)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:955)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.android.internal.util.Predicate" on path: DexPathList[[zip file "/data/app/~~g6kWDR95CtejUwuMSRctEg==/org.briarproject.briar.android.debug-C8FXbrMV6GsjIoTVns77-A==/base.apk"],nativeLibraryDirectories=[/data/app/~~g6kWDR95CtejUwuMSRctEg==/org.briarproject.briar.android.debug-C8FXbrMV6GsjIoTVns77-A==/lib/x86, /system/lib, /system_ext/lib, /product/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:202)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at org.acra.util.IOUtils.streamToString(IOUtils.java:84)
at org.acra.ACRA.getCurrentProcessName(ACRA.java:303)
at org.acra.ACRA.isACRASenderServiceProcess(ACRA.java:294)
at org.acra.ACRA.init(ACRA.java:210)
at org.acra.ACRA.init(ACRA.java:173)
at org.acra.ACRA.init(ACRA.java:157)
at org.acra.ACRA.init(ACRA.java:140)
at org.briarproject.briar.android.BriarApplicationImpl.attachBaseContext(BriarApplicationImpl.java:100)
at android.app.Application.attach(Application.java:351)
at android.app.Instrumentation.newApplication(Instrumentation.java:1159)
at android.app.LoadedApk.makeApplication(LoadedApk.java:1203)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6521)
at android.app.ActivityThread.access$1300(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1885)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7464)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:955)
```Adapt to changes in the Android platformTorsten GroteTorsten Grote2021-04-30https://code.briarproject.org/briar/briar/-/issues/1721Request ACCESS_FINE_LOCATION for Bluetooth discovery2020-08-14T11:44:00ZakwizgranRequest ACCESS_FINE_LOCATION for Bluetooth discoveryBefore raising our target API version to 29 we'll need to request ACCESS_FINE_LOCATION rather than ACCESS_COARSE_LOCATION for Bluetooth discovery.
https://developer.android.com/guide/topics/connectivity/bluetooth#Permissions
Related to...Before raising our target API version to 29 we'll need to request ACCESS_FINE_LOCATION rather than ACCESS_COARSE_LOCATION for Bluetooth discovery.
https://developer.android.com/guide/topics/connectivity/bluetooth#Permissions
Related to #1546.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1722Include last private chat activity in list of contacts2020-11-16T11:15:27ZNicoInclude last private chat activity in list of contactsIn order to sort the contact list in Briar GTK chronologically (https://code.briarproject.org/briar/briar-gtk/issues/4), I thought of adding a `lastChatActivity` key to the [list of contacts exposed by Briar Headless](https://code.briarp...In order to sort the contact list in Briar GTK chronologically (https://code.briarproject.org/briar/briar-gtk/issues/4), I thought of adding a `lastChatActivity` key to the [list of contacts exposed by Briar Headless](https://code.briarproject.org/briar/briar/blob/84584d4d3c3028082c99dbbd10184a3ddb208daa/briar-headless/README.md#listing-all-contacts). The value of this key would be the timestamp of the last message in the private chat with that contact.
I deliberately called it `lastChatActivity` to leave `lastActivity` available for other purposed, i.e. the contact's last message or the last time we were connected to them.NicoNicohttps://code.briarproject.org/briar/briar/-/issues/1723User testing for transport toggles2020-08-14T09:23:31ZakwizgranUser testing for transport togglesRenata GegajRenata Gegajhttps://code.briarproject.org/briar/briar/-/issues/1724For more security spongycastle -> bouncycastle2021-08-31T14:04:03ZNeustradamusFor more security spongycastle -> bouncycastleFor more security, can you change old spongycastle (based on old bouncycastle) to bouncycastle?
- https://www.bouncycastle.org/
- https://www.bouncycastle.org/releasenotes.html
- http://www.bouncycastle.org/latest_releases.html
- https:/...For more security, can you change old spongycastle (based on old bouncycastle) to bouncycastle?
- https://www.bouncycastle.org/
- https://www.bouncycastle.org/releasenotes.html
- http://www.bouncycastle.org/latest_releases.html
- https://www.cvedetails.com/vulnerability-list/vendor_id-7637/Bouncycastle.htmlAndroid 1.3akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1725Groups and Forums are not scrolling to latest message automatically2021-01-13T11:14:34ZbafoobarGroups and Forums are not scrolling to latest message automaticallyRelated to #1589 and possible duplicate of #1192
Whenever I open a forum or a private group, I have to scroll to the very end to see the most recent messages. I dont think that is expected behaviour or is it? If yes, could you think ab...Related to #1589 and possible duplicate of #1192
Whenever I open a forum or a private group, I have to scroll to the very end to see the most recent messages. I dont think that is expected behaviour or is it? If yes, could you think about changing it? It works as expected in the private chats.https://code.briarproject.org/briar/briar/-/issues/1726Unable to "mark" text in private messages2020-11-15T15:56:26ZbafoobarUnable to "mark" text in private messagesI want to copy text from messages. I can long-tap on text on blogs, group and forum messages, but I am unable to do that on private messages. It only marks the message as a whole to delete it. In combination with beeing unable to click o...I want to copy text from messages. I can long-tap on text on blogs, group and forum messages, but I am unable to do that on private messages. It only marks the message as a whole to delete it. In combination with beeing unable to click on links, that makes it a very annoying issue.https://code.briarproject.org/briar/briar/-/issues/1727Is orbot required?2022-02-25T15:07:42ZJay BeeIs orbot required?Hello. You write that messages over internet are exchanged over tor. Is orbot needed for that? Can you clarify please?Hello. You write that messages over internet are exchanged over tor. Is orbot needed for that? Can you clarify please?https://code.briarproject.org/briar/briar/-/issues/1728Can Android user of Briar communicate with owner of iOS device?2022-02-25T15:07:28ZJay BeeCan Android user of Briar communicate with owner of iOS device?I have not found any Briar version for iPhone, but maybe the protocol allows other client?I have not found any Briar version for iPhone, but maybe the protocol allows other client?https://code.briarproject.org/briar/briar/-/issues/1729Android OS can capture keys?2022-02-25T15:07:10ZJay BeeAndroid OS can capture keys?It is my understanding that every keystroke goes to OS over API and then it goes to Briar app from OS over another API. So google can capture anything what is written by separate keyboard application. For security reasons, would it be be...It is my understanding that every keystroke goes to OS over API and then it goes to Briar app from OS over another API. So google can capture anything what is written by separate keyboard application. For security reasons, would it be better to include own keyboard in the application? There are few opensource keyboards, AnySoftKey, Hacker keyboard...https://code.briarproject.org/briar/briar/-/issues/1730Interconnect all users2020-05-30T06:13:25ZVladislavInterconnect all usersWhy not interconnect all Briar users? Just in sense of every user, become an invisible node, like TOR network is.
Wont that make network stronger? more stable, accesable, omnipresent?
Set a limit for number of simultanious connections;...Why not interconnect all Briar users? Just in sense of every user, become an invisible node, like TOR network is.
Wont that make network stronger? more stable, accesable, omnipresent?
Set a limit for number of simultanious connections;
Give priority to contacts;
Make this feature optional.https://code.briarproject.org/briar/briar/-/issues/1731Asynchronous sync not working2020-11-15T15:54:41ZliofmrAsynchronous sync not workingHi, I tried to test the behavior like described on this image of the official briar website :
![briar_diagram](/uploads/c88b9052c156e2043707b7e892de367e/briar_diagram.png)
But it's not working. I mean, I created a little network with 3...Hi, I tried to test the behavior like described on this image of the official briar website :
![briar_diagram](/uploads/c88b9052c156e2043707b7e892de367e/briar_diagram.png)
But it's not working. I mean, I created a little network with 3 phones not exactly like the picture but I simplified it. I will work with A, B and C phones (not the same as the picture, forgot this config). When the 3 A, B and C phones are connected to the network (wifi, bluetooth or internet 3G), it's working, everybody recieve all blog posts.
BUT, if C disconnect, and A create a blog post, then first, B will recieve it.
THEN, if I disconnect A, and connect C, the blog post is not transmitted.
The purpose is to see if B can act as a the C phone on the official picture I shared. May be I did something wrong. Please do you have an idea ? Is it a bug or non-implemented yet feature or a bug ?
Thank you for this app, if it could work like in the picture it would be the best human made app of the century !!https://code.briarproject.org/briar/briar/-/issues/1732Unable to add contact2020-11-15T15:53:14ZacherrUnable to add contactThe latest version, one the mobile phone end A and another mobile phone B, A is mobile 4 G network, B is the wifi network, both sides add each other as contact person, which prompts that A have no network connection, B are waiting for A ...The latest version, one the mobile phone end A and another mobile phone B, A is mobile 4 G network, B is the wifi network, both sides add each other as contact person, which prompts that A have no network connection, B are waiting for A to log in. They're all the same. They' re not scanned successfully using the QR code, suggesting that the latest version is not recognizedhttps://code.briarproject.org/briar/briar/-/issues/1733Publish Briar in more app stores2020-05-26T09:24:57ZakwizgranPublish Briar in more app storesA user asked for Briar to be published in the following app stores:
Huawei AppGallery
https://consumer.huawei.com/en/mobileservices/appgallery/
https://developer.huawei.com/consumer/en/appgallery
G-Droid
https://gitlab.com/gdr...A user asked for Briar to be published in the following app stores:
Huawei AppGallery
https://consumer.huawei.com/en/mobileservices/appgallery/
https://developer.huawei.com/consumer/en/appgallery
G-Droid
https://gitlab.com/gdroid/gdroidclient/
https://mastodon.technology/@gdroid
Galaxy Store
https://www.samsung.com/uk/apps/galaxy-store/
Amazon Appstore
https://www.amazon.com/gp/mas/get/android
The Global Developer Service Alliance (GDSA)
https://www.gdsa.com/en
OPPO APP Market
https://developers.oppomobile.com/
https://store.oppomobile.com/https://code.briarproject.org/briar/briar/-/issues/1734Official Briar community on Briar?2020-11-15T15:51:03ZH. ToothOfficial Briar community on Briar?I think it would be nice to have an official Briar group or something to test the app.I think it would be nice to have an official Briar group or something to test the app.CleopatraCleopatrahttps://code.briarproject.org/briar/briar/-/issues/1735Contact trust level2020-11-15T15:50:28ZVladislavContact trust levelContact Checkboxes:
1. Allow/disallow connections other than tor (bluetooth, wifi direct)
2. Allow/disallow connection trough friends of this friend ('A' can communicate with D trough C whom trust your friend B, A is not a friend with C)...Contact Checkboxes:
1. Allow/disallow connections other than tor (bluetooth, wifi direct)
2. Allow/disallow connection trough friends of this friend ('A' can communicate with D trough C whom trust your friend B, A is not a friend with C)
That will become something like trusted lookup service, you mentioned here https://code.briarproject.org/briar/briar/issues/1730
3. Allow/disallow connection trough my friends
4. Trust/deep level - max distant friend, max level of friends of friends of friends you allow.https://code.briarproject.org/briar/briar/-/issues/1736Investigate whether library desugaring in Android Studio 4 allows us to upgra...2020-11-15T15:49:34ZakwizgranInvestigate whether library desugaring in Android Studio 4 allows us to upgrade any dependenciesAndroid Studio 4 adds support for certain Java 8+ APIs that aren't natively supported on older versions of Android, which has prevented us from upgrading certain dependencies (eg newer versions of H2 require ThreadLocalRandom). Find out ...Android Studio 4 adds support for certain Java 8+ APIs that aren't natively supported on older versions of Android, which has prevented us from upgrading certain dependencies (eg newer versions of H2 require ThreadLocalRandom). Find out whether upgrading to AS 4 would allow us to upgrade any dependencies.https://code.briarproject.org/briar/briar/-/issues/1737Huawei P8 Lite 2017 enters device idle mode despite doze whitelisting2021-04-30T13:38:14ZakwizgranHuawei P8 Lite 2017 enters device idle mode despite doze whitelistingAfter setting up Briar as normal on the Huawei P8 Lite 2017 (Android 7.0, EMUI 5.0.1) and leaving it running for a few hours, the doze watchdog dialog was shown after unlocking the screen, indicating that the phone entered device idle mo...After setting up Briar as normal on the Huawei P8 Lite 2017 (Android 7.0, EMUI 5.0.1) and leaving it running for a few hours, the doze watchdog dialog was shown after unlocking the screen, indicating that the phone entered device idle mode despite Briar being whitelisted.
![Screenshot_20200602-214120](/uploads/8771b9bbe470ab02575ddfe0221a9656/Screenshot_20200602-214120.png)
![Screenshot_20200602-214132](/uploads/d21e2d865b68342b1a9ae4f5f9319be9/Screenshot_20200602-214132.png)
Wifi and mobile data were turned off, so there was no Tor wake lock keeping the device awake.
After tapping "fix", which prompts to add Briar to the whitelist again, I left the phone idle for more than 24 hours and didn't see the doze watchdog dialog again.
I didn't capture any logs at the time as I was running another experiment. I'll try to reproduce this when the other experiments are finished.https://code.briarproject.org/briar/briar/-/issues/1738Bluetooth stops working on Nokia 3.1 after a few hours2020-11-15T15:48:09ZakwizgranBluetooth stops working on Nokia 3.1 after a few hoursI've been testing some Bluetooth changes on a few devices, which involve turning off wifi and mobile data, connecting the devices via Bluetooth, leaving them running overnight, and seeing which devices are still connected, or able to rec...I've been testing some Bluetooth changes on a few devices, which involve turning off wifi and mobile data, connecting the devices via Bluetooth, leaving them running overnight, and seeing which devices are still connected, or able to reconnect, the next morning.
On several occasions the Nokia 3.1 has lost all its connections and is unable to reconnect until Bluetooth is turned off and on again, at which point it quickly reconnects to the other devices. I need to narrow down the conditions under which this happens (number of other devices, amount of time, etc) to find a workaround.https://code.briarproject.org/briar/briar/-/issues/1739Create Debian Source Package for Briar Headless2020-10-31T12:52:40ZNicoCreate Debian Source Package for Briar HeadlessTo get Briar GTK into Debian (or to at least provide a .deb installation method), we need to create a Debian package for Briar Headless that builds everything from source. !1252 brought at least a binary package.
Related issues:
* https...To get Briar GTK into Debian (or to at least provide a .deb installation method), we need to create a Debian package for Briar Headless that builds everything from source. !1252 brought at least a binary package.
Related issues:
* https://code.briarproject.org/briar/briar-gtk/-/issues/39
* https://code.briarproject.org/briar/python-briar-wrapper/-/issues/14https://code.briarproject.org/briar/briar/-/issues/1740"get involved" page is missing mattermost/matrix.2020-09-10T18:33:27Zsyster"get involved" page is missing mattermost/matrix."get involved" page is missing mattermost/matrix.
Reason why I would find it important to add:
sourceforge (that thing the email list is hosted) is something that people who deeply care about privacy and free software might never join..."get involved" page is missing mattermost/matrix.
Reason why I would find it important to add:
sourceforge (that thing the email list is hosted) is something that people who deeply care about privacy and free software might never join in (some will, others not.)
possible solution:
add link to mattermost/matrixhttps://code.briarproject.org/briar/briar/-/issues/1741sourceforge not respecting privacy and using proprietary software2021-02-04T14:24:19Zsystersourceforge not respecting privacy and using proprietary softwaresourceforge not respecting privacy and using proprietary software
I assume this is known, so I continue starting a discourse for an alternative:
mattermost/matrix is already an alternative. It is used withing the briar development.
B...sourceforge not respecting privacy and using proprietary software
I assume this is known, so I continue starting a discourse for an alternative:
mattermost/matrix is already an alternative. It is used withing the briar development.
But many might prefer having an option to assign for updates via email.
Tails for example is using: https://lists.autistici.org/list/tails-project.en.html
One can read those messages within their email client of by opening the page in any browser.
The usage of Tor is respected. It is build on free softwarehttps://code.briarproject.org/briar/briar/-/issues/1742Using LoRa frequencies to leverage the reach of briar2023-02-09T00:29:56ZsysterUsing LoRa frequencies to leverage the reach of briar### issue:
Briar is great, but the limitation of bluetooth/wifi for offline meshnet communcation is decreasing its usability.
Example, protest:
When you start using briar, maybe only your friends have it. So the meshnent is rather sma...### issue:
Briar is great, but the limitation of bluetooth/wifi for offline meshnet communcation is decreasing its usability.
Example, protest:
When you start using briar, maybe only your friends have it. So the meshnent is rather small that you will build from it.
The circumstances may require your group to be at different positions (to report movements of adversaries, to do medic support, to hand out leaflets...)
Internet is down. That would be the perfect moment to use briar. But you can't, because the requirements for your group organization is to be further away from each other then Bluetooth can reach. There is no "out-of-the-box-solution" to use briar for this case.
Encrypted walkie-talkies is what people use instead. Issue with that (no meshnet, no wide adoption, relatively expansive)
### example of possibilities:
leveraging the signal from bluethooth/wifi with LoRa (long range) frequencies.
![meshtastic](/uploads/17a4c876056b221f63c418c74f9522d7/meshtastic.png)
A video that presents a **prototype of such technique** (they don't use briar but https://www.meshtastic.org/) **worth to watch**: https://invidious.snopyta.org/watch?v=TY6m6fS8bxUhttps://code.briarproject.org/briar/briar/-/issues/1743Research whether our wake lock tags are still effective2021-09-01T10:10:21ZakwizgranResearch whether our wake lock tags are still effectiveLeave Briar running on devices with recent versions of Huawei PowerGenie and Evenwell PowerMonitor to see whether our wake lock tags still protect us from being killed.Leave Briar running on devices with recent versions of Huawei PowerGenie and Evenwell PowerMonitor to see whether our wake lock tags still protect us from being killed.Adapt to changes in the Android platformakwizgranakwizgran2021-04-30https://code.briarproject.org/briar/briar/-/issues/1883Prepare for Resource IDs becoming non-final in Android Gradle Plugin version 5.02021-04-26T12:12:21ZTorsten GrotePrepare for Resource IDs becoming non-final in Android Gradle Plugin version 5.0Adapt to changes in the Android platformSebastianSebastian2021-04-30https://code.briarproject.org/briar/briar/-/issues/1744NPE when storing local socket address2020-08-14T11:44:13ZakwizgranNPE when storing local socket addressI saw this crash on the Samsung Galaxy Ace 2 (Android 4.1.2) while testing a branch. The relevant code is the same on master.
It's not clear from the stacktrace which of the following methods returned null:
* ServerSocket#getLocalSocke...I saw this crash on the Samsung Galaxy Ace 2 (Android 4.1.2) while testing a branch. The relevant code is the same on master.
It's not clear from the stacktrace which of the following methods returned null:
* ServerSocket#getLocalSocketAddress() (docs say is shouldn't return null since the socket is bound, but maybe a race condition?)
* InetSocketAddress#getAddress() (docs say it returns null for an unresolved address - but resolution shouldn't be needed here)
```
07-03 12:02:39.758 6661-6661/org.briarproject.briar.android.debug I/AndroidNetworkManager: Received broadcast android.net.conn.CONNECTIVITY_CHANGE
07-03 12:03:55.329 6661-6711/org.briarproject.briar.android.debug I/TorPlugin: Online: true, wifi: true
07-03 12:03:55.329 6661-6734/org.briarproject.briar.android.debug I/AndroidLanTcpPlugin: Queue time 3 ms
07-03 12:03:55.339 6661-6711/org.briarproject.briar.android.debug I/TorPlugin: Country code: GB
07-03 12:03:55.339 6661-6734/org.briarproject.briar.android.debug I/AndroidLanTcpPlugin: Connected to wifi
07-03 12:03:55.349 6661-6711/org.briarproject.briar.android.debug I/TorPlugin: Charging: true
07-03 12:03:55.359 6661-6711/org.briarproject.briar.android.debug I/TorPlugin: Enabling network
07-03 12:03:55.359 6661-6711/org.briarproject.briar.android.debug I/TorPlugin: Not using bridges
07-03 12:03:55.359 6661-6711/org.briarproject.briar.android.debug I/TorPlugin: Enabling connection padding
07-03 12:03:55.369 6661-7222/org.briarproject.briar.android.debug I/PluginManagerImpl: org.briarproject.bramble.lan changed from state INACTIVE to ACTIVE
07-03 12:03:55.369 6661-6661/org.briarproject.briar.android.debug I/PluginViewModel: TransportStateEvent: org.briarproject.bramble.lan is ACTIVE
07-03 12:03:55.479 6661-6758/org.briarproject.briar.android.debug I/TorPlugin: NOTICE DisableNetwork is set. Tor will not make or accept non-control network connections. Shutting down all existing connections.
07-03 12:03:55.489 6661-6734/org.briarproject.briar.android.debug I/PollerImpl: Polling plugin org.briarproject.bramble.lan
07-03 12:03:55.639 6661-6758/org.briarproject.briar.android.debug I/TorPlugin: NOTICE DisableNetwork is set. Tor will not make or accept non-control network connections. Shutting down all existing connections.
07-03 12:03:55.639 6661-6711/org.briarproject.briar.android.debug I/RenewableWakeLock: Acquiring wake lock org.briarproject.briar.android.debug
07-03 12:03:55.749 6661-6734/org.briarproject.briar.android.debug I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.lan
07-03 12:03:55.789 6661-7222/org.briarproject.briar.android.debug I/PluginManagerImpl: Merging settings took 40 ms
07-03 12:03:55.789 6661-7222/org.briarproject.briar.android.debug I/TcpPlugin: Listening on 192.168.1.77
07-03 12:03:55.839 6661-7222/org.briarproject.briar.android.debug I/TcpPlugin: Failed to bind fe[scrubbed]88
07-03 12:03:55.839 6661-7222/org.briarproject.briar.android.debug I/TcpPlugin: Failed to bind fe[scrubbed]88
07-03 12:03:55.839 6661-7222/org.briarproject.briar.android.debug W/dalvikvm: threadid=13: thread exiting with uncaught exception (group=0x4146b2a0)
07-03 12:03:55.859 6661-7222/org.briarproject.briar.android.debug E/ACRA: ACRA caught a NullPointerException for org.briarproject.briar.android.debug
java.lang.NullPointerException
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.setLocalIpv6SocketAddress(LanTcpPlugin.java:197)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.setLocalSocketAddress(LanTcpPlugin.java:188)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:177)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(TcpPlugin.java:148)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$uW6V8780O_W211y3Jq96bZYsB4U.run(lambda)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(PoliteExecutor.java:57)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$Lhtp6tpdaSoSplu828CNOD0u06w.run(lambda)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
```Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1745LAN plugin fails to bind IPv4 server socket when wifi is enabled2020-08-14T11:43:33ZakwizgranLAN plugin fails to bind IPv4 server socket when wifi is enabledOn the Nexus 5X (Android 8.1), the LAN plugin fails to bind an IPv4 server socket when the device's wifi is disabled and then re-enabled.
The AndroidNetworkManager broadcasts two connectivity events when wifi is re-enabled. The first se...On the Nexus 5X (Android 8.1), the LAN plugin fails to bind an IPv4 server socket when the device's wifi is disabled and then re-enabled.
The AndroidNetworkManager broadcasts two connectivity events when wifi is re-enabled. The first seems to be broadcast before the device has received a DHCP address, the second after the address is received. The plugin responds to the first event by trying to bind IPv4 and IPv6 sockets. It fails to bind an IPv4 socket because the wifi interface doesn't have an IPv4 address yet. The plugin doesn't try to bind again in response to the second event because it's already in the ACTIVE state due to having bound an IPv6 socket.
The bug doesn't happen on the Pixel 2 (Android 11 beta). Only one connectivity event is broadcast when wifi is re-enabled, and this seems to happen after the interface has an IPv4 address.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1746Expose unread messages count in API's contacts list2022-02-25T15:06:24ZNicoExpose unread messages count in API's contacts listImplementation notes:
* Add variable in `list` function: [ContactControllerImpl/list](https://code.briarproject.org/briar/briar/-/blob/3c63fecb5dad2a3f8174ae40b804679780644a00/briar-headless/src/main/java/org/briarproject/briar/headless/...Implementation notes:
* Add variable in `list` function: [ContactControllerImpl/list](https://code.briarproject.org/briar/briar/-/blob/3c63fecb5dad2a3f8174ae40b804679780644a00/briar-headless/src/main/java/org/briarproject/briar/headless/contact/ContactControllerImpl.kt#L78)
* Get data from [GroupCount](https://code.briarproject.org/briar/briar/-/blob/master/briar-api/src/main/java/org/briarproject/briar/api/client/MessageTracker.java#L79)
Needed for https://code.briarproject.org/briar/briar-gtk/-/issues/29.NicoNicohttps://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/1748User testing for transport toggles, second round2020-11-15T15:34:28ZakwizgranUser testing for transport toggles, second roundSubtask of #1723.Subtask of #1723.https://code.briarproject.org/briar/briar/-/issues/1749Blog post dividers are hard to see2020-11-15T15:32:03ZakwizgranBlog post dividers are hard to seeA user reported that the dividers between sections of a reblogged/commented post are hard to see (there isn't enough contrast between the grey divider and the white background).A user reported that the dividers between sections of a reblogged/commented post are hard to see (there isn't enough contrast between the grey divider and the white background).https://code.briarproject.org/briar/briar/-/issues/1750Text should adapt to system text size setting2021-03-04T14:29:55ZakwizgranText should adapt to system text size settingA user asked for text in Briar to follow the system text size setting.
I'm labelling this as a bug because as far as I can tell it's already the intended behaviour - we're using `sp` rather than `dp` or `px` for all text sizes. But chan...A user asked for text in Briar to follow the system text size setting.
I'm labelling this as a bug because as far as I can tell it's already the intended behaviour - we're using `sp` rather than `dp` or `px` for all text sizes. But changing the system text size doesn't affect Briar, even after signing out and relaunching.
https://developer.android.com/training/multiscreen/screendensities.html#TaskUseDP
> When defining text sizes, however, you should instead use scalable pixels (sp) as your units (but never use sp for layout sizes). The sp unit is the same size as dp, by default, but it resizes based on the user's preferred text size.https://code.briarproject.org/briar/briar/-/issues/1751Explain visibility of reblogs/comments2020-11-15T15:29:27ZakwizgranExplain visibility of reblogs/commentsA user was surprised to learn that a reblogged post was visible to all contacts of the user who reblogged the post, rather than all contacts of user who wrote the original post. We should add some onboarding to explain this the first tim...A user was surprised to learn that a reblogged post was visible to all contacts of the user who reblogged the post, rather than all contacts of user who wrote the original post. We should add some onboarding to explain this the first time the reblog/comment feature is used.https://code.briarproject.org/briar/briar/-/issues/1752After internal emulated sdcard's zero bytes disk space free condition, the da...2020-11-16T10:46:50ZmathAfter internal emulated sdcard's zero bytes disk space free condition, the database became corrupted and all Briar data was losthttps://code.briarproject.org/briar/briar/-/issues/1753API 30: Access to installed packages is restricted2021-01-12T11:22:23ZakwizgranAPI 30: Access to installed packages is restrictedWhen we target API 30 we'll need to make changes to retain the ability to check whether power management apps are installed:
https://medium.com/androiddevelopers/package-visibility-in-android-11-cc857f221cd9
* [x] `AndroidTorPlugin`: `...When we target API 30 we'll need to make changes to retain the ability to check whether power management apps are installed:
https://medium.com/androiddevelopers/package-visibility-in-android-11-cc857f221cd9
* [x] `AndroidTorPlugin`: `pm.getPackageInfo(app.getPackageName(), 0)`
* [x] `AndroidWakeLockManagerImpl`: `packageName.startsWith()`
* [x] `PanicPreferencesFragment`: `pm.getApplicationInfo(panicTriggerApp)`
* [x] `PanicPreferencesFragment`: `intent.resolveActivity(pm)`
* [x] `PanicPreferencesFragment`: `PanicResponder.resolveTriggerApps(pm)`
* [x] `ScreenFilterMonitorImpl`: `pm.getInstalledPackages(GET_PERMISSIONS)`
* [x] `ScreenFilterMonitorImpl`: `pm.getPackageInfo(PLAY_SERVICES_PACKAGE, GET_SIGNATURES)`
* [x] `SettingsFragment`: `intent.resolveActivity(pm)`
* [x] `HuaweiView`: `pm.queryIntentActivities(i, PackageManager.MATCH_DEFAULT_ONLY)`
* [x] `KeyAgreementActivity`: `Intent(ACTION_REQUEST_DISCOVERABLE).resolveActivity(pm)`
* [x] `LinkDialogFragment`: `pm.queryIntentActivities()`Adapt to changes in the Android platformTorsten GroteTorsten Grote2021-04-30https://code.briarproject.org/briar/briar/-/issues/1754Test whether hiding UI still works on Android 102020-09-04T10:56:53ZakwizgranTest whether hiding UI still works on Android 10Android 10 places new restrictions on background apps starting activities:
https://developer.android.com/guide/components/activities/background-starts
Check whether BriarService#hideUi(), which is called on low memory and when the devi...Android 10 places new restrictions on background apps starting activities:
https://developer.android.com/guide/components/activities/background-starts
Check whether BriarService#hideUi(), which is called on low memory and when the device shuts down, works under the following circumstances:
* Briar is visible in recent apps
* Briar has been cleared from recent apps but is still running
It's not a big deal if hideUi() stops working, as long as we don't get a crash or unexpected behaviour when calling it or when relaunching the app.akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1755Test whether panic button response still works on Android 102020-09-04T11:35:02ZakwizgranTest whether panic button response still works on Android 10Android 10 places new restrictions on background apps starting activities:
https://developer.android.com/guide/components/activities/background-starts
Test whether this affects the panic button response, which uses two invisible activi...Android 10 places new restrictions on background apps starting activities:
https://developer.android.com/guide/components/activities/background-starts
Test whether this affects the panic button response, which uses two invisible activities (PanicResponderActivity and ExitActivity), under the following circumstances:
* Briar isn't running
* Briar is running and visible in recent apps
* Briar is running but not visible in recent appsakwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1756Investigate connectivity changes when entering/exiting sleep and doze2020-11-15T15:03:26ZakwizgranInvestigate connectivity changes when entering/exiting sleep and dozeAndroidNetworkManager makes a connectivity check when it receives a broadcast associated with entering or exiting sleep or doze (ACTION_SCREEN_ON, ACTION_SCREEN_OFF or ACTION_DEVICE_IDLE_MODE_CHANGED). A second connectivity check is sche...AndroidNetworkManager makes a connectivity check when it receives a broadcast associated with entering or exiting sleep or doze (ACTION_SCREEN_ON, ACTION_SCREEN_OFF or ACTION_DEVICE_IDLE_MODE_CHANGED). A second connectivity check is scheduled 1 minute after the broadcast, because we've sometimes seen connectivity changes shortly after entering or exiting sleep or doze.
We want to detect these delayed connectivity changes reliably, but we don't want to hold a wake lock for a full minute after every screen on/off event, and in any case that might just cause the connectivity changes to be deferred until we release the wake lock.
Investigate the circumstances under which these delayed connectivity changes happen (on various devices), find out whether our current approach detects them reliably (with and without Tor enabled), and if not, work out how to do so.https://code.briarproject.org/briar/briar/-/issues/1757Investigate whether LAN connections need wake locks2020-11-15T15:46:21ZakwizgranInvestigate whether LAN connections need wake locksWe've added wake locks to Bluetooth connections to ensure keepalives are sent regularly and dead connections are detected in a reasonable amount of time. Investigate whether we need to do the same for LAN connections.We've added wake locks to Bluetooth connections to ensure keepalives are sent regularly and dead connections are detected in a reasonable amount of time. Investigate whether we need to do the same for LAN connections.https://code.briarproject.org/briar/briar/-/issues/1758Periodic timeout monitor task is not cancelled2020-08-14T11:43:47ZakwizgranPeriodic timeout monitor task is not cancelledThe periodic timeout monitor task is meant to be cancelled when the last TimeoutInputStream is closed, but this doesn't happen unless every stream's close() method is called. Transport connections are often closed without calling close()...The periodic timeout monitor task is meant to be cancelled when the last TimeoutInputStream is closed, but this doesn't happen unless every stream's close() method is called. Transport connections are often closed without calling close() on the input stream, leaving the periodic task running unnecessarily and leaking a reference to the closed stream.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1759AndroidTaskScheduler doesn't correctly handle cancellation of periodic tasks2020-08-14T13:04:06ZakwizgranAndroidTaskScheduler doesn't correctly handle cancellation of periodic tasksAndroidTaskScheduler#scheduleWithFixedRate() returns a Future that can be used to cancel the task. But if the Future is cancelled after the first execution of the task, subsequent executions aren't cancelled.AndroidTaskScheduler#scheduleWithFixedRate() returns a Future that can be used to cancel the task. But if the Future is cancelled after the first execution of the task, subsequent executions aren't cancelled.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1760Connection protocols (mock-up)2021-02-27T21:46:09ZtuquequeConnection protocols (mock-up)Hey... I participated a few weeks ago in the usability testing calls you're running from time to time and I mentioned in that call that I would create a quick mock-up of what I think would improve, simplify and unify the redundancy of th...Hey... I participated a few weeks ago in the usability testing calls you're running from time to time and I mentioned in that call that I would create a quick mock-up of what I think would improve, simplify and unify the redundancy of the connection protocols present in the lower part of the screen in the Hamburger menu and inside the Settings.
![BriarMockUp2](/uploads/c329efbf4d5582906ca0de7afa588de3/BriarMockUp2.gif)
Hopefully the animated gif is pretty self explanatory. I think this concept would unify those settings (so there's no need to actually go to the settings to get more information about the switches)... and it makes those frequently accessed settings much more readily available to the user.
Greets!https://code.briarproject.org/briar/briar/-/issues/1761Implement connection potential. For Bluetooth, Lan connections.2020-11-15T14:58:36ZVladislavImplement connection potential. For Bluetooth, Lan connections.Implement connection potential. For Bluetooth, Lan connections.
For example:
1. If users are interconnected through Bluetooth:
Allow any attachment type
2. Through LAN:
Allow calls.
Allow any attachment type and size
Or e...Implement connection potential. For Bluetooth, Lan connections.
For example:
1. If users are interconnected through Bluetooth:
Allow any attachment type
2. Through LAN:
Allow calls.
Allow any attachment type and size
Or explain please why only images are allowed to send.https://code.briarproject.org/briar/briar/-/issues/1762allow connection through Wan avoiding TOR2020-08-28T14:34:06ZVladislavallow connection through Wan avoiding TORAllow connection through Wan avoiding TOR for thouse who need just to send quick message, and at this moment don't care about privacy.Allow connection through Wan avoiding TOR for thouse who need just to send quick message, and at this moment don't care about privacy.https://code.briarproject.org/briar/briar/-/issues/1763Not optimized for throttled internet connection (SIM Card - Data plans)2020-11-16T10:59:49ZN6P4CFB1BSRSLNot optimized for throttled internet connection (SIM Card - Data plans)**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
Hello
I use Briar (Tor network) on my Android devices. But it can't send and receive messages when using a throttled internet connection.
I have SIM cards (5G,...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
Hello
I use Briar (Tor network) on my Android devices. But it can't send and receive messages when using a throttled internet connection.
I have SIM cards (5G, 4G, 3G and 2G) with data plans, but the speed is throttled to 64 Kbps or 32 Kbps.
Can the developers optimize Briar to send and receive messages even with throttled or very slow Internet connections (64 Kbps and 32 Kbps)?
For comparison I tried Signal Android and here it works fine with throttled internet connection.https://code.briarproject.org/briar/briar/-/issues/1764Change app language does not work2021-02-18T10:28:52ZN6P4CFB1BSRSLChange app language does not work**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
Hello,
have installed the Briar app and go to Settings -> Language & region and select a different language than the Android system language.
After restarting ...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
Hello,
have installed the Briar app and go to Settings -> Language & region and select a different language than the Android system language.
After restarting the Briar app the app language was not changed. It still uses the system language.Android 1.2IvanaIvanahttps://code.briarproject.org/briar/briar/-/issues/1765Does not reconnect despite existing Wi-Fi Direct connection2020-11-15T14:30:47ZN6P4CFB1BSRSLDoes not reconnect despite existing Wi-Fi Direct connection**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
1. Connect two Android 10 devices (smartphones) via Wi-Fi Direct
2. Install the Briar app on both Android devices
3. Open the Briar app and add the Android device...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
1. Connect two Android 10 devices (smartphones) via Wi-Fi Direct
2. Install the Briar app on both Android devices
3. Open the Briar app and add the Android devices to contacts
4. Now can send and receive messages. A green icon will light up.
5. On the first Android device in Briar app tap "Sign out" and open Briar app again and enter the password.
6. Now there is no more green icon on both Android devices and can no longer send and receive messages.
Note:
The Wi-Fi Direct connection was not disconnected. Same problem also with Bluetooth.
Can you reproduce it?https://code.briarproject.org/briar/briar/-/issues/1766Possibility to add local chat without external contacts2020-11-15T14:29:25ZN6P4CFB1BSRSLPossibility to add local chat without external contacts**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
There is no way to start a local chat under "Contacts" without adding external contacts.
Private Groups, Forums and Blogs have this possibility. But I prefer to...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
There is no way to start a local chat under "Contacts" without adding external contacts.
Private Groups, Forums and Blogs have this possibility. But I prefer to start a local chat under "Contacts" because the UI looks nicer and I want to test how the Chat UI is in general.https://code.briarproject.org/briar/briar/-/issues/1767Improves animation and design2020-09-05T10:15:34ZN6P4CFB1BSRSLImproves animation and design**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
When select a contact and tap the "Back" button. The animatiom does not look even, does not look clean and is illogical. Additionally there are some design probl...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
When select a contact and tap the "Back" button. The animatiom does not look even, does not look clean and is illogical. Additionally there are some design problems (circle symbol).
**Steps to reproduce**
1. Open the Briar app and enter the password.
2. The main view is "Contacts". Tap on a contact and tap on the "Back" button in the upper left corner.
3. The animatiom does not look even, does not look clean and is illogical.
Note:
Why illogical? The contact is not online and on the main view it shows the online status for this contact with a circle symbol, in this case white color in the middle of the circle symbol and the border is grey. I use Light theme.
When I tap on contact it shows in the title bar a grey circle symbol with white border. Now when I tap on the "Back" button the animation appears and the circle symbol of title bar returns to the main view, but as I said before the color of the circle symbol in title bar and main view are different.https://code.briarproject.org/briar/briar/-/issues/1768Declined introduction cannot be sent again immediately2020-11-15T14:26:46ZN6P4CFB1BSRSLDeclined introduction cannot be sent again immediately**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
If an introduction is accidentally declined there is no quick and easy way to undo it and accept a resend of the introduction.
Generally whether accidentally de...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
If an introduction is accidentally declined there is no quick and easy way to undo it and accept a resend of the introduction.
Generally whether accidentally declined or really declined. The messages generated by this introduction function cannot be deleted immediately and the user does not know when it is possible to make introduction again for the same contact.https://code.briarproject.org/briar/briar/-/issues/1769Add non-dynamic time format2020-11-15T14:24:49ZN6P4CFB1BSRSLAdd non-dynamic time format**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
Currently, Briar only displays a dynamic time format when messages are sent and received.
It would be very good if a non-dynamic time format could be added, but...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
Currently, Briar only displays a dynamic time format when messages are sent and received.
It would be very good if a non-dynamic time format could be added, but it uses almost the same structure as dynamic time format.
An example would be
MMM dd, yyyy, hh:mm a
Sep 3, 2020, 01:00 PMhttps://code.briarproject.org/briar/briar/-/issues/1770Delete multiple contacts2020-11-16T10:25:31ZN6P4CFB1BSRSLDelete multiple contacts**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
There is no quick way to select and delete multiple contacts under "Contacts" view. The multiple select function is missing.
Currently each contact must be dele...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
There is no quick way to select and delete multiple contacts under "Contacts" view. The multiple select function is missing.
Currently each contact must be deleted manually.https://code.briarproject.org/briar/briar/-/issues/1771Select multiple contacts for introduction function2020-11-15T14:21:49ZN6P4CFB1BSRSLSelect multiple contacts for introduction function**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
When users use the introduction function, only 1 contact can be selected.
2 or more contacts cannot be selected.
A multiple selection function is missing.
Th...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
When users use the introduction function, only 1 contact can be selected.
2 or more contacts cannot be selected.
A multiple selection function is missing.
This should be supported:
- select (this means to select multiple contacts)
- select all (select all contacts with one click)https://code.briarproject.org/briar/briar/-/issues/1772Delete blogs and comments does not work2020-11-15T14:20:25ZN6P4CFB1BSRSLDelete blogs and comments does not work**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
It is not possible to delete self created blogs and their comments individually or completely.
**Steps to reproduce**
1. Open Briar app and type the password
2...**Version**
Briar 1.2.9
**Android version**
Android 10
**Description**
It is not possible to delete self created blogs and their comments individually or completely.
**Steps to reproduce**
1. Open Briar app and type the password
2. Blogs -> Write Blog Post -> PUBLISH -> Add a comment -> REBLOG -> tap avatar icon -> More options -> Remove Blog
3. This does not work the function "Remove Blog" is grayed out.
Note: If do not want to delete blogs, but want to delete self created comments, not possible. A multiple select delete function for comments is missing.https://code.briarproject.org/briar/briar/-/issues/1773Switch to Weblate (translation project)2020-11-15T14:15:21ZWaterswordSwitch to Weblate (translation project)Hello Briar Developer,
you should change the Briar translation project from Transifex to an open source web based localization tool (GPL-3.0).
https://weblate.org/en/
https://github.com/WeblateOrg/weblate
There are only advantages, i...Hello Briar Developer,
you should change the Briar translation project from Transifex to an open source web based localization tool (GPL-3.0).
https://weblate.org/en/
https://github.com/WeblateOrg/weblate
There are only advantages, it is free for open source applications, privacy friendly, you can host yourself, more community, is very popular among translators, it supports the open source/libre community, etc.https://code.briarproject.org/briar/briar/-/issues/1774Shreding data when deleting history2020-11-15T14:10:49ZStevanShreding data when deleting historyI'd recommend that when you click delete history on briar chats data gets shreded, if that already is not the case.
This will make data recovery impossible.I'd recommend that when you click delete history on briar chats data gets shreded, if that already is not the case.
This will make data recovery impossible.https://code.briarproject.org/briar/briar/-/issues/1775NullPointerException: println needs a message2022-05-16T13:59:29ZakwizgranNullPointerException: println needs a message* Android version: 10
* Phone model: Google Pixel 4 (flame)
* Briar version: 1.2.7 (eb562f8)
Stacktrace:
```
java.lang.NullPointerException: println needs a message
at android.util.Log.println_native(Native Method)
at an...* Android version: 10
* Phone model: Google Pixel 4 (flame)
* Briar version: 1.2.7 (eb562f8)
Stacktrace:
```
java.lang.NullPointerException: println needs a message
at android.util.Log.println_native(Native Method)
at android.util.Log.w(Log.java:197)
at com.vanniktech.emoji.Utils.getInputMethodHeight(Utils.java:76)
at com.vanniktech.emoji.EmojiPopup.updateKeyboardState(EmojiPopup.java:142)
at com.vanniktech.emoji.EmojiPopup$1.onGlobalLayout(EmojiPopup.java:72)
at android.view.ViewTreeObserver.dispatchOnGlobalLayout(ViewTreeObserver.java:1056)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2652)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1745)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7768)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:967)
at android.view.Choreographer.doCallbacks(Choreographer.java:791)
at android.view.Choreographer.doFrame(Choreographer.java:726)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:952)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
```Android 1.4IvanaIvanahttps://code.briarproject.org/briar/briar/-/issues/1776NPE in exit transition2021-11-04T11:03:23ZakwizgranNPE in exit transition* Android version: 10
* Phone model: Huawei ELE-L29
* Briar version: 1.2.9 (9d96ce6)
Stacktrace:
```
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.app.Activity.isTopOfTask()' on a null object referenc...* Android version: 10
* Phone model: Huawei ELE-L29
* Briar version: 1.2.9 (9d96ce6)
Stacktrace:
```
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.app.Activity.isTopOfTask()' on a null object reference
at android.app.ExitTransitionCoordinator.notifyComplete(ExitTransitionCoordinator.java:437)
at android.app.ExitTransitionCoordinator.onReceiveResult(ExitTransitionCoordinator.java:91)
at android.os.ResultReceiver$MyRunnable.run(ResultReceiver.java:50)
at android.os.Handler.handleCallback(Handler.java:900)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:219)
at android.app.ActivityThread.main(ActivityThread.java:8347)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1055)
```Android 1.4https://code.briarproject.org/briar/briar/-/issues/1777IllegalStateException when BriarService is recreated after startup2022-07-13T14:35:00ZakwizgranIllegalStateException when BriarService is recreated after startup* Android version: 5.1.1
* Phone model: Samsung SM-J320M (j3xlteub)
* Briar version: 1.2.7 (eb562f8)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.bramble.network.AndroidNetworkManager.startService(AndroidN...* Android version: 5.1.1
* Phone model: Samsung SM-J320M (j3xlteub)
* Briar version: 1.2.7 (eb562f8)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.bramble.network.AndroidNetworkManager.startService(AndroidNetworkManager.java:71)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.startServices(LifecycleManagerImpl.java:130)
at org.briarproject.briar.android.BriarService.lambda$onCreate$0$BriarService(BriarService.java:133)
at org.briarproject.briar.android.-$$Lambda$BriarService$Ihm6XxaER2EMRlAKzUA1GpEtxZU.run(lambda)
at java.lang.Thread.run(Thread.java:818)
```
Edited log:
```
06-04 12:25:55.414 I/TorPlugin: First circuit built
06-04 12:25:55.424 I/PollerImpl: Polling plugin org.briarproject.bramble.tor
06-04 12:25:55.428 I/TorPlugin: Connecting to sak[scrubbed]
06-04 12:26:25.431 I/TorPlugin: Could not connect to sak[scrubbed]: java.net.SocketTimeoutException
06-04 12:26:27.252 I/BaseActivity: Starting NavDrawerActivity
06-04 12:26:27.266 I/BriarService: Created
06-04 12:26:27.273 I/LifecycleManagerImpl: Opening database
06-04 12:26:27.299 I/H2Database: Reopening DB: true
06-04 12:26:27.306 I/JdbcDatabase: 2217908857 ms since last compaction
06-04 12:26:27.328 I/LifecycleManagerImpl: Starting services
```
The exception is a canary that's meant to warn us about singletons being reused in violation of their expected lifecycle.
The log shows that TorPlugin and PollerImpl were already running before BriarService was created. The database must have been open too, as the poller was able to load a contact's transport properties.
It looks like a new BriarService instance was created when one already existed, or used to exist. The BriarService instance also has a canary to check for reuse, so this must be a new instance.Android 1.4akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1778Onboarding tap target wrongly positioned2021-08-19T11:13:14ZakwizgranOnboarding tap target wrongly positionedThe onboarding tap target for the connections screen is meant to be centered on the Tor icon. On the Samsung Galaxy Ace 2 (Android 4.1.2) it's centered on the top left corner of the nav drawer instead.
I can reproduce this reliably on t...The onboarding tap target for the connections screen is meant to be centered on the Tor icon. On the Samsung Galaxy Ace 2 (Android 4.1.2) it's centered on the top left corner of the nav drawer instead.
I can reproduce this reliably on the device, but it doesn't happen on the emulator running the same API version (16).
![device-2020-09-24-124455](/uploads/4b87fcb4d94c44028ae2fb0cc72dbbb1/device-2020-09-24-124455.png)https://code.briarproject.org/briar/briar/-/issues/1779Expose message delivery state changes to websockets API2022-02-25T15:06:16ZNicoExpose message delivery state changes to websockets APIWe already indicate whether a message was sent/acked, but we don't inform about updates.
Needed for https://code.briarproject.org/briar/briar-gtk/-/issues/69.We already indicate whether a message was sent/acked, but we don't inform about updates.
Needed for https://code.briarproject.org/briar/briar-gtk/-/issues/69.NicoNicohttps://code.briarproject.org/briar/briar/-/issues/1780Add method to mark message as read to REST API2020-11-16T10:35:24ZNicoAdd method to mark message as read to REST APIWhen exposing unread messages counters in https://code.briarproject.org/briar/briar/-/merge_requests/1283, I noticed that they were never set to 0. I propose the following HTTP method:
##### Marking messages as read
`POST /v1/messages/...When exposing unread messages counters in https://code.briarproject.org/briar/briar/-/merge_requests/1283, I noticed that they were never set to 0. I propose the following HTTP method:
##### Marking messages as read
`POST /v1/messages/read/{contactId}`
The `messageId` of the message to be marked as read
needs to be provided in the request body as follows:
```json
{
"messageId": "+AIMMgOCPFF8HDEhiEHYjbfKrg7v0G94inKxjvjYzA8="
}
```NicoNicohttps://code.briarproject.org/briar/briar/-/issues/1781Add method to change contact alias to REST API2020-11-16T10:35:09ZNicoAdd method to change contact alias to REST APINeeded for https://code.briarproject.org/briar/briar-gtk/-/issues/14 and https://code.briarproject.org/briar/python-briar-wrapper/-/issues/6.Needed for https://code.briarproject.org/briar/briar-gtk/-/issues/14 and https://code.briarproject.org/briar/python-briar-wrapper/-/issues/6.NicoNicohttps://code.briarproject.org/briar/briar/-/issues/1782Add method to delete all private messages to REST API2020-11-16T10:35:16ZNicoAdd method to delete all private messages to REST APINeeded for https://code.briarproject.org/briar/briar-gtk/-/issues/11.Needed for https://code.briarproject.org/briar/briar-gtk/-/issues/11.NicoNicohttps://code.briarproject.org/briar/briar/-/issues/1783Switching "language & region" to English does not switch the settings language2021-05-05T16:17:22ZRobert PollakSwitching "language & region" to English does not switch the settings languageI am using version 1.2.7 from F-Droid.
When I try to switch the interface language from my system standard (which is my native language) to "English (United States), and open the settings after restart, the page title has appropriately c...I am using version 1.2.7 from F-Droid.
When I try to switch the interface language from my system standard (which is my native language) to "English (United States), and open the settings after restart, the page title has appropriately changed to the English "settings", but all the entries are still in my native language.Android 1.2SebastianSebastianhttps://code.briarproject.org/briar/briar/-/issues/1784Tor settings: Please add a sentence to explain the meaning of 'bridges' to no...2020-11-15T13:53:04ZRobert PollakTor settings: Please add a sentence to explain the meaning of 'bridges' to non-technical usersLike "Connecting via bridges is less prone to surveillance."
Also, what would be an advantage of not using bridges?Like "Connecting via bridges is less prone to surveillance."
Also, what would be an advantage of not using bridges?https://code.briarproject.org/briar/briar/-/issues/1785NPE when no Bluetooth Adapter available2020-11-16T10:36:01ZTorsten GroteNPE when no Bluetooth Adapter available```ruby
'java.lang.String android.bluetooth.BluetoothAdapter.getAddress()' on a null object reference
at org.briarproject.bramble.util.AndroidUtils.getBluetoothAddressAndMethod(AndroidUtils.java:55)
at org.briarpr...```ruby
'java.lang.String android.bluetooth.BluetoothAdapter.getAddress()' on a null object reference
at org.briarproject.bramble.util.AndroidUtils.getBluetoothAddressAndMethod(AndroidUtils.java:55)
at org.briarproject.bramble.util.AndroidUtils.getBluetoothAddress(AndroidUtils.java:48)
at org.briarproject.bramble.plugin.bluetooth.AndroidBluetoothPlugin.getBluetoothAddress(AndroidBluetoothPlugin.java:138)
at org.briarproject.bramble.plugin.bluetooth.BluetoothPlugin.updateProperties(BluetoothPlugin.java:216)
````Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1786Some buttons lack name/role/value for accessibility2020-11-15T13:52:36ZakwizgranSome buttons lack name/role/value for accessibilityThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) found several examples of buttons that weren't marked with an appropriate name, role and value to enable screen readers to handle them ...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) found several examples of buttons that weren't marked with an appropriate name, role and value to enable screen readers to handle them properly:
- [ ] The `(i)` button for showing information lacks a role (should be "button")
- [ ] The `+` button for adding contacts lacks a name
- [ ] The speed dial buttons for adding contacts lack a role for the text and a name for the icon
- [ ] The buttons in the navigation menu lack a role
- [ ] The transport indicators lack a value
- [ ] In the private group list and possibly elsewhere, the action bar's overflow menu button and the menu items lack roles
- [ ] The button for opening/closing the emoji keyboard lacks a name
- [ ] The "Reply" button (in forums and private groups?) lacks a role
- [ ] When the buttons for scrolling up/down to the previous/next unread message are hidden, they're still visible to screen readers but don't work, and don't have a name, role or value
- [ ] The reblog button has the name "Add a comment" rather than "Reblog"
If any of these are tricky to handle we can create subtasks.https://code.briarproject.org/briar/briar/-/issues/1787Transport indicators are not accessible to colourblind people2020-11-15T13:51:37ZakwizgranTransport indicators are not accessible to colourblind peopleThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the transport indicators in the nav drawer rely on colour alone to indicate their state. A second visual cue should be pr...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the transport indicators in the nav drawer rely on colour alone to indicate their state. A second visual cue should be provided for colourblind users.https://code.briarproject.org/briar/briar/-/issues/1788Text fields should have labels2020-11-15T13:51:14ZakwizgranText fields should have labelsThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the way we style text fields, showing placeholder text but not a label, is an accessibility issue because the placeholder...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the way we style text fields, showing placeholder text but not a label, is an accessibility issue because the placeholder text disappears when the user starts to type, leaving no indication of the field's purpose.
This is my fault - I argued for removing the labels because I think the way they move and change size when the field gains or loses focus interacts badly with automatically giving focus to the first text field.https://code.briarproject.org/briar/briar/-/issues/1789Changes to status messages aren't visible to screen readers2020-11-15T13:49:20ZakwizgranChanges to status messages aren't visible to screen readersThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that when status messages such as those shown in the pending contact list ("Connecting", etc) are updated, screen readers aren...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that when status messages such as those shown in the pending contact list ("Connecting", etc) are updated, screen readers aren't automatically aware that the text has changed.
One way to make screen readers aware that text has changed is to give focus to the changed element. The "Password is too weak" message on the setup screen is an example of a status message that's correctly handled by screen readers.https://code.briarproject.org/briar/briar/-/issues/1790Check whether text has enough contrast for accessibility2020-11-15T13:48:54ZakwizgranCheck whether text has enough contrast for accessibilityThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the placeholder text in input fields appears to have low contrast, but this couldn't be verified as the app doesn't allow...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the placeholder text in input fields appears to have low contrast, but this couldn't be verified as the app doesn't allow screenshots. There may be other places in the app, such as the coloured status messages in the pending contact list, where we're not meeting accessibility guidelines for contrast.
Contrast should be at least 4.5:1 for "normal" text or 3.0:1 for "large" text, defined as 18px or 14 px + bold. The light and dark themes need to be checked.https://code.briarproject.org/briar/briar/-/issues/1791Non-text content should have a textual alternative2020-11-15T13:48:30ZakwizgranNon-text content should have a textual alternativeThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) found several places in the app where non-text content lacks a textual alternative:
- [ ] Password strength indicator
- [ ] Checkmarks...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) found several places in the app where non-text content lacks a textual alternative:
- [ ] Password strength indicator
- [ ] Checkmarks in the power management setup screen
- [ ] Checkmarks in the stepper when adding a contact remotely
- [ ] Diagram explaining how QR codes should or should not be exchanged
If any of these involve a lot of work we can create subtasks.https://code.briarproject.org/briar/briar/-/issues/1792Stepper isn't read in a meaningful order by screen readers2020-11-15T13:47:05ZakwizgranStepper isn't read in a meaningful order by screen readersThe [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the "stepper" that shows the steps in the process of adding a contact remotely isn't read in a meaningful order by screen...The [Accessibility Foundation audit](https://briarproject.org/raw/Accessibility_Report_NGI_Briar.pdf) reported that the "stepper" that shows the steps in the process of adding a contact remotely isn't read in a meaningful order by screen readers. TalkBack navigation reads the steps "1 - Exchange links, 2 - Choose nickname" as "1, 2, Exchange links, Choose nickname".https://code.briarproject.org/briar/briar/-/issues/1793Feedback screen has wrong title in screen reader2021-07-06T10:03:53ZakwizgranFeedback screen has wrong title in screen readerWhen opening the feedback screen, the TalkBack screen reader reads the title as "Briar crash reporter". I'm guessing this is the default title for the activity and it's changed to "Feedback" after the point where the screen reader reads ...When opening the feedback screen, the TalkBack screen reader reads the title as "Briar crash reporter". I'm guessing this is the default title for the activity and it's changed to "Feedback" after the point where the screen reader reads the title.Adapt to changes in the Android platformTorsten GroteTorsten Grote2021-04-30https://code.briarproject.org/briar/briar/-/issues/1794No internet connection on IPv6-only network2020-12-11T10:33:06ZpegazNo internet connection on IPv6-only networkHi there,
I've got a big red message at the bottom of my screen saying "no internet connection" when i try to add my first contact, just connected to data of my phone.
I known my phone provider use only ipv6, is that a possible issue?
...Hi there,
I've got a big red message at the bottom of my screen saying "no internet connection" when i try to add my first contact, just connected to data of my phone.
I known my phone provider use only ipv6, is that a possible issue?
Thanks for the job done!Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1795Show when messages were sent and received2020-11-15T18:43:45ZakwizgranShow when messages were sent and receivedA Google Play user asked for messages to show two timestamps: the time sent (on one side of the message bubble) and the time received/acked (on the other side).A Google Play user asked for messages to show two timestamps: the time sent (on one side of the message bubble) and the time received/acked (on the other side).https://code.briarproject.org/briar/briar/-/issues/1796Add option to disable animations2020-11-15T13:41:47ZakwizgranAdd option to disable animationsTwo Google Play users asked for the option to disable transition animations.Two Google Play users asked for the option to disable transition animations.https://code.briarproject.org/briar/briar/-/issues/1797Forward private messages2020-10-15T10:16:15ZakwizgranForward private messagesA user asked for the ability to forward private messages. (When support for image attachments is released, I'm guessing the ability to forward individual attachments might also be useful.)A user asked for the ability to forward private messages. (When support for image attachments is released, I'm guessing the ability to forward individual attachments might also be useful.)https://code.briarproject.org/briar/briar/-/issues/1798Delete account if wrong password is entered several times2020-11-15T13:41:23ZakwizgranDelete account if wrong password is entered several timesA user asked for the option to delete the account automatically if the wrong password is entered several times.A user asked for the option to delete the account automatically if the wrong password is entered several times.https://code.briarproject.org/briar/briar/-/issues/1799Allow the app to be locked as soon as it goes into the background2020-10-22T13:48:39ZakwizgranAllow the app to be locked as soon as it goes into the backgroundA user asked for the option to activate the app lock as soon as the app goes into the background.A user asked for the option to activate the app lock as soon as the app goes into the background.https://code.briarproject.org/briar/briar/-/issues/1800Replace controllers with ViewModels2021-07-06T09:58:13ZakwizgranReplace controllers with ViewModelsThe remaining ResultHander-based controllers should be replaced with ViewModels and LiveData.The remaining ResultHander-based controllers should be replaced with ViewModels and LiveData.https://code.briarproject.org/briar/briar/-/issues/1801Finish migrating ConversationActivity to ViewModel2021-07-06T09:58:45ZakwizgranFinish migrating ConversationActivity to ViewModelTorsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/2077Add DB methods for checking whether there's anything to send to a contact2021-07-06T10:50:14ZakwizgranAdd DB methods for checking whether there's anything to send to a contactTransfer content securely via SD cards and USB memory sticksakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/2082Protocol spec for transport key agreement client2021-11-12T17:16:42ZakwizgranProtocol spec for transport key agreement clientTransfer content securely via SD cards and USB memory sticks2021-07-31https://code.briarproject.org/briar/briar/-/issues/1802Sync data via SD card or USB stick on Android2022-01-21T14:12:16ZakwizgranSync data via SD card or USB stick on AndroidImplement a plugin and user interface for syncing data via external storage (SD card or USB stick) on Android.Implement a plugin and user interface for syncing data via external storage (SD card or USB stick) on Android.Transfer content securely via SD cards and USB memory sticksIvanaIvana2021-07-31https://code.briarproject.org/briar/briar/-/issues/1803User research exercise to understand communication needs during Internet shut...2023-03-15T12:37:59ZakwizgranUser research exercise to understand communication needs during Internet shutdownsDetails of this will depend on Covid restrictions.Details of this will depend on Covid restrictions.2021-08-31https://code.briarproject.org/briar/briar/-/issues/1804Define REST API for communication between Briar and Mailbox2022-02-25T14:51:24ZakwizgranDefine REST API for communication between Briar and MailboxMailbox: Define REST APISebastianSebastian2021-08-31https://code.briarproject.org/briar/briar/-/issues/1806Manage mailbox connections2021-11-25T13:06:21ZakwizgranManage mailbox connectionsWrite backend code to manage connections to the user's own mailbox and contacts' mailboxes. These connections are at a different layer from those managed by the existing ConnectionManager so they probably need their own manager.Write backend code to manage connections to the user's own mailbox and contacts' mailboxes. These connections are at a different layer from those managed by the existing ConnectionManager so they probably need their own manager.Mailbox: Manage mailbox connections2022-10-31