Also sends a to-device message to the sender, prompting them to auto-rageshake too if they have this lab enabled as well.
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
* Add a new flag pseudonymousAnalyticsOptIn replacing analyticsOptIn, stored at account level, so people only need to opt in once.
* Show a toast in login to users that have analyticsOptIn set but not yet pseudonymousAnalyticsOptIn prompting them confirm the new method is okay. Update the copy of the existing opt-in toast. Don't notify users that previously opted out.
* Update the copy in settings
* Add a new learn more dialog
* Support a new config flag analyticsOwner which is used in these toasts when explaining which entity the data is sent to ("Help improve %(analyticsOwner)"). If unset, display brand. This allows deployments whose brand differs from the receiver of the analytics to explain the situation to their users (e.g. AcmeCorp badges their app, but explains the data is sent to Element, not them)
* The new opt-in and flags are only used when posthog is configured; prior to that there are no changes to UX or tracking behaviour.
* Fix bulk invite button getting a negative counter
Signed-off-by: Renan <renancleyson.f@gmail.com>
* Change invites to be count on membership events
Signed-off-by: Renan <renancleyson.f@gmail.com>
* Remove unnecessary bind
* Change invitedRooms state to a set of ids
Signed-off-by: Renan <renancleyson.f@gmail.com>
Overhaul the device list in the "Security and Privacy" settings tab to include device trust status, provide buttons for verifying unverified devices, and improve overall usability and style. This should now be the primary interface for checking and changing the trust status of your own devices, rather than looking at your own user profile in the right panel.
* Enable sentry global handlers if automaticErrorReporting is on
* Pass the exception through on session restore error
Passing the exception object itself through to the BugReportDialog means a stack trace can be correctly recorded in Sentry
This is to prevent user confusion about whether or not a setting exists, or even what its value is. By rendering it with `disabled=true` the user is at least aware that the setting is set to a specific value, though we could (and should) do better in the future to communicate *why* a setting is disabled.
Fixes https://github.com/vector-im/element-web/issues/14602
This has proven to be less useful month over month, so it's time for it to go. The initial goal for keeping it was to track stability in the ~6 months post-release, which means it should have left around the start of 2021. At the time, Spaces was on the horizon with room list corruption issues though, so it was put on hold. These days, it's rock solid and doesn't appear to be causing issues. As such, the logging can leave in favour of more specific/targeted logging when we need it.
This might even speed things up as it's not hitting the SettingsStore every 0.2 seconds.