From d529a851e0177b792e83937a2ce0f93396943d48 Mon Sep 17 00:00:00 2001 From: ggurdin Date: Fri, 6 Jun 2025 15:17:18 -0400 Subject: [PATCH] chore: some sentry fixes --- lib/pages/chat_list/space_view.dart | 16 ++++++++++------ .../activity_suggestions_area.dart | 12 +++++++----- .../client_analytics_extension.dart | 6 +++++- .../chat_settings/pages/pangea_chat_details.dart | 7 +------ lib/pangea/common/config/environment.dart | 7 +------ .../practice_activity/word_audio_button.dart | 12 ++++++++++-- 6 files changed, 34 insertions(+), 26 deletions(-) diff --git a/lib/pages/chat_list/space_view.dart b/lib/pages/chat_list/space_view.dart index 70ece9b0c..d6f964a22 100644 --- a/lib/pages/chat_list/space_view.dart +++ b/lib/pages/chat_list/space_view.dart @@ -178,13 +178,17 @@ class _SpaceViewState extends State { await _joinDefaultChats(); } catch (e, s) { Logs().w('Unable to load hierarchy', e, s); - if (!mounted) return; - ScaffoldMessenger.of(context) - .showSnackBar(SnackBar(content: Text(e.toLocalizedString(context)))); + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(e.toLocalizedString(context))), + ); + } } finally { - setState(() { - _isLoading = false; - }); + if (mounted) { + setState(() { + _isLoading = false; + }); + } } } diff --git a/lib/pangea/activity_suggestions/activity_suggestions_area.dart b/lib/pangea/activity_suggestions/activity_suggestions_area.dart index 763c5a998..0e4121969 100644 --- a/lib/pangea/activity_suggestions/activity_suggestions_area.dart +++ b/lib/pangea/activity_suggestions/activity_suggestions_area.dart @@ -114,13 +114,15 @@ class ActivitySuggestionsAreaState extends State { final resp = await ActivitySearchRepo.get(request).timeout( const Duration(seconds: 5), onTimeout: () { - setState(() { - _timeout = true; - _loading = false; - }); + if (mounted) { + setState(() { + _timeout = true; + _loading = false; + }); + } Future.delayed(const Duration(seconds: 5), () { - _setActivityItems(retries: retries + 1); + if (mounted) _setActivityItems(retries: retries + 1); }); return ActivityPlanResponse(activityPlans: []); }, diff --git a/lib/pangea/analytics_misc/client_analytics_extension.dart b/lib/pangea/analytics_misc/client_analytics_extension.dart index 2fa509be7..9eb1ca142 100644 --- a/lib/pangea/analytics_misc/client_analytics_extension.dart +++ b/lib/pangea/analytics_misc/client_analytics_extension.dart @@ -132,7 +132,11 @@ extension AnalyticsClientExtension on Client { /// so other members of the space need to add their analytics rooms to the space. Future addAnalyticsRoomsToSpaces() async { if (userID == null || userID == BotName.byEnvironment) return; - final spaces = rooms.where((room) => room.isSpace).toList(); + final spaces = rooms + .where( + (room) => room.isSpace && room.membership == Membership.join, + ) + .toList(); final Random random = Random(); for (final space in spaces) { diff --git a/lib/pangea/chat_settings/pages/pangea_chat_details.dart b/lib/pangea/chat_settings/pages/pangea_chat_details.dart index 9d5079f29..8eacef481 100644 --- a/lib/pangea/chat_settings/pages/pangea_chat_details.dart +++ b/lib/pangea/chat_settings/pages/pangea_chat_details.dart @@ -304,7 +304,7 @@ class RoomDetailsButtonRowState extends State { super.dispose(); } - final double _buttonWidth = 165.0; + final double _buttonWidth = 125.0; final double _buttonHeight = 84.0; final double _miniButtonWidth = 50.0; @@ -500,11 +500,6 @@ class RoomDetailsButtonRowState extends State { final mini = fullButtonCapacity < 4; final capacity = mini ? miniButtonCapacity : fullButtonCapacity; - debugPrint( - "RoomDetailsButtonRow: $fullButtonCapacity buttons available", - ); - debugPrint("Available width: $availableWidth"); - List mainViewButtons = buttons.where((button) => button.showInMainView).toList(); final List otherButtons = diff --git a/lib/pangea/common/config/environment.dart b/lib/pangea/common/config/environment.dart index 9e984784b..26b0ce898 100644 --- a/lib/pangea/common/config/environment.dart +++ b/lib/pangea/common/config/environment.dart @@ -121,12 +121,7 @@ class Environment { try { final String jsonString = await rootBundle.loadString('envs.json'); data = jsonDecode(jsonString); - } catch (e, s) { - ErrorHandler.logError( - e: e, - s: s, - data: {}, - ); + } catch (e) { return []; } diff --git a/lib/pangea/toolbar/widgets/practice_activity/word_audio_button.dart b/lib/pangea/toolbar/widgets/practice_activity/word_audio_button.dart index 37ce838d8..605053ae2 100644 --- a/lib/pangea/toolbar/widgets/practice_activity/word_audio_button.dart +++ b/lib/pangea/toolbar/widgets/practice_activity/word_audio_button.dart @@ -91,8 +91,16 @@ class WordAudioButtonState extends State { context: context, targetID: 'word-audio-button-${widget.uniqueID}', langCode: widget.langCode, - onStart: () => setState(() => _isPlaying = true), - onStop: () => setState(() => _isPlaying = false), + onStart: () { + if (mounted) { + setState(() => _isPlaying = true); + } + }, + onStop: () { + if (mounted) { + setState(() => _isPlaying = false); + } + }, ); } },