From b6e24ab59aaf7ecafd6861e912c348ac6dbc4546 Mon Sep 17 00:00:00 2001 From: SputNikPlop <100245448+SputNikPlop@users.noreply.github.com> Date: Fri, 24 May 2024 00:45:45 -0700 Subject: [PATCH 1/2] fix: flutter deprecatios for 3.22 --- README.md | 5 +- assets/apple-download.svg | 46 +++++++ assets/google-play-badge.png | Bin 0 -> 12127 bytes lib/main.dart | 8 +- lib/src/core/resources/data_state.dart | 2 +- lib/src/core/resources/themes.dart | 36 ++--- .../utils/crashlytics_talker_observer.dart | 22 +-- lib/src/core/utils/dashboard_events.dart | 3 +- lib/src/core/utils/init_dio.dart | 3 +- .../stream_elements/se_activity_dto.dart | 4 +- .../twitch/twitch_decoded_idtoken_dto.dart | 1 - .../data/entities/twitch/twitch_poll_dto.dart | 2 +- .../data/entities/twitch/twitch_user_dto.dart | 1 - .../domain/entities/chat/chat_message.dart | 91 ++++++++----- .../entities/stream_elements/se_activity.dart | 4 +- .../entities/stream_elements/se_song.dart | 4 +- .../streamelements_repository.dart | 3 +- .../usecases/streamelements_usecase.dart | 7 +- .../controllers/dashboard_controller.dart | 3 +- .../controllers/home_view_controller.dart | 3 +- .../streamelements_view_controller.dart | 4 +- lib/src/presentation/events/home_events.dart | 10 +- .../events/streamelements_events.dart | 6 +- lib/src/presentation/views/home_view.dart | 30 ++-- lib/src/presentation/views/login_view.dart | 2 +- lib/src/presentation/views/settings_view.dart | 13 +- .../chats/chat_message/kick/kick_emote.dart | 3 +- .../chat_message/shared/author_name.dart | 5 +- .../shared/message_container.dart | 2 +- .../twitch/moderation_bottom_sheet.dart | 8 +- .../presentation/widgets/chats/chat_view.dart | 128 +++++++++--------- lib/src/presentation/widgets/dashboard.dart | 3 +- lib/src/presentation/widgets/hype_train.dart | 1 - .../widgets/settings/chat_events.dart | 4 +- .../widgets/settings/chats_joined.dart | 4 +- .../settings/dashboard_settings_view.dart | 16 +-- .../dialogs/in_app_purchase_dialog.dart | 2 +- .../settings/manage_list_browser_tabs.dart | 8 +- .../settings/manage_list_hidden_users.dart | 2 +- .../presentation/widgets/settings/tts.dart | 14 +- .../stream_elements/se_song_requests.dart | 8 +- .../tabs/dialogs/slow_mode_dialog.dart | 2 +- .../widgets/tabs/obs_tab_view.dart | 4 +- .../widgets/tabs/streamelements_tab_view.dart | 2 +- .../widgets/tabs/twitch_tab_view.dart | 2 +- pubspec.lock | 24 ++-- test/widget_test.dart | 4 +- 47 files changed, 324 insertions(+), 235 deletions(-) create mode 100644 assets/apple-download.svg create mode 100644 assets/google-play-badge.png diff --git a/README.md b/README.md index aeec98cb..795c0b69 100644 --- a/README.md +++ b/README.md @@ -8,12 +8,11 @@ IRL Link is a mobile application to monitor your IRL Stream. [![GitHub](https://img.shields.io/github/license/lezdcs/irl_link?color=%238442f5)](https://choosealicense.com/licenses/gpl-3.0/) ## Download -Get it on Google Play -Get it on the App Store +Get it on Google Play +Download on the App Store Also available in the [Releases](https://github.com/LezdCS/irl_link/releases).
-Soon to be released on the iOS App Store! ## Features diff --git a/assets/apple-download.svg b/assets/apple-download.svg new file mode 100644 index 00000000..072b425a --- /dev/null +++ b/assets/apple-download.svg @@ -0,0 +1,46 @@ + + Download_on_the_App_Store_Badge_US-UK_RGB_blk_4SVG_092917 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/google-play-badge.png b/assets/google-play-badge.png new file mode 100644 index 0000000000000000000000000000000000000000..ca73005f5a50258f12e2dc2e0f8d478f9c34d968 GIT binary patch literal 12127 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 { this.data, this.error, }) { - if(error != null) { + if (error != null) { globals.talker?.error(error); } } diff --git a/lib/src/core/resources/themes.dart b/lib/src/core/resources/themes.dart index 6165405f..869af2f8 100644 --- a/lib/src/core/resources/themes.dart +++ b/lib/src/core/resources/themes.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; class Themes { final ThemeData darkTheme = ThemeData.dark().copyWith( colorScheme: ColorScheme.fromSwatch().copyWith( - background: const Color(0xFF0e0e10), + surface: const Color(0xFF0e0e10), secondary: const Color(0xFF18181b), error: const Color(0xFFEC0808), @@ -25,23 +25,23 @@ class Themes { ), ), switchTheme: SwitchThemeData( - thumbColor: MaterialStateProperty.resolveWith( - (Set states) { - if (states.contains(MaterialState.selected)) { + thumbColor: WidgetStateProperty.resolveWith( + (Set states) { + if (states.contains(WidgetState.selected)) { return Colors.white; } - if (states.contains(MaterialState.disabled)) { + if (states.contains(WidgetState.disabled)) { return null; } return Colors.white; }, ), - trackColor: MaterialStateProperty.resolveWith( - (Set states) { - if (states.contains(MaterialState.selected)) { + trackColor: WidgetStateProperty.resolveWith( + (Set states) { + if (states.contains(WidgetState.selected)) { return Colors.deepPurpleAccent[200]; } - if (states.contains(MaterialState.disabled)) { + if (states.contains(WidgetState.disabled)) { return Colors.grey[850]; } return Colors.grey[850]; @@ -61,7 +61,7 @@ class Themes { final ThemeData lightTheme = ThemeData.light().copyWith( colorScheme: ColorScheme.fromSwatch().copyWith( - background: const Color(0xFFffffff), + surface: const Color(0xFFffffff), secondary: const Color(0xFFefeff1), error: const Color(0xFFEC0808), @@ -77,23 +77,23 @@ class Themes { ), ), switchTheme: SwitchThemeData( - thumbColor: MaterialStateProperty.resolveWith( - (Set states) { - if (states.contains(MaterialState.selected)) { + thumbColor: WidgetStateProperty.resolveWith( + (Set states) { + if (states.contains(WidgetState.selected)) { return Colors.white; } - if (states.contains(MaterialState.disabled)) { + if (states.contains(WidgetState.disabled)) { return null; } return Colors.white; }, ), - trackColor: MaterialStateProperty.resolveWith( - (Set states) { - if (states.contains(MaterialState.selected)) { + trackColor: WidgetStateProperty.resolveWith( + (Set states) { + if (states.contains(WidgetState.selected)) { return Colors.deepPurpleAccent[200]; } - if (states.contains(MaterialState.disabled)) { + if (states.contains(WidgetState.disabled)) { return Colors.grey[850]; } return Colors.grey[850]; diff --git a/lib/src/core/utils/crashlytics_talker_observer.dart b/lib/src/core/utils/crashlytics_talker_observer.dart index 2fe4d48f..5e6d9571 100644 --- a/lib/src/core/utils/crashlytics_talker_observer.dart +++ b/lib/src/core/utils/crashlytics_talker_observer.dart @@ -6,19 +6,19 @@ class CrashlyticsTalkerObserver extends TalkerObserver { @override void onError(err) { - FirebaseCrashlytics.instance.recordError( - err.error, - err.stackTrace, - reason: err.message, - ); + FirebaseCrashlytics.instance.recordError( + err.error, + err.stackTrace, + reason: err.message, + ); } @override void onException(err) { - FirebaseCrashlytics.instance.recordError( - err.exception, - err.stackTrace, - reason: err.message, - ); + FirebaseCrashlytics.instance.recordError( + err.exception, + err.stackTrace, + reason: err.message, + ); } -} \ No newline at end of file +} diff --git a/lib/src/core/utils/dashboard_events.dart b/lib/src/core/utils/dashboard_events.dart index 7383d316..9e2b76e1 100644 --- a/lib/src/core/utils/dashboard_events.dart +++ b/lib/src/core/utils/dashboard_events.dart @@ -132,7 +132,8 @@ Map dashboardEvents = { provider: DashboardActionsProvider.twitch, actionsAllowed: [DashboardActionsTypes.button], action: (String v) { - String channel = Get.find().twitchData!.twitchUser.login; + String channel = + Get.find().twitchData!.twitchUser.login; Get.find() .sendChatMessage(v.substring(1, v.length - 1), channel); }, diff --git a/lib/src/core/utils/init_dio.dart b/lib/src/core/utils/init_dio.dart index 5e8148af..b854a9ac 100644 --- a/lib/src/core/utils/init_dio.dart +++ b/lib/src/core/utils/init_dio.dart @@ -10,7 +10,8 @@ Dio initDio() { TalkerDioLogger( talker: talker, settings: TalkerDioLoggerSettings( - requestFilter: (RequestOptions options) => !options.path.contains('api.twitch.tv'), + requestFilter: (RequestOptions options) => + !options.path.contains('api.twitch.tv'), printRequestHeaders: true, // responseFilter: (response) => ![200, 202].contains(response.statusCode), ), diff --git a/lib/src/data/entities/stream_elements/se_activity_dto.dart b/lib/src/data/entities/stream_elements/se_activity_dto.dart index 8a3b8ecf..54a9421f 100644 --- a/lib/src/data/entities/stream_elements/se_activity_dto.dart +++ b/lib/src/data/entities/stream_elements/se_activity_dto.dart @@ -18,7 +18,7 @@ class SeActivityDTO extends SeActivity { factory SeActivityDTO.fromJson(Map map) { switch (map['type']) { case 'follow': - return SeActivityDTO ( + return SeActivityDTO( id: map["_id"], channel: map["channel"], username: map["data"]["displayName"], @@ -37,7 +37,7 @@ class SeActivityDTO extends SeActivity { activityType: ActivityType.subscription, ); case "tip": - return SeActivityDTO( + return SeActivityDTO( id: map["_id"], channel: map["channel"], username: map["data"]["displayName"], diff --git a/lib/src/data/entities/twitch/twitch_decoded_idtoken_dto.dart b/lib/src/data/entities/twitch/twitch_decoded_idtoken_dto.dart index 03bb1a0c..d1c03ef2 100644 --- a/lib/src/data/entities/twitch/twitch_decoded_idtoken_dto.dart +++ b/lib/src/data/entities/twitch/twitch_decoded_idtoken_dto.dart @@ -1,4 +1,3 @@ - import 'package:irllink/src/domain/entities/twitch/twitch_decoded_idtoken.dart'; class TwitchDecodedIdTokenDTO extends TwitchDecodedIdToken { diff --git a/lib/src/data/entities/twitch/twitch_poll_dto.dart b/lib/src/data/entities/twitch/twitch_poll_dto.dart index a282c79e..a0b837e9 100644 --- a/lib/src/data/entities/twitch/twitch_poll_dto.dart +++ b/lib/src/data/entities/twitch/twitch_poll_dto.dart @@ -43,7 +43,7 @@ class TwitchPollDTO extends TwitchPoll { DateFormat df = DateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"); DateTime endsAt = df.parse(map['ends_at'] ?? map['ended_at']); - + return TwitchPollDTO( id: map['id'], title: map['title'], diff --git a/lib/src/data/entities/twitch/twitch_user_dto.dart b/lib/src/data/entities/twitch/twitch_user_dto.dart index ab4f2484..5bc9ea45 100644 --- a/lib/src/data/entities/twitch/twitch_user_dto.dart +++ b/lib/src/data/entities/twitch/twitch_user_dto.dart @@ -1,4 +1,3 @@ - import 'package:irllink/src/domain/entities/twitch/twitch_user.dart'; class TwitchUserDTO extends TwitchUser { diff --git a/lib/src/domain/entities/chat/chat_message.dart b/lib/src/domain/entities/chat/chat_message.dart index fdc087e2..1aa5cdc8 100644 --- a/lib/src/domain/entities/chat/chat_message.dart +++ b/lib/src/domain/entities/chat/chat_message.dart @@ -22,12 +22,17 @@ enum Platform { } // ignore: must_be_immutable -class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGift, twitch.BitDonation, twitch.IncomingRaid { +class ChatMessage extends Equatable + implements + twitch.Subscription, + twitch.SubGift, + twitch.BitDonation, + twitch.IncomingRaid { @override final String id; @override final String authorId; - @override + @override final String username; @override final String color; @@ -51,6 +56,7 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi final String channelId; final EventType? eventType; final List badgesList; + @override final Map emotes; //TODO: emote entity final Platform platform; @@ -88,10 +94,11 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi }); factory ChatMessage.fromTwitch(twitch.ChatMessage message, String channelId) { - EventType? type = EventType.values.firstWhereOrNull( - (e) => e.toString().split('.').last == message.highlightType.toString().split('.').last, - ); + (e) => + e.toString().split('.').last == + message.highlightType.toString().split('.').last, + ); return ChatMessage( id: message.id, authorId: message.authorId, @@ -107,26 +114,42 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi isDeleted: false, rawData: message.rawData, eventType: type, - badgesList: message.badges.map((badge) => ChatBadge.fromTwitch(badge)).toList(), + badgesList: + message.badges.map((badge) => ChatBadge.fromTwitch(badge)).toList(), emotes: message.emotes, platform: Platform.twitch, channelId: channelId, //implements - raidingChannelName: type == EventType.incomingRaid ? (message as twitch.IncomingRaid).raidingChannelName : '', + raidingChannelName: type == EventType.incomingRaid + ? (message as twitch.IncomingRaid).raidingChannelName + : '', badges: message.badges, - giftedName: type == EventType.subscriptionGifted ? (message as twitch.SubGift).giftedName : '', + giftedName: type == EventType.subscriptionGifted + ? (message as twitch.SubGift).giftedName + : '', highlightType: message.highlightType, isGift: type == EventType.subscriptionGifted, - months: type == EventType.subscription ? (message as twitch.Subscription).months : '', - systemMessage: type == EventType.subscriptionGifted ? (message as twitch.SubGift).systemMessage : '', - tier: type == EventType.subscription ? (message as twitch.Subscription).tier : '', - totalBits: type == EventType.bitDonation ? (message as twitch.BitDonation).totalBits : 0, - viewerCount: type == EventType.incomingRaid ? (message as twitch.IncomingRaid).viewerCount : 0, + months: type == EventType.subscription + ? (message as twitch.Subscription).months + : '', + systemMessage: type == EventType.subscriptionGifted + ? (message as twitch.SubGift).systemMessage + : '', + tier: type == EventType.subscription + ? (message as twitch.Subscription).tier + : '', + totalBits: type == EventType.bitDonation + ? (message as twitch.BitDonation).totalBits + : 0, + viewerCount: type == EventType.incomingRaid + ? (message as twitch.IncomingRaid).viewerCount + : 0, ); } - factory ChatMessage.fromKick(KickMessage message, String channelId, List subBadges) { + factory ChatMessage.fromKick( + KickMessage message, String channelId, List subBadges) { return ChatMessage( id: message.data.id, authorId: message.data.sender.id.toString(), @@ -142,7 +165,9 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi isDeleted: false, rawData: '', eventType: null, //TODO: Add event type for KickMessage - badgesList: message.data.sender.identity.badges.map((badge) => ChatBadge.fromKick(channelId, badge, subBadges)).toList(), + badgesList: message.data.sender.identity.badges + .map((badge) => ChatBadge.fromKick(channelId, badge, subBadges)) + .toList(), emotes: const {}, //TODO: Add emotes for KickMessage platform: Platform.kick, channelId: channelId, @@ -158,11 +183,11 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi tier: '', totalBits: 0, viewerCount: 0, - ); } - factory ChatMessage.kickSub(KickSubscription sub, String channelId, List subBadges) { + factory ChatMessage.kickSub( + KickSubscription sub, String channelId, List subBadges) { return ChatMessage( id: '', authorId: '', @@ -197,7 +222,8 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi ); } - factory ChatMessage.kickSubGift(KickGiftedSubscriptions sub, String channelId, List subBadges) { + factory ChatMessage.kickSubGift(KickGiftedSubscriptions sub, String channelId, + List subBadges) { return ChatMessage( id: '', authorId: '', @@ -221,7 +247,8 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi //implements raidingChannelName: '', badges: const [], - giftedName: sub.data.giftedUsernames.first, //TODO: handle multiple usernames gifted + giftedName: sub + .data.giftedUsernames.first, //TODO: handle multiple usernames gifted highlightType: null, isGift: true, months: '', @@ -232,7 +259,8 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi ); } - factory ChatMessage.kickHost(KickStreamHost host, String channelId, List subBadges) { + factory ChatMessage.kickHost( + KickStreamHost host, String channelId, List subBadges) { return ChatMessage( id: '', authorId: '', @@ -312,13 +340,13 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi @override bool get stringify => true; - + @override String raidingChannelName; - @override + @override List badges; - + @override String displayName; @@ -327,28 +355,27 @@ class ChatMessage extends Equatable implements twitch.Subscription, twitch.SubGi @override twitch.HighlightType? highlightType; - + @override bool isGift; - + @override String months; - + @override String systemMessage; - + @override String tier; - + @override int totalBits; - + @override int viewerCount; - + @override - set rawData(String _rawData) { + set rawData(String rawData) { // TODO: implement rawData } - } diff --git a/lib/src/domain/entities/stream_elements/se_activity.dart b/lib/src/domain/entities/stream_elements/se_activity.dart index 38658303..c4d3c692 100644 --- a/lib/src/domain/entities/stream_elements/se_activity.dart +++ b/lib/src/domain/entities/stream_elements/se_activity.dart @@ -92,7 +92,7 @@ class SeActivity extends Equatable { colors.add(const Color(0xFF2E0219)); break; case ActivityType.unsupported: - //background color + //background color colors.add(const Color(0xFFA47CED)); //circle color colors.add(const Color(0xFF341D5B)); @@ -129,7 +129,7 @@ class SeActivity extends Equatable { s = '$amount Hosted viewers'; break; case ActivityType.unsupported: - s = 'Unsupported event'; + s = 'Unsupported event'; break; } return s; diff --git a/lib/src/domain/entities/stream_elements/se_song.dart b/lib/src/domain/entities/stream_elements/se_song.dart index 11bdd08e..d024530d 100644 --- a/lib/src/domain/entities/stream_elements/se_song.dart +++ b/lib/src/domain/entities/stream_elements/se_song.dart @@ -17,10 +17,10 @@ class SeSong extends Equatable { factory SeSong.fromJson(Map map) { return SeSong( - id: map["_id"] ?? '', + id: map["_id"] ?? '', title: map["title"], videoId: map["videoId"], - duration: map["duration"] ?? 0, + duration: map["duration"] ?? 0, channel: map["channel"], ); } diff --git a/lib/src/domain/repositories/streamelements_repository.dart b/lib/src/domain/repositories/streamelements_repository.dart index c8afc6a7..524a437b 100644 --- a/lib/src/domain/repositories/streamelements_repository.dart +++ b/lib/src/domain/repositories/streamelements_repository.dart @@ -9,7 +9,8 @@ import 'package:irllink/src/domain/entities/stream_elements/se_song.dart'; abstract class StreamelementsRepository { Future> login(StreamelementsAuthParams params); - Future> refreshAccessToken(SeCredentials seCredentials); + Future> refreshAccessToken( + SeCredentials seCredentials); Future> disconnect(String accessToken); diff --git a/lib/src/domain/usecases/streamelements_usecase.dart b/lib/src/domain/usecases/streamelements_usecase.dart index d03cc5ae..39e7f9f8 100644 --- a/lib/src/domain/usecases/streamelements_usecase.dart +++ b/lib/src/domain/usecases/streamelements_usecase.dart @@ -11,18 +11,19 @@ class StreamelementsUseCase { final StreamelementsRepository streamelementsRepository; StreamelementsUseCase({required this.streamelementsRepository}); - Future> login({required StreamelementsAuthParams params}) { + Future> login( + {required StreamelementsAuthParams params}) { return streamelementsRepository.login(params); } - Future> refreshAccessToken({required SeCredentials seCredentials}) { + Future> refreshAccessToken( + {required SeCredentials seCredentials}) { return streamelementsRepository.refreshAccessToken(seCredentials); } Future> getSeCredentialsFromLocal() { return streamelementsRepository.getSeCredentialsFromLocal(); } - Future> disconnect(String accessToken) { return streamelementsRepository.disconnect(accessToken); diff --git a/lib/src/presentation/controllers/dashboard_controller.dart b/lib/src/presentation/controllers/dashboard_controller.dart index 182127a4..d41b1204 100644 --- a/lib/src/presentation/controllers/dashboard_controller.dart +++ b/lib/src/presentation/controllers/dashboard_controller.dart @@ -10,7 +10,8 @@ class DashboardController extends GetxController { // Add a dashboard event void addDashboardEvent(DashboardEvent event) { List events = []; - events.addAll(homeViewController.settings.value.dashboardSettings!.userEvents); + events.addAll( + homeViewController.settings.value.dashboardSettings!.userEvents); events.add(event); homeViewController.settings.value = homeViewController.settings.value.copyWith( diff --git a/lib/src/presentation/controllers/home_view_controller.dart b/lib/src/presentation/controllers/home_view_controller.dart index 2443c6a5..bc98573b 100644 --- a/lib/src/presentation/controllers/home_view_controller.dart +++ b/lib/src/presentation/controllers/home_view_controller.dart @@ -105,8 +105,7 @@ class HomeViewController extends GetxController homeEvents .refreshSeAccessToken(seCredentials: seCredentials.value!) .then((value) => { - if (value.error == null) - {seCredentials.value = value.data!} + if (value.error == null) {seCredentials.value = value.data!} }); } }); diff --git a/lib/src/presentation/controllers/streamelements_view_controller.dart b/lib/src/presentation/controllers/streamelements_view_controller.dart index 22c1df75..17693a80 100644 --- a/lib/src/presentation/controllers/streamelements_view_controller.dart +++ b/lib/src/presentation/controllers/streamelements_view_controller.dart @@ -162,7 +162,9 @@ class StreamelementsViewController extends GetxController }, ); - socket!.onAny((event, data) => globals.talker?.debug(data),); + socket!.onAny( + (event, data) => globals.talker?.debug(data), + ); socket!.on( 'songrequest:song:next', diff --git a/lib/src/presentation/events/home_events.dart b/lib/src/presentation/events/home_events.dart index 475c775b..1128f33c 100644 --- a/lib/src/presentation/events/home_events.dart +++ b/lib/src/presentation/events/home_events.dart @@ -18,7 +18,10 @@ class HomeEvents { final SettingsUseCase settingsUseCase; final StreamelementsUseCase streamelementsUseCase; - HomeEvents({required this.twitchUseCase, required this.settingsUseCase, required this.streamelementsUseCase}); + HomeEvents( + {required this.twitchUseCase, + required this.settingsUseCase, + required this.streamelementsUseCase}); Future> getTwitchFromLocal() { return twitchUseCase.getTwitchFromLocal(); @@ -48,14 +51,15 @@ class HomeEvents { Future> refreshSeAccessToken({ required SeCredentials seCredentials, }) { - return streamelementsUseCase.refreshAccessToken(seCredentials: seCredentials); + return streamelementsUseCase.refreshAccessToken( + seCredentials: seCredentials); } Future> getSeCredentialsFromLocal() { return streamelementsUseCase.getSeCredentialsFromLocal(); } - Future> getSeMe(String token) { + Future> getSeMe(String token) { return streamelementsUseCase.getMe(token); } diff --git a/lib/src/presentation/events/streamelements_events.dart b/lib/src/presentation/events/streamelements_events.dart index 658339e3..b1291b6d 100644 --- a/lib/src/presentation/events/streamelements_events.dart +++ b/lib/src/presentation/events/streamelements_events.dart @@ -19,7 +19,8 @@ class StreamelementsEvents { required this.settingsUseCase, }); - Future> login({required StreamelementsAuthParams params}) { + Future> login( + {required StreamelementsAuthParams params}) { return streamelementsUseCase.login(params: params); } @@ -35,7 +36,8 @@ class StreamelementsEvents { return streamelementsUseCase.getOverlays(token, channel); } - Future>> getLastActivities(String token, String channel) { + Future>> getLastActivities( + String token, String channel) { return streamelementsUseCase.getLastActivities(token, channel); } diff --git a/lib/src/presentation/views/home_view.dart b/lib/src/presentation/views/home_view.dart index e637f937..95c9abfc 100644 --- a/lib/src/presentation/views/home_view.dart +++ b/lib/src/presentation/views/home_view.dart @@ -42,7 +42,7 @@ class HomeView extends GetView { }, child: AnnotatedRegion( value: SystemUiOverlayStyle( - systemNavigationBarColor: Theme.of(context).colorScheme.background, + systemNavigationBarColor: Theme.of(context).colorScheme.surface, ), child: Scaffold( resizeToAvoidBottomInset: true, @@ -78,7 +78,7 @@ class HomeView extends GetView { child: Container( constraints: const BoxConstraints.expand(), decoration: BoxDecoration( - color: context.theme.colorScheme.background, + color: context.theme.colorScheme.surface, ), child: SafeArea( child: Stack( @@ -162,7 +162,7 @@ class HomeView extends GetView { Widget _top(BuildContext context, double height, double width) { return Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( children: [ _tabBar(context, height, width), @@ -174,7 +174,7 @@ class HomeView extends GetView { Widget _bottom(BuildContext context, double height, double width) { return Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Stack( children: [ Listener( @@ -300,7 +300,8 @@ class HomeView extends GetView { twitchChats.addAll( chatViewController.twitchChats.toList()); if (twitchChats.length == 1) { - controller.sendChatMessage(value, twitchChats.first.channel); + controller.sendChatMessage( + value, twitchChats.first.channel); controller.chatInputController.text = ''; FocusScope.of(context).unfocus(); } else { @@ -345,7 +346,8 @@ class HomeView extends GetView { .addAll(chatViewController.twitchChats.toList()); if (twitchChats.length == 1) { controller.sendChatMessage( - controller.chatInputController.text, twitchChats.first.channel); + controller.chatInputController.text, + twitchChats.first.channel); controller.chatInputController.text = ''; FocusScope.of(context).unfocus(); } else { @@ -381,12 +383,12 @@ class HomeView extends GetView { Get.dialog( AlertDialog( backgroundColor: - Theme.of(context).colorScheme.background, + Theme.of(context).colorScheme.surface, surfaceTintColor: - Theme.of(context).colorScheme.background, + Theme.of(context).colorScheme.surface, content: Container( width: width, - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( mainAxisSize: MainAxisSize.min, children: [ @@ -432,12 +434,12 @@ class HomeView extends GetView { Get.dialog( AlertDialog( backgroundColor: - Theme.of(context).colorScheme.background, + Theme.of(context).colorScheme.surface, surfaceTintColor: - Theme.of(context).colorScheme.background, + Theme.of(context).colorScheme.surface, content: Container( width: width, - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( mainAxisSize: MainAxisSize.min, children: [ @@ -514,7 +516,7 @@ class HomeView extends GetView { Widget _tabs(BuildContext context) { return Expanded( child: Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: IndexedStack( index: controller.tabIndex.value, children: List.generate( @@ -565,7 +567,7 @@ class HomeView extends GetView { Widget _chats(BuildContext context) { return Expanded( child: Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: TabBarView( physics: const NeverScrollableScrollPhysics(), controller: controller.chatTabsController, diff --git a/lib/src/presentation/views/login_view.dart b/lib/src/presentation/views/login_view.dart index e99275dc..b611def2 100644 --- a/lib/src/presentation/views/login_view.dart +++ b/lib/src/presentation/views/login_view.dart @@ -13,7 +13,7 @@ class LoginView extends GetView { Get.find(); return Scaffold( body: Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: SafeArea( child: Obx( () => loginScreen( diff --git a/lib/src/presentation/views/settings_view.dart b/lib/src/presentation/views/settings_view.dart index f997eddc..d23b30f3 100644 --- a/lib/src/presentation/views/settings_view.dart +++ b/lib/src/presentation/views/settings_view.dart @@ -81,7 +81,7 @@ class SettingsView extends GetView { ), body: Container( decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, ), child: ListView( padding: @@ -145,7 +145,7 @@ class SettingsView extends GetView { Widget chatSettings(BuildContext context, double width) { return Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -316,7 +316,7 @@ class SettingsView extends GetView { Widget generalSettings(BuildContext context, double width) { return Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -480,7 +480,7 @@ class SettingsView extends GetView { Widget connectionsSettings(BuildContext context, double width) { return Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -537,7 +537,8 @@ class SettingsView extends GetView { ), const SizedBox(height: 10), Visibility( - visible: Platform.isIOS || kDebugMode || + visible: Platform.isIOS || + kDebugMode || storeController.storeFound.value && storeController.products.isNotEmpty, child: StreamElements(controller: controller), @@ -552,7 +553,7 @@ class SettingsView extends GetView { Widget contactSettings(BuildContext context, double width) { return Container( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/src/presentation/widgets/chats/chat_message/kick/kick_emote.dart b/lib/src/presentation/widgets/chats/chat_message/kick/kick_emote.dart index 1f8c7841..16911c17 100644 --- a/lib/src/presentation/widgets/chats/chat_message/kick/kick_emote.dart +++ b/lib/src/presentation/widgets/chats/chat_message/kick/kick_emote.dart @@ -10,8 +10,7 @@ class KickEmote extends StatelessWidget { return Image( height: 24, width: 24, - image: NetworkImage( - "https://files.kick.com/emotes/$emoteId/fullsize"), + image: NetworkImage("https://files.kick.com/emotes/$emoteId/fullsize"), ); } } diff --git a/lib/src/presentation/widgets/chats/chat_message/shared/author_name.dart b/lib/src/presentation/widgets/chats/chat_message/shared/author_name.dart index 0806fe7d..db7603aa 100644 --- a/lib/src/presentation/widgets/chats/chat_message/shared/author_name.dart +++ b/lib/src/presentation/widgets/chats/chat_message/shared/author_name.dart @@ -31,7 +31,10 @@ class AuthorName extends StatelessWidget { ), children: [ TextSpan( - text: username != displayName.toLowerCase() && platform == Platform.twitch ? "($displayName)" : "", + text: username != displayName.toLowerCase() && + platform == Platform.twitch + ? "($displayName)" + : "", style: TextStyle( color: Color(int.parse(color.replaceAll('#', '0xff'))), fontSize: textSize, diff --git a/lib/src/presentation/widgets/chats/chat_message/shared/message_container.dart b/lib/src/presentation/widgets/chats/chat_message/shared/message_container.dart index e717075c..4193bf1d 100644 --- a/lib/src/presentation/widgets/chats/chat_message/shared/message_container.dart +++ b/lib/src/presentation/widgets/chats/chat_message/shared/message_container.dart @@ -34,7 +34,7 @@ class MessageContainer extends StatelessWidget { decoration: BoxDecoration( color: selectedMessage != null && selectedMessage == message ? Theme.of(Get.context!).colorScheme.secondary - : Theme.of(Get.context!).colorScheme.background, + : Theme.of(Get.context!).colorScheme.surface, ), child: MessageRow( message: message, diff --git a/lib/src/presentation/widgets/chats/chat_message/twitch/moderation_bottom_sheet.dart b/lib/src/presentation/widgets/chats/chat_message/twitch/moderation_bottom_sheet.dart index 19d3269c..7a3b0895 100644 --- a/lib/src/presentation/widgets/chats/chat_message/twitch/moderation_bottom_sheet.dart +++ b/lib/src/presentation/widgets/chats/chat_message/twitch/moderation_bottom_sheet.dart @@ -50,9 +50,11 @@ class ModerationBottomSheet extends StatelessWidget { onTap: () => launchUrl( Uri( scheme: "https", - host: message.platform == Platform.twitch ? "twitch.tv" : 'kick.com', - path: controller.homeViewController.selectedMessage - .value?.username, + host: message.platform == Platform.twitch + ? "twitch.tv" + : 'kick.com', + path: controller + .homeViewController.selectedMessage.value?.username, ), mode: LaunchMode.externalApplication, ), diff --git a/lib/src/presentation/widgets/chats/chat_view.dart b/lib/src/presentation/widgets/chats/chat_view.dart index 04fe0c4a..9d601407 100644 --- a/lib/src/presentation/widgets/chats/chat_view.dart +++ b/lib/src/presentation/widgets/chats/chat_view.dart @@ -43,7 +43,7 @@ class ChatView extends StatelessWidget { onDoubleTap: () { // Open a confirmation dialog to reconnect to the chat Get.defaultDialog( - backgroundColor: Theme.of(context).colorScheme.background, + backgroundColor: Theme.of(context).colorScheme.surface, title: "Confirmation", middleText: "Do you want to reconnect ?", textConfirm: "Yes", @@ -69,74 +69,68 @@ class ChatView extends StatelessWidget { height: double.infinity, padding: EdgeInsets.only(top: 10, bottom: height * 0.07), decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, ), child: ListView.builder( - controller: controller?.scrollController, - itemCount: controller?.chatMessages.length, - itemBuilder: (BuildContext context, int index) { - ChatMessage message = controller!.chatMessages[index]; - return Container( - padding: const EdgeInsets.only(top: 1, bottom: 1), - child: InkWell( - onTap: () { - if (FocusScope.of(context).isFirstFocus) { - FocusScope.of(context).unfocus(); - } - controller!.homeViewController.selectedMessage - .value = null; - }, - onLongPress: () { - controller!.homeViewController.selectedMessage - .value ??= message; - }, - child: message.eventType != null - ? EventContainer( - message: message, - selectedMessage: controller - .homeViewController.selectedMessage.value, - displayTimestamp: controller - .homeViewController - .settings - .value - .displayTimestamp!, - textSize: controller.homeViewController - .settings.value.textSize!, - hideDeletedMessages: controller - .homeViewController - .settings - .value - .chatSettings! - .hideDeletedMessages, - cheerEmotes: controller.cheerEmotes, - thirdPartEmotes: controller.thirdPartEmotes, - showPlatformBadge: multiplePlatform, - ) - : MessageContainer( - selectedMessage: controller - .homeViewController.selectedMessage.value, - message: message, - displayTimestamp: controller - .homeViewController - .settings - .value - .displayTimestamp!, - textSize: controller.homeViewController - .settings.value.textSize!, - hideDeletedMessages: controller - .homeViewController - .settings - .value - .chatSettings! - .hideDeletedMessages, - cheerEmotes: controller.cheerEmotes, - thirdPartEmotes: controller.thirdPartEmotes, - showPlatformBadge: multiplePlatform, - ), - ), - ); + controller: controller?.scrollController, + itemCount: controller?.chatMessages.length, + itemBuilder: (BuildContext context, int index) { + ChatMessage message = controller!.chatMessages[index]; + return Container( + padding: const EdgeInsets.only(top: 1, bottom: 1), + child: InkWell( + onTap: () { + if (FocusScope.of(context).isFirstFocus) { + FocusScope.of(context).unfocus(); + } + controller!.homeViewController.selectedMessage.value = + null; }, + onLongPress: () { + controller!.homeViewController.selectedMessage.value ??= + message; + }, + child: message.eventType != null + ? EventContainer( + message: message, + selectedMessage: controller + .homeViewController.selectedMessage.value, + displayTimestamp: controller.homeViewController + .settings.value.displayTimestamp!, + textSize: controller + .homeViewController.settings.value.textSize!, + hideDeletedMessages: controller + .homeViewController + .settings + .value + .chatSettings! + .hideDeletedMessages, + cheerEmotes: controller.cheerEmotes, + thirdPartEmotes: controller.thirdPartEmotes, + showPlatformBadge: multiplePlatform, + ) + : MessageContainer( + selectedMessage: controller + .homeViewController.selectedMessage.value, + message: message, + displayTimestamp: controller.homeViewController + .settings.value.displayTimestamp!, + textSize: controller + .homeViewController.settings.value.textSize!, + hideDeletedMessages: controller + .homeViewController + .settings + .value + .chatSettings! + .hideDeletedMessages, + cheerEmotes: controller.cheerEmotes, + thirdPartEmotes: controller.thirdPartEmotes, + showPlatformBadge: multiplePlatform, + ), ), + ); + }, + ), ), ), Positioned( @@ -176,8 +170,8 @@ class ChatView extends StatelessWidget { : const Offset(0, 1), duration: const Duration(milliseconds: 200), child: Visibility( - visible: - controller != null && controller.homeViewController.selectedMessage.value != null, + visible: controller != null && + controller.homeViewController.selectedMessage.value != null, child: ModerationBottomSheet(controller: controller!, width: width), ), diff --git a/lib/src/presentation/widgets/dashboard.dart b/lib/src/presentation/widgets/dashboard.dart index 4a1dc249..fe9004e1 100644 --- a/lib/src/presentation/widgets/dashboard.dart +++ b/lib/src/presentation/widgets/dashboard.dart @@ -41,7 +41,8 @@ class Dashboard extends GetView { .value.dashboardSettings!.userEvents[index]; // Check if the event is still supported if (event.event == SupportedEvents.none) { - return _disabledServiceEvent(event, "Event not supported anymore"); + return _disabledServiceEvent( + event, "Event not supported anymore"); } // Check if the service is enabled bool isServiceEnabled = isDashboardServiceEnabled(event); diff --git a/lib/src/presentation/widgets/hype_train.dart b/lib/src/presentation/widgets/hype_train.dart index 003f8351..897aaf8e 100644 --- a/lib/src/presentation/widgets/hype_train.dart +++ b/lib/src/presentation/widgets/hype_train.dart @@ -1,4 +1,3 @@ - import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:irllink/src/core/utils/print_duration.dart'; diff --git a/lib/src/presentation/widgets/settings/chat_events.dart b/lib/src/presentation/widgets/settings/chat_events.dart index c9482224..8ed786b0 100644 --- a/lib/src/presentation/widgets/settings/chat_events.dart +++ b/lib/src/presentation/widgets/settings/chat_events.dart @@ -15,7 +15,7 @@ class ChatEvents extends StatelessWidget { Widget build(BuildContext context) { return Obx( () => Scaffold( - backgroundColor: Theme.of(context).colorScheme.background, + backgroundColor: Theme.of(context).colorScheme.surface, appBar: AppBar( leading: IconButton( icon: Icon( @@ -38,7 +38,7 @@ class ChatEvents extends StatelessWidget { child: Container( padding: const EdgeInsets.only(top: 8, left: 10, right: 10, bottom: 8), - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( children: [ Column( diff --git a/lib/src/presentation/widgets/settings/chats_joined.dart b/lib/src/presentation/widgets/settings/chats_joined.dart index 5aa007eb..11a23af6 100644 --- a/lib/src/presentation/widgets/settings/chats_joined.dart +++ b/lib/src/presentation/widgets/settings/chats_joined.dart @@ -35,7 +35,7 @@ class ChatsJoined extends GetView { ), body: Container( decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, ), child: Column( children: [ @@ -222,7 +222,7 @@ class ChatsJoined extends GetView { titleStyle: TextStyle( color: Theme.of(context).textTheme.bodyLarge!.color, ), - backgroundColor: Theme.of(context).colorScheme.background, + backgroundColor: Theme.of(context).colorScheme.surface, buttonColor: const Color(0xFF9147ff), cancelTextColor: const Color(0xFF9147ff), confirmTextColor: Colors.white, diff --git a/lib/src/presentation/widgets/settings/dashboard_settings_view.dart b/lib/src/presentation/widgets/settings/dashboard_settings_view.dart index eaf9dc8f..de502aab 100644 --- a/lib/src/presentation/widgets/settings/dashboard_settings_view.dart +++ b/lib/src/presentation/widgets/settings/dashboard_settings_view.dart @@ -57,7 +57,7 @@ class DashboardSettingsView extends GetView { body: Container( padding: const EdgeInsets.all(10), decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, ), child: Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, @@ -93,7 +93,7 @@ class DashboardSettingsView extends GetView { children: [ SlidableAction( backgroundColor: - Theme.of(context).colorScheme.background, + Theme.of(context).colorScheme.surface, onPressed: (context) { dashboardController.removeDashboardEvent(event); }, @@ -141,10 +141,10 @@ class DashboardSettingsView extends GetView { ), TextButton( style: ButtonStyle( - backgroundColor: MaterialStateProperty.all( + backgroundColor: WidgetStateProperty.all( Theme.of(context).colorScheme.secondary, ), - foregroundColor: MaterialStateProperty.all( + foregroundColor: WidgetStateProperty.all( Theme.of(context).textTheme.bodyLarge!.color, ), ), @@ -157,7 +157,7 @@ class DashboardSettingsView extends GetView { titleStyle: TextStyle( color: Theme.of(context).textTheme.bodyLarge!.color, ), - backgroundColor: Theme.of(context).colorScheme.background, + backgroundColor: Theme.of(context).colorScheme.surface, buttonColor: const Color(0xFF9147ff), cancelTextColor: const Color(0xFF9147ff), confirmTextColor: Colors.white, @@ -312,10 +312,10 @@ Widget _addDialog(context, DashboardController dashboardController) { ), ElevatedButton( style: ButtonStyle( - backgroundColor: MaterialStateProperty.all( + backgroundColor: WidgetStateProperty.all( Theme.of(context).colorScheme.tertiary, ), - foregroundColor: MaterialStateProperty.all( + foregroundColor: WidgetStateProperty.all( Theme.of(context).textTheme.bodyLarge!.color, ), ), @@ -344,7 +344,7 @@ Widget colorPickerPreview(Color color, Function(Color) onColorChanged) { onTap: () { Get.defaultDialog( title: 'Pick a color!', - backgroundColor: Theme.of(Get.context!).colorScheme.background, + backgroundColor: Theme.of(Get.context!).colorScheme.surface, content: BlockPicker( pickerColor: color, onColorChanged: onColorChanged, diff --git a/lib/src/presentation/widgets/settings/dialogs/in_app_purchase_dialog.dart b/lib/src/presentation/widgets/settings/dialogs/in_app_purchase_dialog.dart index e7ac9990..e1198d89 100644 --- a/lib/src/presentation/widgets/settings/dialogs/in_app_purchase_dialog.dart +++ b/lib/src/presentation/widgets/settings/dialogs/in_app_purchase_dialog.dart @@ -15,7 +15,7 @@ Widget inAppPurchaseDialog( height: 400, padding: const EdgeInsets.only(left: 10, right: 10), decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, borderRadius: const BorderRadius.all( Radius.circular(8), ), diff --git a/lib/src/presentation/widgets/settings/manage_list_browser_tabs.dart b/lib/src/presentation/widgets/settings/manage_list_browser_tabs.dart index fcd5ad81..2420254b 100644 --- a/lib/src/presentation/widgets/settings/manage_list_browser_tabs.dart +++ b/lib/src/presentation/widgets/settings/manage_list_browser_tabs.dart @@ -52,7 +52,7 @@ class ManageListBrowserTabs extends GetView { ), body: Container( decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, ), child: Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, @@ -132,7 +132,7 @@ class ManageListBrowserTabs extends GetView { ), backgroundColor: Theme.of(context) .colorScheme - .background, + .surface, buttonColor: const Color(0xFF9147ff), cancelTextColor: @@ -163,7 +163,7 @@ class ManageListBrowserTabs extends GetView { ), backgroundColor: Theme.of(context) .colorScheme - .background, + .surface, buttonColor: const Color(0xFF9147ff), cancelTextColor: @@ -226,7 +226,7 @@ class ManageListBrowserTabs extends GetView { Theme.of(context).textTheme.bodyLarge!.color, ), backgroundColor: - Theme.of(context).colorScheme.background, + Theme.of(context).colorScheme.surface, buttonColor: const Color(0xFF9147ff), cancelTextColor: const Color(0xFF9147ff), confirmTextColor: Colors.white, diff --git a/lib/src/presentation/widgets/settings/manage_list_hidden_users.dart b/lib/src/presentation/widgets/settings/manage_list_hidden_users.dart index 58003b98..d5651788 100644 --- a/lib/src/presentation/widgets/settings/manage_list_hidden_users.dart +++ b/lib/src/presentation/widgets/settings/manage_list_hidden_users.dart @@ -36,7 +36,7 @@ class ManageListHiddenUsers extends GetView { ), body: Container( decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, ), child: Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, diff --git a/lib/src/presentation/widgets/settings/tts.dart b/lib/src/presentation/widgets/settings/tts.dart index 5673ca56..d906776b 100644 --- a/lib/src/presentation/widgets/settings/tts.dart +++ b/lib/src/presentation/widgets/settings/tts.dart @@ -13,7 +13,7 @@ class Tts extends StatelessWidget { Widget build(BuildContext context) { return Obx( () => Scaffold( - backgroundColor: Theme.of(context).colorScheme.background, + backgroundColor: Theme.of(context).colorScheme.surface, appBar: AppBar( leading: IconButton( icon: Icon( @@ -36,7 +36,7 @@ class Tts extends StatelessWidget { child: Container( padding: const EdgeInsets.only(top: 8, left: 10, right: 10, bottom: 8), - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( children: [ Row( @@ -117,7 +117,8 @@ class Tts extends StatelessWidget { ), ), DropdownButton( - value: controller.ttsController.ttsVoices.firstWhere( + value: + controller.ttsController.ttsVoices.firstWhere( (element) => element["name"] == controller.homeViewController.settings.value @@ -140,9 +141,10 @@ class Tts extends StatelessWidget { items: List.generate( controller.ttsController.ttsVoices.length, (index) => DropdownMenuItem( - value: controller.ttsController.ttsVoices[index], - child: - Text(controller.ttsController.ttsVoices[index]["name"]), + value: + controller.ttsController.ttsVoices[index], + child: Text(controller + .ttsController.ttsVoices[index]["name"]), ), ), ), diff --git a/lib/src/presentation/widgets/stream_elements/se_song_requests.dart b/lib/src/presentation/widgets/stream_elements/se_song_requests.dart index d4b84d8c..1ead2f71 100644 --- a/lib/src/presentation/widgets/stream_elements/se_song_requests.dart +++ b/lib/src/presentation/widgets/stream_elements/se_song_requests.dart @@ -1,4 +1,3 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:irllink/src/domain/entities/stream_elements/se_song.dart'; @@ -30,9 +29,12 @@ class SeSongRequests extends GetView { // const Icon(Icons.skip_previous), InkWell( onTap: () { - controller.updatePlayerState(controller.isPlaying.value ? 'pause' : 'play'); + controller.updatePlayerState( + controller.isPlaying.value ? 'pause' : 'play'); }, - child: controller.isPlaying.value ? const Icon(Icons.pause) : const Icon(Icons.play_arrow_outlined), + child: controller.isPlaying.value + ? const Icon(Icons.pause) + : const Icon(Icons.play_arrow_outlined), ), InkWell( onTap: () { diff --git a/lib/src/presentation/widgets/tabs/dialogs/slow_mode_dialog.dart b/lib/src/presentation/widgets/tabs/dialogs/slow_mode_dialog.dart index eeccce2a..9d11674d 100644 --- a/lib/src/presentation/widgets/tabs/dialogs/slow_mode_dialog.dart +++ b/lib/src/presentation/widgets/tabs/dialogs/slow_mode_dialog.dart @@ -21,7 +21,7 @@ Widget slowModeDialog( Container( padding: const EdgeInsets.all(10), decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, borderRadius: const BorderRadius.all( Radius.circular(8), ), diff --git a/lib/src/presentation/widgets/tabs/obs_tab_view.dart b/lib/src/presentation/widgets/tabs/obs_tab_view.dart index e18cd63e..ead00d56 100644 --- a/lib/src/presentation/widgets/tabs/obs_tab_view.dart +++ b/lib/src/presentation/widgets/tabs/obs_tab_view.dart @@ -17,7 +17,7 @@ class ObsTabView extends GetView { () => controller.isConnected.value ? Container( padding: const EdgeInsets.only(left: 8, top: 10, right: 8), - color: context.theme.colorScheme.background, + color: context.theme.colorScheme.surface, child: Column( children: [ SizedBox( @@ -215,7 +215,7 @@ class ObsTabView extends GetView { ), ) : Container( - color: context.theme.colorScheme.background, + color: context.theme.colorScheme.surface, child: Column( children: [ AlertMessageView( diff --git a/lib/src/presentation/widgets/tabs/streamelements_tab_view.dart b/lib/src/presentation/widgets/tabs/streamelements_tab_view.dart index 88c92cac..128aae48 100644 --- a/lib/src/presentation/widgets/tabs/streamelements_tab_view.dart +++ b/lib/src/presentation/widgets/tabs/streamelements_tab_view.dart @@ -38,7 +38,7 @@ class StreamelementsTabView extends GetView { Expanded( child: Container( decoration: BoxDecoration( - color: context.theme.colorScheme.background, + color: context.theme.colorScheme.surface, ), child: TabBarView( controller: controller.tabController, diff --git a/lib/src/presentation/widgets/tabs/twitch_tab_view.dart b/lib/src/presentation/widgets/tabs/twitch_tab_view.dart index 9d05d2fc..b330f7a6 100644 --- a/lib/src/presentation/widgets/tabs/twitch_tab_view.dart +++ b/lib/src/presentation/widgets/tabs/twitch_tab_view.dart @@ -23,7 +23,7 @@ class TwitchTabView extends GetView { () => Container( padding: const EdgeInsets.only( left: 20.0, top: 12.0, right: 20.0, bottom: 12.0), - color: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.surface, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/pubspec.lock b/pubspec.lock index 857c8171..8f4fd068 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -669,26 +669,26 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa" + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "10.0.4" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0 + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.3" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47 + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.1" lints: dependency: transitive description: @@ -733,10 +733,10 @@ packages: dependency: transitive description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.12.0" mime: dependency: transitive description: @@ -1114,10 +1114,10 @@ packages: dependency: transitive description: name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" + sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" url: "https://pub.dev" source: hosted - version: "0.6.1" + version: "0.7.0" timezone: dependency: transitive description: @@ -1290,10 +1290,10 @@ packages: dependency: transitive description: name: vm_service - sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957 + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" url: "https://pub.dev" source: hosted - version: "13.0.0" + version: "14.2.1" wakelock: dependency: "direct main" description: diff --git a/test/widget_test.dart b/test/widget_test.dart index 2b3c29cc..8a79033e 100644 --- a/test/widget_test.dart +++ b/test/widget_test.dart @@ -14,8 +14,8 @@ import 'package:talker_flutter/talker_flutter.dart'; void main() { testWidgets('Counter increments smoke test', (WidgetTester tester) async { final talker = TalkerFlutter.init( - settings: TalkerSettings(), - ); + settings: TalkerSettings(), + ); // Build our app and trigger a frame. await tester.pumpWidget(Main(talker: talker)); From d8b3523467857f3561076db9fb0768d1cfa0baa5 Mon Sep 17 00:00:00 2001 From: SputNikPlop <100245448+SputNikPlop@users.noreply.github.com> Date: Fri, 24 May 2024 00:54:09 -0700 Subject: [PATCH 2/2] fix: proj format --- {assets => lib/assets}/apple-download.svg | 0 {assets => lib/assets}/google-play-badge.png | Bin 2 files changed, 0 insertions(+), 0 deletions(-) rename {assets => lib/assets}/apple-download.svg (100%) rename {assets => lib/assets}/google-play-badge.png (100%) diff --git a/assets/apple-download.svg b/lib/assets/apple-download.svg similarity index 100% rename from assets/apple-download.svg rename to lib/assets/apple-download.svg diff --git a/assets/google-play-badge.png b/lib/assets/google-play-badge.png similarity index 100% rename from assets/google-play-badge.png rename to lib/assets/google-play-badge.png