add window_manager plug in to get desktop active state to gate windows notifications; also add spam prevention to windows notifications #338
No reviewers
Labels
No Label
android
arch
backlog
blocked-on-external
bug
bugbash
component/bindings
component/bine
component/connectivity
component/cwtch
component/tapir
component/ui
cwtch-1.14
cwtch-1.15
cwtch-beta-1.1
cwtch-beta-1.10
cwtch-beta-1.11
cwtch-beta-1.12
cwtch-beta-1.13
cwtch-beta-1.2
cwtch-beta-1.3
cwtch-beta-1.4
cwtch-beta-1.5
cwtch-beta-1.5.x
cwtch-beta-1.6
cwtch-beta-1.7
cwtch-beta-1.8
cwtch-beta-1.9
design
duplicate
enhancement
flutter
funding-needed
help wanted
hybrid-groups
in-nightly
in-progress
invalid
ios
linux
mac
need-replication-or-investigation
ops
packaging
post-stable
question
questionable
requires-more-effort-than-we-can-spare
rust
scheduled
stable-blocker
tails
testing-needed
tests
tor
waiting-on-fix-confirmation
waiting-on-new-flutter-feature
whonix
windows
wontfix
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: cwtch.im/cwtch-ui#338
Loading…
Reference in New Issue
No description provided.
Delete Branch "winFocus"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Drone Build Status: failure
https://build.openprivacy.ca/cwtch.im/cwtch-ui/519
@ -35,22 +38,43 @@ class LinuxNotificationsManager implements NotificationsManager {
// windows notifications
class WindowsNotificationManager implements NotificationsManager {
late ToastService service;
bool active = false;
why both focus and active?
active is if a notification is active. it was firing a notification for every message, and they all need interacting with and dismisal on windows, it's not great. this rate limits it a bit, if the user hasnt yet interacted with one notification, don't fire more
@ -45,0 +49,4 @@
service.stream.listen((event) {
if (event is ToastDismissed) {
print('Toast was dismissed.');
remove
@ -45,0 +53,4 @@
active = false;
}
if (event is ToastActivated) {
print('Toast was clicked.');
remove
@ -45,0 +57,4 @@
active = false;
}
if (event is ToastInteracted) {
print('${event.action} action in the toast was clicked.');
remove
@ -54,0 +67,4 @@
if (!globalAppState.focus) {
if (!active) {
Toast toast = new Toast(
type: ToastType.text02,
document comment that
text02
is "contains subtitle"Drone Build Status: failure
https://build.openprivacy.ca/cwtch.im/cwtch-ui/518
Drone Build Status: success
https://build.openprivacy.ca/cwtch.im/cwtch-ui/520
Drone Build Status: success
https://build.openprivacy.ca/cwtch.im/cwtch-ui/521
Drone Build Status: success
https://build.openprivacy.ca/cwtch.im/cwtch-ui/525