From 2a2904e71751fe92c4c187e5a14c78d2318ed0d1 Mon Sep 17 00:00:00 2001 From: Terence ZAFINDRATAFA Date: Thu, 18 Jul 2024 11:14:04 +0200 Subject: [PATCH] TW-1887: request notification on chat screen click --- lib/pages/chat/chat.dart | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/pages/chat/chat.dart b/lib/pages/chat/chat.dart index 089441c617..ce2f7d324e 100644 --- a/lib/pages/chat/chat.dart +++ b/lib/pages/chat/chat.dart @@ -17,6 +17,7 @@ import 'package:fluffychat/utils/room_status_extension.dart'; import 'package:fluffychat/widgets/context_menu/context_menu_action.dart'; import 'package:fluffychat/widgets/mixins/popup_menu_widget_style.dart'; import 'package:fluffychat/widgets/mixins/twake_context_menu_mixin.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter_typeahead/flutter_typeahead.dart'; import 'package:fluffychat/utils/extension/global_key_extension.dart'; import 'package:inview_notifier_list/inview_notifier_list.dart'; @@ -1971,6 +1972,16 @@ class ChatController extends State } } + void requestNotificationPermission() { + if (kIsWeb) { + try { + html.Notification.requestPermission(); + } catch (e) { + Logs().e("Error requesting notification permission: $e"); + } + } + } + @override void dispose() { unregisterPasteShortcutListeners(); @@ -2015,7 +2026,10 @@ class ChatController extends State Widget build(BuildContext context) { return MouseRegion( onHover: (_) => _resetLocationPath(), - child: ChatView(this, key: widget.key), + child: GestureDetector( + onTap: requestNotificationPermission, + child: ChatView(this, key: widget.key), + ), ); } }