briar issueshttps://code.briarproject.org/groups/briar/-/issues2020-11-30T12:45:14Zhttps://code.briarproject.org/briar/briar/-/issues/1830Update blog and forum sharing clients to include a self-destruct timer in eac...2020-11-30T12:45:14ZakwizgranUpdate blog and forum sharing clients to include a self-destruct timer in each messageSubtask of #804Subtask of #804Self-destructing messagesakwizgranakwizgran2021-01-31https://code.briarproject.org/briar/briar/-/issues/1829Update introduction client to include a self-destruct timer in each message2020-11-30T12:45:13ZakwizgranUpdate introduction client to include a self-destruct timer in each messageSubtask of #804Subtask of #804Self-destructing messagesakwizgranakwizgran2021-01-31https://code.briarproject.org/briar/briar/-/issues/1828Update messaging client to include a self-destruct timer in each message2020-11-30T12:45:13ZakwizgranUpdate messaging client to include a self-destruct timer in each messageSubtask of #804Subtask of #804Self-destructing messagesakwizgranakwizgran2021-01-31https://code.briarproject.org/briar/briar/-/issues/1826Finish migrating SettingsFragment to ViewModel2021-04-01T13:22:18ZakwizgranFinish migrating SettingsFragment to ViewModelA ViewModel for Settings has been introduced in #214 ([`214-user-avatars`](https://code.briarproject.org/briar/briar/-/tree/214-user-avatars)). The rest of the non-UI logic should get migrated there and exposed via LiveData.
Subtask of ...A ViewModel for Settings has been introduced in #214 ([`214-user-avatars`](https://code.briarproject.org/briar/briar/-/tree/214-user-avatars)). The rest of the non-UI logic should get migrated there and exposed via LiveData.
Subtask of #1823.Adapt to changes in the Android platformTorsten GroteTorsten Grote2021-04-30https://code.briarproject.org/briar/briar-gtk/-/issues/80Use GTK 4 ListView and ListModel for lists2021-03-02T12:19:14ZNicoUse GTK 4 ListView and ListModel for listsWith the [scalable lists in GTK 4](https://blog.gtk.org/2020/06/07/scalable-lists-in-gtk-4/) (https://code.briarproject.org/briar/briar-gtk/-/issues/87), we can use something similar to Android's RecyclerView/ListViewAdapter. By using th...With the [scalable lists in GTK 4](https://blog.gtk.org/2020/06/07/scalable-lists-in-gtk-4/) (https://code.briarproject.org/briar/briar-gtk/-/issues/87), we can use something similar to Android's RecyclerView/ListViewAdapter. By using them, we could update the data and request GTK to render the updates. This is interesting for all sorts of issues:
* https://code.briarproject.org/briar/briar-gtk/-/issues/48
* https://code.briarproject.org/briar/briar-gtk/-/issues/47
* https://code.briarproject.org/briar/briar-gtk/-/issues/7
* https://code.briarproject.org/briar/briar-gtk/-/issues/69
* https://code.briarproject.org/briar/briar-gtk/-/issues/5
* https://code.briarproject.org/briar/briar-gtk/-/issues/8
* https://code.briarproject.org/briar/briar-gtk/-/issues/73
There's even an [`GtkTreeExpander`](https://developer.gnome.org/gtk4/4.0/gtk4-GtkTreeExpander.html) that will become quite handy with groups (https://code.briarproject.org/briar/briar-gtk/-/issues/21), forums (https://code.briarproject.org/briar/briar-gtk/-/issues/32) and blogs (https://code.briarproject.org/briar/briar-gtk/-/issues/33).
Interesting links:
* https://developer.gnome.org/gtk4/4.0/GtkListView.html
* https://developer.gnome.org/gio/2.64/GListModel.html
* https://developer.gnome.org/gtk4/4.0/GtkBuilderListItemFactory.htmlGTK 0.2.0-beta1https://code.briarproject.org/briar/briar/-/issues/1812Update own mailbox's contact list when contacts are added or removed2022-08-12T12:44:40ZakwizgranUpdate own mailbox's contact list when contacts are added or removedWhen a contact is added, updated or deleted, queue an update on any open connections to the user's own mailbox.
Related to briar-mailbox#4, #2188. Depends on #2182, #2183, #2187, #2184.When a contact is added, updated or deleted, queue an update on any open connections to the user's own mailbox.
Related to briar-mailbox#4, #2188. Depends on #2182, #2183, #2187, #2184.Mailbox: Contact management API2022-10-31https://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/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-gtk/-/issues/75Split translation file of Briar GTK and its metadata2020-10-06T17:45:43ZNicoSplit translation file of Briar GTK and its metadataIn order to being able to focus more on the translation of Briar GTK's core components, I though about splitting up the translation file into a Python/UI part and a metadata part.
We currently have 90 strings to translate for Briar GTK,...In order to being able to focus more on the translation of Briar GTK's core components, I though about splitting up the translation file into a Python/UI part and a metadata part.
We currently have 90 strings to translate for Briar GTK, and roughly half of it are coming from its [metainfo file](https://code.briarproject.org/briar/briar-gtk/-/blob/0e83afe95a9ca1df7c4084d0de68eabe8ad6f85e/briar-gtk/data/app.briar.gtk.metainfo.xml.in). This file is used by programs like [GNOME Software](https://wiki.gnome.org/Apps/Software) to generate a beautiful application page. However, especially the changelog part I don't see as critical as the core program and therefore suggest to split it up. It's just a matter of changing one line of code in [_tools/generate_data.sh_](https://code.briarproject.org/briar/briar-gtk/-/blob/0e83afe95a9ca1df7c4084d0de68eabe8ad6f85e/tools/generate_data.sh#L35) and doing some configuration in Transifex. Since I'm now a maintainer there, I can do this all on my own.
Once we have things split up, we can start to [prioritize core components](https://docs.transifex.com/projects/categorizing-and-prioritizing-resources) of Briar. I suggest to make the Android and GTK parts "Urgent", the manual "High" and GTK's metadata "Normal".
CC @akwizgran @groteGTK 0.1.0-beta2NicoNicohttps://code.briarproject.org/briar/python-briar-wrapper/-/issues/19Adding contacts remotely does not check return value, hides errors2021-03-08T13:24:27ZTorsten GroteAdding contacts remotely does not check return value, hides errorsIt looks like, the result of the POST request isn't checked here:
https://code.briarproject.org/briar/python-briar-wrapper/-/blob/b8ac26b21dd5b3580d49a582c7b16cebd6c3dc3e/briar_wrapper/models/contacts.py#L37
I found this when debugging...It looks like, the result of the POST request isn't checked here:
https://code.briarproject.org/briar/python-briar-wrapper/-/blob/b8ac26b21dd5b3580d49a582c7b16cebd6c3dc3e/briar_wrapper/models/contacts.py#L37
I found this when debugging why failed pending contacts don't get re-added. Check how the Android UI handles this:
* https://code.briarproject.org/briar/briar/-/blob/1f246637e25a9e53e7b9ec8961e1ad6bf26a7daf/briar-android/src/main/java/org/briarproject/briar/android/contact/add/remote/NicknameFragment.java#L123
* https://code.briarproject.org/briar/briar/-/blob/1f246637e25a9e53e7b9ec8961e1ad6bf26a7daf/briar-android/src/main/java/org/briarproject/briar/android/contact/add/remote/AddContactViewModel.java#L124Wrapper 0.0.7NicoNicohttps://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-gtk/-/issues/68Providing context in translation strings requires Python 3.82020-10-02T09:14:47ZNicoProviding context in translation strings requires Python 3.8In https://code.briarproject.org/briar/briar-gtk/-/merge_requests/67 I tried to react to the issues in Transifex by adding context to some strings. This required using `gettext.pgettext` which is a new feature in Python 3.8.
Python 3.8 ...In https://code.briarproject.org/briar/briar-gtk/-/merge_requests/67 I tried to react to the issues in Transifex by adding context to some strings. This required using `gettext.pgettext` which is a new feature in Python 3.8.
Python 3.8 isn't available in Debian stable and it's still a year (?) until a new version of Debian is released.
With @grote I was discussing whether requiring Python 3.8 is worth only for providing context, because it excludes users on Debian stable.
Reading [L10n Lab's Developer Guidelines](https://www.localizationlab.org/roles-guidelines#developer) I learned that there is an "Instructions field in the Web Editor to provide translators with context when possible". I don't seem to be able to use it since I'm only a Translator on Briar's project.
@akwizgran What's your opinion on that? Maybe we can also get Lab peoples' opinion on this?
Before reverting that changes and making yet another update to the source files, I wanted to hear your opinions on this topic.GTK 0.1.0-beta2NicoNicohttps://code.briarproject.org/briar/briar-gtk/-/issues/59Migrate to libhandy 12020-09-01T08:28:49ZNicoMigrate to libhandy 1As of August 7, [a first beta release is available](https://mamot.fr/@KekunPlazas/104648142113069390).
The code to build can now be downloaded from [gnome.org](https://download.gnome.org/sources/libhandy/0.90/).
A [migration guide](htt...As of August 7, [a first beta release is available](https://mamot.fr/@KekunPlazas/104648142113069390).
The code to build can now be downloaded from [gnome.org](https://download.gnome.org/sources/libhandy/0.90/).
A [migration guide](https://gnome.pages.gitlab.gnome.org/libhandy/hdy-migrating-0-0-to-1.html) is available, just as [packages for Debian](https://packages.debian.org/bullseye/libhandy-1-0).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/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/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/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/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/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/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.