briar issueshttps://code.briarproject.org/groups/briar/-/issues2023-03-27T12:36:00Zhttps://code.briarproject.org/briar/briar-mailbox/-/issues/174Upgrade logback and slf4j after logback-android released version 3.02023-03-27T12:36:00ZSebastianUpgrade logback and slf4j after logback-android released version 3.0logback-android does not support slf4j-api 2.0 yet and the result is that no logging appears in logcat at all when upgrading slf4j-api.
The [issue is known at logback-android](https://github.com/tony19/logback-android/issues/249) and [a...logback-android does not support slf4j-api 2.0 yet and the result is that no logging appears in logcat at all when upgrading slf4j-api.
The [issue is known at logback-android](https://github.com/tony19/logback-android/issues/249) and [a fix is on the way](https://github.com/tony19/logback-android/pull/247) with the author stating that he plans to release logback-android 3.0 after merging this.
!128 introduce an update with the result being that logs did not work any longer. !129 reverts the logging update of the former MR. Let's upgrade again once a new version of logback-android is available.SebastianSebastianhttps://code.briarproject.org/briar/briar/-/issues/2385Sponsor 6 User feedback2023-08-28T16:07:07ZIvanaSponsor 6 User feedbackThis ticket gathers different strands of user feedback received during Q3 and Q4 2022 from users.
Users were asked to test the Briar app at an event, therefore there was little in the way of user preparation, onboarding etc.
## Feedba...This ticket gathers different strands of user feedback received during Q3 and Q4 2022 from users.
Users were asked to test the Briar app at an event, therefore there was little in the way of user preparation, onboarding etc.
## Feedback from users on how to improve Briar
### Issues Relating to User Experience and Functionality
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| Anecdotally, users have said that Briar doesn't work during internet shutdowns. We heard this at the conference last week. | <p> What we need to explain is that it does work, but it has limitations. We need to lower expectations of what this can do. It is not as good as WhatsApp, and it can take up to 10 minutes to install and connect with friends who have it as well as add yourself to a forum. </p><p> Briar should adjust expectations of what it is capable of doing and make its limitations clear, so users don't become frustrated that it doesn't operate like WhatsApp. </p> | <p> This feedback touches on an issue we've been discussing recently: whether our product strategy of imitating the features and UX of a typical messaging app is effective for meeting the needs of people affected by internet shutdowns. That's an issue we should continue to discuss as a team, but it's too big to tackle in the remaining sponsor 6 hours. Still, within the existing product strategy there are things we could do to address this feedback. </p><p> We could change the language we use to describe the app (on our website, Google Play and elsewhere), to make it clear that when operating offline, the app can only be used to communicate with people nearby. </p><p> Within the app, we could create a stronger UX distinction between online and offline operation. </p><p> We could add onboarding to explain how offline communication works when the app is used offline for the first time, perhaps using information about the available transports and contacts to decide when onboarding is needed. </p><p> We could be more proactive about using onboarding and UX cues to explain the differences between Briar and typical messaging apps, both online and offline. </p> | #1472 | Design UX for contextual help: #2390. |
| Techies at the event found it hard to download and install the app and became frustrated. Once the app is downloaded and users are trying to connect to one another, they don't understand how to scan each other's QR codes. Our tests often saw pairs of users only scanning one of the QR codes, rather than both on each user’s phone - the current documentation of a still image doesn't exactly show how to do that - and users can get frustrated during this period. | Here are some ways to improve this: Briar needs to include clear images, GIFs and/or a video to make clear how to correctly scan the QR codes early in the installation process to avoid user frustration. | <p> Many other apps use QR codes, but none of them require both parties to scan each other's codes, creating a strong expectation that Briar will work in the same way. </p><p> We've already made a small step towards addressing this by adding hints to the UI. </p><p> We could improve the onboarding for adding a nearby contact, perhaps with a vector animation of both devices scanning each other's QR codes. </p><p> In the longer term we could replace the QR code workflow with a new workflow in which the users choose who will go first, so that we can show each user the next step they need to take. </p> | #348, #1909, #1235 | Design UX for contextual help: #2390. |
| While tutorials and documentation on Briar exist in several languages, these are difficult to find. | <p> We need a centralized place to download Briar's existing documentation and tutorials in multiple languages quickly and easily to help people install the app with ease. </p><p> Some suggestions to improve this include: Making these resources available on the Google Play Store and/or the Briar website, and/or when people download the app they are instructed to do a walkthrough of the app in various languages. Instructions or a walk-through in multiple languages would be helpful. </p> | <p> We should make the manual, quick start guide and FAQ easier to find on the website - this depends on restructuring the nav. </p><p> Linking to the docs from Google Play is an easy win. </p><p> We could also write tutorials for specific tasks (eg creating an account, adding a contact). These might replace the current quick start guide and would allow more topics to be covered. </p><p> Bundling the manual and/or tutorials with the app, and/or writing help text specifically for the app, might also help. </p><p> Open problem: generating in-app documentation and web documentation from the same source, in a format that's compatible with Transifex. </p> | website#21, #1312 | <p> Restructure website navigation: website#21. </p><p> Link to docs from Google Play: #2387. </p><p> Design UX for contextual help: #2390. </p> |
| People join Briar, but they don't know what to do or how to find and join a forum. | The documentation should spell this process out clearly, along with GIFs -- not just still images that don't properly explain what is needed. | <p> We should add onboarding for the blog, forum and private group features. This could consist of a "tour" after the user creates their account, and/or onboarding for specific features when the user first opens them. </p><p> We should offer contextual help throughout the app, either by linking to the appropriate part of the bundled documentation or by writing help text specifically for the app. </p><p> Open problem: how to indicate that help is available in a given context without interrupting the user's workflow? </p> | #1472 | Design UX for contextual help: #2390. |
### Issues Relating to Transparency
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| <p> Information on how and what user data is collected and used by Briar needs to be more clear and more transparent to users in plain language. While the privacy information is on GitHub this is not accessible to an ordinary user and to those who may not be familiar with a privacy policy, especially if it is written in very technical language. </p><p> Some of the questions event participants wished to be answered before they downloaded the app included: Is it encrypted? What will they do with my data? Why do I need a password? Why isn't it on iOS? Will it become available on iOS? Who has developed the app? </p> | They should have a help/FAQ section based on this information. | <p> The privacy policy is linked from Google Play - we should also link to it from GitHub. </p><p> The privacy policy is written in non-technical language, but it's only available in English. Making the website available in multiple languages would help with this. </p><p> The FAQ should also be made available in multiple languages and linked from Google Play and GitHub. This argues in favour of putting the FAQ on the website (where it can be translated) rather than the wiki. Including the FAQ in the app might also help. </p><p> We could add onboarding to the account setup process (or expand the existing contextual help and make it more obvious) to answer the questions about encryption, data storage and why the password is needed. </p> | website#28, website#29, #1312 | <p> Link to docs and privacy policy from GitHub: #2388. </p><p> Make website translatable: website!87. </p><p> Add FAQ to website: website#29 (depends on website#21). </p><p> Design UX for contextual help: #2390. </p> |
### Some Suggestions for Improvements to Increase Functionality/User Uptake
#### Read/Delivery Receipts
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| During an emergency situation information on the delivery/receipt/reading of messages can be vital. | Briar developers should make it optional to add read receipts to private messages and forums. The app should provide clear ways to show if a message has not been delivered or read, similar to some other apps. | <p> Opt-in read receipts could be implemented for private messages. </p><p> We should look at how other apps handle the UI distinction between a contact who hasn't enabled read receipts and a contact who has enabled them but hasn't read the message. </p><p> Some apps don't let you request read receipts unless you also send receipts to your contacts (although this couldn't be enforced in a P2P app). </p><p> For forums, it's not clear how read receipts would work, as the membership of the forum isn't known. </p><p> Read receipts for private groups might be feasible. We should look at how other apps handle read receipts for group chats. </p><p> Some people may think that two checkmarks mean a message has been read. We could show onboarding for this and add it to the FAQ. </p> | #1220, #1208 | <p> Research how other apps handle read receipts: #2389. </p> |
#### Understanding the Internet vs Bluetooth Function
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| At the moment, people don't seem to understand what the internet and Bluetooth functions are, what they mean, why it is better than WhatsApp, when it is appropriate to use either function, and what the limitations are when these functions are used. | A notification/banner showing if the app is relying on the internet or Bluetooth should be shown to make the use of the two functions clear and help people understand the two different modes it can operate. | See notes above re: making it clear that the app works differently from WhatsApp. | See above. | See above. |
#### Confusion about the Forum Function
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| Event participants were confused about what the term ‘forum’ meant and which function it was meant to provide, which can indicate that other users, especially non-English-speaking users may not be able to understand what this function provides. | Briar should consider changing the name Forum to Groups which is more clear and in line with other apps to avoid confusion and misunderstandings by users, especially those in non-English-speaking countries. | <p> We should try to find out whether this is a translation issue or whether the term is also unclear to English-speaking users. </p><p> We could do some user research into what users expect the terms "forum", "private group" and "blog" to mean. </p><p> We discussed renaming "forum" and "private group" to "public group" and "private group", or "open group" and "closed group", but this might cause further confusion between the two features. We won't find any single term that conveys the right concept to everyone, so explanations need to be included in the app and easily accessible. See notes above re: onboarding for features and contextual help. </p> | #800, #1472 | Design UX for contextual help: #2390. |
#### Warnings and Notifications on Internet Disruptions and Shutdowns
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| It needs to be clear that people DO need internet access to download and install the app, so installation needs to happen before any shutdowns/disruptions. | <p> To help users be prepared and remember to use Briar, notifications could be sent to users' phones while they are connected to the internet to tell friends about the application and to help them download it. The notification can be sent periodically to remind users about the app. </p><p> Briar could also connect to civil society/research groups who monitor internet connectivity around the world, so that it can provide notifications and warnings if there is a risk of imminent internet disruption or shutdown so that users can prepare/share information to friends/family to start using Briar. </p> | <p> Apparently we need to do a better job of advertising the offline app sharing function! We could add onboarding for this feature when the app is first used offline. We could also think about whether there's a more prominent place in the app where this feature could live. </p><p> Showing too many notifications might irritate users and cause them to turn off notifications. </p><p> Notifications for specific countries at risk of internet disruptions would be possible, but the Briar team would prefer not to operate any centralised infrastructure. We might be able to partner with an organisation like Access Now to publish information, perhaps as an RSS feed that Briar peers could fetch via Tor and automatically re-share. </p><p> We could direct the user to the offline app sharing feature when we detect that the app is offline. </p><p> Many apps have the ability to generate a generic message like "Let's keep in touch via Briar, download it here", which can be sent via another app. This would be an easy win. </p> | | Share a link to the Briar download page: #2391. |
## Feedback received via Briar blog from project partners
| Problem | Solution proposed by person giving feedback | Notes from team | Relevant tickets | Next steps |
| ------ | ------ | ------ | ------ | ------ |
| It's not obvious that the Reblog button can be used to reply to a post. The reblog icon is intuitive *if you're accustomed to Tumblr*, but that's ancient to most savvy youths, a primary target audience for Briar. | It would be better to have separate Reply and Reblog buttons, like Twitter. | This is an easy win. | | Use separate buttons for reblogging and commenting: #2392. |
| A link shared within a blog is neither clickable not intuitively copy-able. | | <p> The underlying issue is that blog posts are written in plain text but rendered as HTML, because RSS posts can contain HTML. Messages elsewhere in the app (private messages, forums, private groups and even blog comments) are written and rendered as plain text. </p><p> We could convert blog posts to HTML when they're written, including converting URLs into links. </p><p> Alternatively, we could continue to render RSS posts as HTML, but render non-RSS posts as plain text. We could then make links clickable when rendering all plain text content (blog posts, blog comments, private messages, forums and private groups). </p><p> We should investigate the options for preprocessing text to HTML. </p> | #689, #421, #786, #1038, #90 | Convert blog posts and comments to HTML when composing: #2393. |
| As I play with the app, I'm continually seeking a "homebase" with the feed but featuring notifications of messages and new posts, and instead I end up hitting the Back button and accidentally exiting the app. | A centralised homepage with just my notifications would be optimal. | <p> We could show badges for new content in the nav menu, and maybe even on the hamburger button. This might require some refactoring to limit the amount of DB work needed. </p><p> Paul has some drawings of different navigation options, including bottom navigation, which would make the badges visible from everywhere. </p><p> Another option would be to create a new homepage that shows new content from all parts of the app. This would be a much bigger change, requiring design work to differentiate the various types of content and backend work to make the new content available efficiently. </p> | #42 | Show new content in navigation drawer: #42. (This may need to be broken down into subtasks.) |
| Why can't I filter the Blogs page to see posts from specific contacts? | | This could be added, either as a blog list screen accessible via the overflow menu, similar to the forum and private group lists, or as a dropdown at the top of the feed.| #624, #864, #865, #996 | |
| Post that is continually reblogged when I add comments to it creates annoying redundancy for my contact. | | This is a tricky one because comment threads can fork. Let's look at how Tumblr and Twitter handle this. | #2154 | Research how Tumblr and Twitter handle comments/reblogs for previously seen posts: #2394. |
| When I go to contacts individually, I'd like to see their blogs. | | This could easily be added to the conversation screen's overflow menu. Alternatively, it could be added to the long-requested contact info screen. The contact info screen could also serve as an entry point for documentation. | #26 | |
| Adding nearby contact wait screen makes one unable to do other things in the app. | Can it happen in the background? | <p> By the time we know that the contact has scanned our QR code, the process is nearly finished. So with the current protocol, not much time would be saved by moving the process to the background at that point. </p><p> If we redesign the workflow and protocol for adding nearby contacts then we should keep this request in mind, but that redesign is probably too big a piece of work to tackle in the remaining sponsor 6 hours. </p> | #348 | Too big for sponsor 6. |
| Ability to make others admins of private groups. | | This has been requested before. Having multiple admins would be very complex. Transferring ownership to a new admin might be feasible, but it would be too big a piece of work for the remaining sponsor 6 hours. | #920 | Too big for sponsor 6. |
| Bigger buttons. | | More information needed. | | Ask for more info. |
| Too many similar terms. | | More information needed. | | Ask for more info. |
| Notifications are clunky. | | More information needed. | | Ask for more info. |
| Restructure actions so you just write a post and then decide who sees it (eg private, a contact, a group, or all). | | <p> If the request is only intended to apply to blogs then it should be feasible. It would require UX and backend changes, including a small protocol change to let recipients know whether they're allowed to re-share the post. </p><p> If the request is intended to apply across the app, ie to make it possible to write some content and then decide whether it should be a private message, a blog post, etc, then that would be more complex (for example, private messages support attachments but other types of content don't). Email clients and some messengers support this, and it's useful to be able to create an ad hoc group for a conversation. We should keep this use case in mind when working on public mesh protocols. </p> | #1013 | |akwizgranakwizgranhttps://code.briarproject.org/briar/public-mesh-research/-/issues/18Experimentation orchestration library: Mobly2023-08-28T16:08:01ZSebastianExperimentation orchestration library: Mobly* https://github.com/google/mobly
* https://github.com/google/mobly/issues/666* https://github.com/google/mobly
* https://github.com/google/mobly/issues/666Public mesh researchhttps://code.briarproject.org/briar/briar-mailbox/-/issues/173Enable proguard minification2023-03-15T12:23:31ZSebastianEnable proguard minificationMailbox: ReleaseIvanaIvanahttps://code.briarproject.org/briar/briar-mailbox/-/issues/172Update target SDK to 332023-02-07T13:23:54ZSebastianUpdate target SDK to 33MailboxTorsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/2384Notification 'Briar mailbox is unvailable' should be dismissed when the user ...2023-02-09T13:48:42ZIvanaNotification 'Briar mailbox is unvailable' should be dismissed when the user taps on itAfter linked mailbox becomes unreachable by Briar for a period of time of 5 hours or more, the Briar shows notification that the Briar mailbox is unavailable... see screenshot.
![Screenshot_20221110_130400](/uploads/f04c1087b46b9d878b5...After linked mailbox becomes unreachable by Briar for a period of time of 5 hours or more, the Briar shows notification that the Briar mailbox is unavailable... see screenshot.
![Screenshot_20221110_130400](/uploads/f04c1087b46b9d878b5eb7afa6edffe4/Screenshot_20221110_130400.png)
If the user taps on notification they are taken to the mailbox status screen - where they can check connection with mailbox and then go through the troubleshooting algoritm. In troubleshooting, user selects - no access to amilbox, and then unlinks the mailbox
![Screenshot_20221110_130530](/uploads/195fe7e9c5f091f82744142cce13490f/Screenshot_20221110_130530.png)
User gets confirmation that the mailbox has been unlinked
But the notification is still there...
![Screenshot_20221110_130951](/uploads/d83653e8bbe70c6b29d286abff1a0058/Screenshot_20221110_130951.png)Mailbox: UnpairingIvanaIvanahttps://code.briarproject.org/briar/briar-desktop/-/issues/432Show forum sharing status2022-12-07T16:16:55ZMikolai GütschowShow forum sharing statuspart of #13
Probably in a drawer similar to the Introduction screen?part of #13
Probably in a drawer similar to the Introduction screen?Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/431Allow to share forums with contacts2023-01-26T10:39:57ZMikolai GütschowAllow to share forums with contactspart of #13part of #13Desktop 0.4.0Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-mailbox/-/issues/171Reproducible builds2023-02-17T14:02:59ZakwizgranReproducible buildsBuild the mailbox app reproducibly, perhaps by modifying briar-reproducer. Set up CI hooks so that a reproducible build is triggered when a tag is pushed.Build the mailbox app reproducibly, perhaps by modifying briar-reproducer. Set up CI hooks so that a reproducible build is triggered when a tag is pushed.Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/website/-/issues/42Add page for Briar Mailbox2023-06-19T14:02:01ZakwizgranAdd page for Briar MailboxAdd a page explaining what Briar Mailbox does and how to download it.Add a page explaining what Briar Mailbox does and how to download it.Mailbox: Releasehttps://code.briarproject.org/briar/briar-mailbox/-/issues/170Add Briar Mailbox to Google Play2023-05-16T12:36:27ZakwizgranAdd Briar Mailbox to Google PlayClosed testing initially, then open testing, then production.Closed testing initially, then open testing, then production.Mailbox: Releaseakwizgranakwizgranhttps://code.briarproject.org/briar/briar-mailbox/-/issues/169Add Briar Mailbox to our F-Droid repo2023-05-16T12:36:47ZakwizgranAdd Briar Mailbox to our F-Droid repoMailbox: Releaseakwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/2383WIP Graphics not displayed in landscape orientation2022-11-08T12:48:58ZIvanaWIP Graphics not displayed in landscape orientationWorkflow: create new nearby contact
Documenting everything workflow by workflow.. will attach the docs when done.. this is a WIP ticketWorkflow: create new nearby contact
Documenting everything workflow by workflow.. will attach the docs when done.. this is a WIP tickethttps://code.briarproject.org/briar/briar-desktop/-/issues/429Put FAQ questions and answers into manual section of the app2022-11-09T13:35:23ZSebastianPut FAQ questions and answers into manual section of the appMaybe we should have the FAQ questions accessible in the app. We probably don't want to link to the online manual (or at least not with an actual clickable link) so maybe it would be good to include them in a manual-like section in the ...Maybe we should have the FAQ questions accessible in the app. We probably don't want to link to the online manual (or at least not with an actual clickable link) so maybe it would be good to include them in a manual-like section in the app.https://code.briarproject.org/briar/briar-desktop/-/issues/428Common best way to handle unread messages in private chats and forums2022-11-07T23:40:58ZMikolai GütschowCommon best way to handle unread messages in private chats and forumsquoting from https://code.briarproject.org/briar/briar-desktop/-/merge_requests/257#note_72160:
> I've played with it as well, and don't see any real difference either. Some things don't look optimal though: we're using `firstVisibleIte...quoting from https://code.briarproject.org/briar/briar-desktop/-/merge_requests/257#note_72160:
> I've played with it as well, and don't see any real difference either. Some things don't look optimal though: we're using `firstVisibleItemScrollOffset` as the key, which is dependent on a `State`. If I'm not mistaken, this means that as soon as the `scrollState` changes, the encapsulating composable (`UnreadFabs` in this case) will be recomposed. Also, the callback inside `remember` is called as soon as this key changes, which it will all the time during scrolling.
>
> I've compared your implementation with the one for private messages and it looks surprisingly different, using a `produceState` instead. Trying to adopt this here didn't lead to any improvements from what I could tell, so I would opt for leaving it as it was, also dropping the `derivedStateOf` commit.
>
> We should however have a look at this again in the future and try to find a common way of handling unread messages for private chats and forums > new issue.https://code.briarproject.org/briar/briar-desktop/-/issues/427Implement upper bound on nesting level in threaded conversations2023-01-31T08:55:44ZMikolai GütschowImplement upper bound on nesting level in threaded conversationsSimilar to Briar Android, to avoid strange visual representation with arbitrarily deep nesting. We could probably adopt a higher limit though since the screen size is usually bigger on desktops. Or we could get fancy and dynamically adap...Similar to Briar Android, to avoid strange visual representation with arbitrarily deep nesting. We could probably adopt a higher limit though since the screen size is usually bigger on desktops. Or we could get fancy and dynamically adapt the limit to the window size?
![grafik](/uploads/1d1dd5014443826c3b3816b953ea413b/grafik.png)Desktop 0.4.0Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar-desktop/-/issues/426Show tooltip on TrustIndicator explaining the symbols2022-11-30T20:36:54ZMikolai GütschowShow tooltip on TrustIndicator explaining the symbolsNot sure if we want a very short tooltip, like "trusted contact" or something more elaborate that explains the symbols in more detail? Opinions @grote @sebkur ?Not sure if we want a very short tooltip, like "trusted contact" or something more elaborate that explains the symbols in more detail? Opinions @grote @sebkur ?Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/425Option to drag and drop images from files browsers etc into private chat views2022-11-04T15:05:18ZSebastianOption to drag and drop images from files browsers etc into private chat viewshttps://code.briarproject.org/briar/briar-desktop/-/issues/424Visual bug with long names in contact list2022-12-07T11:55:50ZMikolai GütschowVisual bug with long names in contact listJust experienced this after starting `TestRandomConversation`:
![image](/uploads/078a7c5b38970284de796b429fffc852/image.png)Just experienced this after starting `TestRandomConversation`:
![image](/uploads/078a7c5b38970284de796b429fffc852/image.png)Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-manual/-/issues/10Sidebar is not scrollable2022-11-02T12:30:56ZakwizgranSidebar is not scrollableThe sidebar containing the language menu and table of contents is not scrollable. This makes some translations and/or parts of the table of contents unreachable on certain screens.The sidebar containing the language menu and table of contents is not scrollable. This makes some translations and/or parts of the table of contents unreachable on certain screens.akwizgranakwizgran