briar issueshttps://code.briarproject.org/groups/briar/-/issues2020-10-26T11:58:49Zhttps://code.briarproject.org/briar/briar/-/issues/1374Implement StreamWriter/Reader writeTag and readTag methods2020-10-26T11:58:49ZBen WieImplement StreamWriter/Reader writeTag and readTag methodsThe current implementation of the `StreamWriter`/`StreamEncrypter` write a tag, which allows the recipient to identify the connection. This tag is written automatically when the first message is written (or the stream is flushed).
Writi...The current implementation of the `StreamWriter`/`StreamEncrypter` write a tag, which allows the recipient to identify the connection. This tag is written automatically when the first message is written (or the stream is flushed).
Writing this tag explicitly before sending any message simplifies the implementation of mailbox session management. A public `writeTag` method should be added to the 'StreamWriter'/'StreamEncrypter'.
Additionally, the `readTag` method, which is currently part of the `ConnectionManager`, is also required to manage mailbox connections. To avoid redundancy we could add a StreamReader interface and implement a `readTag` function ('StreamReader' currently extends an `InputStream`).
As @akwizgran suggested, a workaround is to simply flush the `StreamWriter`, but this also writes an empty frame.Mailbox Prototypehttps://code.briarproject.org/briar/briar/-/issues/1373Implement issues found in RTL user testing2018-10-24T14:05:20ZTorsten GroteImplement issues found in RTL user testingAddress feedback from #1372
* [x] unread count numbers aren't localized (always Latin script)
* [x] crash screen isn't localized (always English)
* [x] don't mirror checkmarks
* [x] the send icon in the crash reporter isn't mirroredAddress feedback from #1372
* [x] unread count numbers aren't localized (always Latin script)
* [x] crash screen isn't localized (always English)
* [x] don't mirror checkmarks
* [x] the send icon in the crash reporter isn't mirroredSponsor 2.3Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1372RTL user testing2018-10-22T19:55:49ZTorsten GroteRTL user testingSponsor 2.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1371Recreate code_cache directory after deleting account2020-11-16T10:37:11ZakwizgranRecreate code_cache directory after deleting accountWe already recreate the `cache` directory after deleting the account because some OpenGL drivers expect it to exist. Apparently we should do the same for the `code_cache` directory. This comes from a Sony Xperia Z3 Compact (Android 6.0.1...We already recreate the `cache` directory after deleting the account because some OpenGL drivers expect it to exist. Apparently we should do the same for the `code_cache` directory. This comes from a Sony Xperia Z3 Compact (Android 6.0.1):
```
08-30 00:33:24.161 E/libEGL (14478): error creating cache file /data/user/0/org.briarproject.briar.android.debug/code_cache/com.android.opengl.shaders_cache: No such file or directory (2)
```Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1370Reblogging a reblogged blog post sometimes triggers a notification2019-03-19T10:36:27ZJulian DehmReblogging a reblogged blog post sometimes triggers a notificationWhen reblogging an already reblogged post the blog post is opened in a dedicated fragment and from there it can be reblogged. Clicking send will take you back to the originally reblogged post and not to the feed itself. Therefore a notif...When reblogging an already reblogged post the blog post is opened in a dedicated fragment and from there it can be reblogged. Clicking send will take you back to the originally reblogged post and not to the feed itself. Therefore a notification is triggered.
Steps to reproduce:
1. Create a blog post
2. Reblog the blog post with a message
3. Reblog the reblogged postAndroid 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1369Private group layout is confusing2019-05-16T14:54:46ZakwizgranPrivate group layout is confusing"Group chat is extremely confusing with the names of the users below the messages.""Group chat is extremely confusing with the names of the users below the messages."Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1368Sign the Fdroid repo with a pgp key2018-08-22T18:28:39ZJoseph BurchettaSign the Fdroid repo with a pgp keyThe purported repo is https://briarproject.org/fdroid/repo?fingerprint=1FB874BEE7276D28ECB2C9B06E8A122EC4BCB4008161436CE474C257CBF49BD6
Please provide a signature if that is correct. It would be useful for people if it were here: https:...The purported repo is https://briarproject.org/fdroid/repo?fingerprint=1FB874BEE7276D28ECB2C9B06E8A122EC4BCB4008161436CE474C257CBF49BD6
Please provide a signature if that is correct. It would be useful for people if it were here: https://briarproject.org/fdroid.html
Or even putting the repo link in the readme and signing the commit.
Thanks!https://code.briarproject.org/briar/briar/-/issues/1367DB Store header is corrupt2020-03-10T15:03:16ZTorsten GroteDB Store header is corruptWhen using Android emulator 27.3.9.0 with an API 28 Google APIs Intel x86 Atom System Image Revision 4 or 5, creating a new account after "forgetting the password" causes a `org.h2.jdbc.JdbcSQLException: Encryption error in file null` ex...When using Android emulator 27.3.9.0 with an API 28 Google APIs Intel x86 Atom System Image Revision 4 or 5, creating a new account after "forgetting the password" causes a `org.h2.jdbc.JdbcSQLException: Encryption error in file null` exception when reinstalling with Android Studio while still signed in.
```
I/AndroidAccountManager: No database key in preferences
I/AccountManagerImpl: Found database key in primary file
I/AndroidAccountManager: No database key in preferences
I/AccountManagerImpl: Found database key in primary file
I/BriarService: Created
I/LifecycleManagerImpl: Starting services
W/LifecycleManagerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Encryption error in file null [90049-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Encryption error in file null [90049-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:495)
at org.briarproject.bramble.db.JdbcDatabase.open(JdbcDatabase.java:340)
at org.briarproject.bramble.db.H2Database.open(H2Database.java:54)
at org.briarproject.bramble.db.DatabaseComponentImpl.open(DatabaseComponentImpl.java:109)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.startServices(LifecycleManagerImpl.java:108)
at org.briarproject.briar.android.BriarService.lambda$onCreate$0$BriarService(BriarService.java:134)
at org.briarproject.briar.android.BriarService$$Lambda$0.run(Unknown Source:20)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Encryption error in file null [90049-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:182)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:101)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:484)
at org.briarproject.bramble.db.JdbcDatabase.open(JdbcDatabase.java:340)
at org.briarproject.bramble.db.H2Database.open(H2Database.java:54)
at org.briarproject.bramble.db.DatabaseComponentImpl.open(DatabaseComponentImpl.java:109)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.startServices(LifecycleManagerImpl.java:108)
at org.briarproject.briar.android.BriarService.lambda$onCreate$0$BriarService(BriarService.java:134)
at org.briarproject.briar.android.BriarService$$Lambda$0.run(Unknown Source:20)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: Store header is corrupt: split:30:/data/data/org.briarproject.briar.android.debug/app_db/db.mv.db [1.4.192/6]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.MVStore.readStoreHeader(MVStore.java:605)
at org.h2.mvstore.MVStore.<init>(MVStore.java:355)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:101)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:484)
at org.briarproject.bramble.db.JdbcDatabase.open(JdbcDatabase.java:340)
at org.briarproject.bramble.db.H2Database.open(H2Database.java:54)
at org.briarproject.bramble.db.DatabaseComponentImpl.open(DatabaseComponentImpl.java:109)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.startServices(LifecycleManagerImpl.java:108)
at org.briarproject.briar.android.BriarService.lambda$onCreate$0$BriarService(BriarService.java:134)
at org.briarproject.briar.android.BriarService$$Lambda$0.run(Unknown Source:20)
at java.lang.Thread.run(Thread.java:764)
W/BriarService: Startup failed: DB_ERROR
```Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1366Segmentation fault while signing out2021-11-04T11:03:42ZakwizgranSegmentation fault while signing out* Android version: 8.1.0
* Phone model: Nexus 5X
* Briar version: 1.0.13 debug build (21f95ed)
The device showed "Briar Debug has stopped" while signing out of the app.
Log:
```
08-16 16:41:38.445 24298-28941/? I/BriarControllerImpl: S...* Android version: 8.1.0
* Phone model: Nexus 5X
* Briar version: 1.0.13 debug build (21f95ed)
The device showed "Briar Debug has stopped" while signing out of the app.
Log:
```
08-16 16:41:38.445 24298-28941/? I/BriarControllerImpl: Shutting down service
08-16 16:41:38.529 24298-24298/? I/BriarService: Destroyed
08-16 16:41:38.540 24298-28944/? I/LifecycleManagerImpl: Stopping services
08-16 16:41:38.542 24298-24591/? I/DuplexOutgoingSession: Closed
08-16 16:41:38.542 24298-25132/? I/DuplexOutgoingSession: Closed
08-16 16:41:38.543 24298-25136/? I/DuplexOutgoingSession: Closed
08-16 16:41:38.543 24298-25134/? I/DuplexOutgoingSession: Closed
08-16 16:41:38.543 24298-25148/? I/DuplexOutgoingSession: Closed
08-16 16:41:38.554 24298-28944/? I/PluginManagerImpl: Stopping simplex plugins
Stopping duplex plugins
08-16 16:41:38.556 24298-28944/? I/PluginManagerImpl: Waiting for all the plugins to stop
08-16 16:41:38.556 24298-25132/? I/PluginManagerImpl: Trying to stop plugin org.briarproject.bramble.bluetooth
08-16 16:41:38.556 24298-25136/? I/PluginManagerImpl: Trying to stop plugin org.briarproject.bramble.tor
08-16 16:41:38.557 24298-25134/? I/PluginManagerImpl: Trying to stop plugin org.briarproject.bramble.lan
08-16 16:41:38.558 24298-25132/? I/NavDrawerControllerImpl: TransportDisabledEvent: org.briarproject.bramble.bluetooth
08-16 16:41:38.559 24298-25136/? I/NavDrawerControllerImpl: TransportDisabledEvent: org.briarproject.bramble.tor
08-16 16:41:38.559 24298-25134/? I/NavDrawerControllerImpl: TransportDisabledEvent: org.briarproject.bramble.lan
08-16 16:41:38.560 24298-24392/? I/TorPlugin: java.net.SocketException: Socket closed
08-16 16:41:38.560 24298-24391/? I/TcpPlugin: java.net.SocketException: Socket closed
--------- beginning of crash
08-16 16:41:38.564 24298-25136/? A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x18 in tid 25136 (pool-3-thread-2), pid 24298 (r.android.debug)
08-16 16:41:38.632 28948-28948/? W/crash_dump64: type=1400 audit(0.0:112): avc: denied { search } for name="org.briarproject.briar.android.debug" dev="dm-2" ino=262990 scontext=u:r:crash_dump:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
08-16 16:41:38.700 28948-28948/? I/crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
08-16 16:41:38.702 28948-28948/? W/crash_dump64: type=1400 audit(0.0:113): avc: denied { search } for name="org.briarproject.briar.android.debug" dev="dm-2" ino=262990 scontext=u:r:crash_dump:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
08-16 16:41:38.703 590-590/? I//system/bin/tombstoned: received crash request for pid 24298
08-16 16:41:38.705 28948-28948/? I/crash_dump64: performing dump of process 24298 (target tid = 25136)
08-16 16:41:38.705 28948-28948/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'google/bullhead/bullhead:8.1.0/OPM6.171019.030.E1/4805388:user/release-keys'
Revision: 'rev_1.0'
ABI: 'arm64'
pid: 24298, tid: 25136, name: pool-3-thread-2 >>> org.briarproject.briar.android.debug <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x18
Cause: null pointer dereference
x0 00000076a216c300 x1 0000000000000000 x2 4e0dc4b73a8d37a4 x3 0000000000000061
x4 00000000ffffffff x5 c6a4a7935bd1e995 x6 c6a4a7935bd1e995 x7 f8e1bfbf4251583c
x8 c5e8c0e242c67c71 x9 c5e8c0e242c67c71 x10 0000000000000008 x11 00000000ffffffff
x12 00000076a461c000 x13 ffffffffa48aa59c x14 00029088e2000000 x15 003b9aca00000000
x16 000000773ee1bca8 x17 000000773edb84b8 x18 0000000000000008 x19 0000000000000015
x20 00000076a215aa40 x21 00000076b0844fa0 x22 0000000000000018 x23 0000000000000000
x24 00000076a216c300 x25 000000769fe88c40 x26 000000769fe81000 x27 00000000000808de
x28 00000076a472b1d0 x29 00000076a1be8ab0 x30 000000769fc1b600
sp 00000076a1be8a00 pc 000000769fc1b60c pstate 0000000060000000
08-16 16:41:38.716 28948-28948/? A/DEBUG: backtrace:
#00 pc 000000000005160c /data/data/org.briarproject.briar.android.debug/libperfa_arm64.so
#01 pc 00000000000163fc /system/lib64/libopenjdkjvmti.so (openjdkjvmti::JvmtiAllocationListener::ObjectAllocated(art::Thread*, art::ObjPtr<art::mirror::Object>*, unsigned long)+320)
#02 pc 000000000014df4c /system/lib64/libart.so (_ZN3art2gc4Heap24AllocObjectWithAllocatorILb1ELb0ENS_11VoidFunctorEEEPNS_6mirror6ObjectEPNS_6ThreadENS_6ObjPtrINS4_5ClassEEEmNS0_13AllocatorTypeERKT1_+1172)
#03 pc 0000000000536aa4 /system/lib64/libart.so (MterpNewInstance+832)
#04 pc 000000000053a310 /system/lib64/libart.so (ExecuteMterpImpl+4496)
#05 pc 0000000000275c00 /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
#06 pc 000000000027b7cc /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
#07 pc 0000000000295a70 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+668)
#08 pc 0000000000533d68 /system/lib64/libart.so (MterpInvokeDirect+356)
#09 pc 000000000053ca14 /system/lib64/libart.so (ExecuteMterpImpl+14484)
#10 pc 0000000000275c00 /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
#11 pc 0000000000525450 /system/lib64/libart.so (artQuickToInterpreterBridge+1052)
#12 pc 0000000000553d0c /system/lib64/libart.so (art_quick_to_interpreter_bridge+92)
#13 pc 00000000001e2b08 /dev/ashmem/dalvik-jit-code-cache (deleted)
08-16 16:41:41.108 766-782/? W/zygote64: kill(-24298, 9) failed: No such process
08-16 16:41:41.110 766-5198/? I/ActivityManager: Process org.briarproject.briar.android.debug (pid 24298) has died: cch CEM
08-16 16:41:41.129 766-789/? W/ActivityManager: setHasOverlayUi called on unknown pid: 24298
08-16 16:41:41.129 561-561/? I/Zygote: Process 24298 exited due to signal (11)
08-16 16:41:41.152 766-782/? W/zygote64: kill(-24298, 9) failed: No such process
08-16 16:41:41.152 766-782/? I/zygote64: Successfully killed process cgroup uid 10101 pid 24298 in 44ms
```
Looks like a crash within ART. Not our bug, but possibly related to @ski's [problems with the same phone model](https://code.briarproject.org/briar/briar/issues/992#note_29767)?Android 1.4https://code.briarproject.org/briar/briar/-/issues/1365Camera error and connection aborted when screen turns off while adding contact2020-11-17T16:07:23ZakwizgranCamera error and connection aborted when screen turns off while adding contactSteps to reproduce:
* Ensure that device A's screen timeout is set to the default (30 seconds)
* Connect devices A and B to the same LAN
* Navigate to the QR code screen on both devices
* Wait 10 seconds without touching the screen on d...Steps to reproduce:
* Ensure that device A's screen timeout is set to the default (30 seconds)
* Connect devices A and B to the same LAN
* Navigate to the QR code screen on both devices
* Wait 10 seconds without touching the screen on device A
* Use device A to scan device B's QR code
* Device A should connect and show "Waiting for contact to scan and connect"
* Device A's screen should turn off before the connection times out
* Turn device A's screen back on
* Device A is still showing "Waiting for contact to scan and connect" although the original timeout has passed
* Device A exits the QR code screen with a "Camera error" toast
* Device A shows a "Connection aborted" toast
Possibly related to #1302, #1364.https://code.briarproject.org/briar/briar/-/issues/1364EOFException when adding contact2020-11-17T15:59:15ZakwizgranEOFException when adding contactSteps to reproduce:
* Device A scans device B, connects via LAN (Bluetooth would also work AFAICT)
* Wait for device A to time out
* Device A closes the connection
* Device B scans device A
* Device B tries to read from the closed conne...Steps to reproduce:
* Device A scans device B, connects via LAN (Bluetooth would also work AFAICT)
* Wait for device A to time out
* Device A closes the connection
* Device B scans device A
* Device B tries to read from the closed connection, throws EOFException
* Device B shows "Connection aborted" toast
* Adding contact failshttps://code.briarproject.org/briar/briar/-/issues/1363IllegalArgumentException: Scrapped or attached views may not be recycled2021-11-04T11:03:42ZakwizgranIllegalArgumentException: Scrapped or attached views may not be recycled* Android version: 8.1.0
* Phone model: OnePlus A5000 (OnePlus5)
* Briar version: 1.0.13 (55d8f85)
Stacktrace:
```
java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled. isScrap:false isAttached:true android...* Android version: 8.1.0
* Phone model: OnePlus A5000 (OnePlus5)
* Briar version: 1.0.13 (55d8f85)
Stacktrace:
```
java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled. isScrap:false isAttached:true android.support.v7.widget.RecyclerView{bb19834 VFED.V... ........ 0,0-1080,1599 #7f09012b app:id/recyclerView}, adapter:org.briarproject.briar.android.contact.ConversationAdapter@40dedd1, layout:android.support.v7.widget.LinearLayoutManager@90a2036, context:org.briarproject.briar.android.contact.ConversationActivity@b8d5bc6
at android.support.v7.widget.RecyclerView$Recycler.recycleViewHolderInternal(RecyclerView.java:6053)
at android.support.v7.widget.RecyclerView$Recycler.recycleView(RecyclerView.java:5997)
at android.support.v7.widget.GapWorker.prefetchPositionWithDeadline(GapWorker.java:292)
at android.support.v7.widget.GapWorker.flushTaskWithDeadline(GapWorker.java:342)
at android.support.v7.widget.GapWorker.flushTasksWithDeadline(GapWorker.java:358)
at android.support.v7.widget.GapWorker.prefetch(GapWorker.java:365)
at android.support.v7.widget.GapWorker.run(GapWorker.java:396)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6753)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:482)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
```
Log:
```
08-08 21:39:57.411 I/ConnectionRegistryImpl: Outgoing connection registered: org.briarproject.bramble.tor
08-08 21:39:57.412 I/ConnectionRegistryImpl: Contact connected
08-08 21:39:57.412 I/ConversationActivity: Contact connected
08-08 21:39:57.615 I/Poller: Polling plugin org.briarproject.bramble.tor
08-08 21:39:57.621 I/ConnectionRegistryImpl: 1 contacts connected: org.briarproject.bramble.tor
08-08 21:39:57.621 I/TorPlugin: Connecting to ojd[scrubbed]
08-08 21:40:03.376 I/BriarRecyclerView: Adding Handler Callback
08-08 21:40:03.376 I/AndroidDatabaseConfig: Database key has been set: true
```
The last two log lines suggest an activity had just started. The previous log lines show that ConversationActivity was recently active, and that's reported as the context of the crash in the stacktrace. So the crash may have occurred while navigating away from ConversationActivity.Android 1.4https://code.briarproject.org/briar/briar/-/issues/1362LAN plugin fails to bind socket on Chrome OS2022-10-10T10:46:20ZakwizgranLAN plugin fails to bind socket on Chrome OS```
08-10 13:58:10.945 2013-2045/org.briarproject.briar.android.debug I/AndroidLanTcpPlugin: Connected to wifi
08-10 13:58:10.969 2013-2036/org.briarproject.briar.android.debug I/TcpPlugin: Failed to bind /192.168.0.4
08-10 13:58:10.970 ...```
08-10 13:58:10.945 2013-2045/org.briarproject.briar.android.debug I/AndroidLanTcpPlugin: Connected to wifi
08-10 13:58:10.969 2013-2036/org.briarproject.briar.android.debug I/TcpPlugin: Failed to bind /192.168.0.4
08-10 13:58:10.970 2013-2036/org.briarproject.briar.android.debug I/TcpPlugin: Could not bind server socket
```
Android's WifiManager reports the device as connected to wifi with IP address 192.168.0.4, but the LAN plugin can't bind a socket to that address.
Probably due to container restrictions: https://developer.android.com/topic/arc/#check_for_networking_requirementshttps://code.briarproject.org/briar/briar/-/issues/1361Long blog post scrolls to top while reading2020-11-17T16:07:38ZakwizgranLong blog post scrolls to top while reading* Android version: 7.1.2
* Briar version: 1.0.11
* User feedback: "When reading RSS posts on the blogs page, often as I'm scrolling down through a long article the screen jumps back up and displays sections of the article I've already re...* Android version: 7.1.2
* Briar version: 1.0.11
* User feedback: "When reading RSS posts on the blogs page, often as I'm scrolling down through a long article the screen jumps back up and displays sections of the article I've already read. Not a critical issue, but it makes it hard to read long articles in the app since it causes me to lose my place every few paragraphs."
Since the article is long enough to scroll through, I'm assuming this refers to the single post ("read more") view.https://code.briarproject.org/briar/briar/-/issues/1360Resource changes aren't included in builds2018-08-09T08:59:25ZakwizgranResource changes aren't included in buildsSince we added build flavours, changes to resources aren't included in Android Studio builds (I haven't tested command-line builds yet). Cleaning and rebuilding causes the changes to be picked up.Since we added build flavours, changes to resources aren't included in Android Studio builds (I haven't tested command-line builds yet). Cleaning and rebuilding causes the changes to be picked up.Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1359ConversationView shows progress wheel over messages on Nexus 5X2020-11-17T16:08:14ZakwizgranConversationView shows progress wheel over messages on Nexus 5XI noticed this on the Nexus 5X (Android 8.1) with current master (25b8932cde226b75bcf92bdeeaa450e030f23cd6) and can reliably reproduce it there, but I can't reproduce it on the Moto G 4G running the same code.
Steps to reproduce:
* Sign...I noticed this on the Nexus 5X (Android 8.1) with current master (25b8932cde226b75bcf92bdeeaa450e030f23cd6) and can reliably reproduce it there, but I can't reproduce it on the Moto G 4G running the same code.
Steps to reproduce:
* Sign into Briar
* Open a private conversation containing some messages
* Turn the screen off and on again, or press the home button and then resume Briar from recent apps
* The progress wheel appears over the top of the messages and doesn't disappear
![device-2018-08-03-174457](/uploads/6336724b37de55a224e83643276936da/device-2018-08-03-174457.png)https://code.briarproject.org/briar/briar/-/issues/1358New Design and UX for Message Bubbles2018-08-20T19:47:36ZElio Qoshielio@ura.designNew Design and UX for Message BubblesWhile working on the Dark Theme with @grote we discovered that the message bubble colors required changes made to PNG drawables, split into 9 pieces (for dark, light, incoming, outgoing and system notices). This makes it quite rough to w...While working on the Dark Theme with @grote we discovered that the message bubble colors required changes made to PNG drawables, split into 9 pieces (for dark, light, incoming, outgoing and system notices). This makes it quite rough to work with and is time consuming when it comes to updating changes. Also, the current design is an old message bubble pattern and one can see from Facebook or Telegram that a more rounded approach might be more suitable:
![image](/uploads/59dd7e30bf3126a0e36e9fdbb6e91c9b/image.png)Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1357PanicResponder doesn't return when deleting app data2019-03-19T14:16:26ZakwizgranPanicResponder doesn't return when deleting app dataWhen responding to a panic button intent we call PanicResponder.deleteAllAppData() before signing out. It looks like this method may cause the process to exit, as the log message that should be logged immediately after it returns ("Signi...When responding to a panic button intent we call PanicResponder.deleteAllAppData() before signing out. It looks like this method may cause the process to exit, as the log message that should be logged immediately after it returns ("Signing out...") doesn't show up in the log.
When I tried refactoring this call into AccountManager#deleteAccount(), which is called before creating a new account to ensure no remnants of an old account are left behind, it caused the app to exit instead of showing SetupActivity.
We should consider extracting the useful parts of this method into AndroidAccountManager#deleteAccount() instead of calling it.
Test device: Moto G 4G (Android 5.1).Android 1.1Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1356Error: No dependency for integrity assertion 'org.ow2.asm:asm:5.0.4:asm-5.0.4...2019-08-14T14:23:01ZTeodomiroError: No dependency for integrity assertion 'org.ow2.asm:asm:5.0.4:asm-5.0.4.jar:...Hi guys.
I get this dependency error when I try to build the project...! Any thoughts, please? [PerBri](/uploads/9ee4f4c20810d3128f233a6f1b4b759d/PerBri.png)Hi guys.
I get this dependency error when I try to build the project...! Any thoughts, please? [PerBri](/uploads/9ee4f4c20810d3128f233a6f1b4b759d/PerBri.png)https://code.briarproject.org/briar/briar/-/issues/1355Add a setting to override location-based disabling of Tor2018-08-09T19:48:31ZakwizgranAdd a setting to override location-based disabling of TorUsers in China have reported that Orbot works over Shadowsocks, and I've confirmed that Briar's Tor connectivity works over Shadowsocks using [this app](https://play.google.com/store/apps/details?id=com.github.shadowsocks) in VPN mode, w...Users in China have reported that Orbot works over Shadowsocks, and I've confirmed that Briar's Tor connectivity works over Shadowsocks using [this app](https://play.google.com/store/apps/details?id=com.github.shadowsocks) in VPN mode, with no configuration on the Briar side. The same should work in China, except that we disable Tor based on the user's location. We should add a setting to allow the user to override location-based disabling of Tor.Android 1.1akwizgranakwizgran