2022-08-23 18:51:11 +02:00
|
|
|
import 'package:expandable/expandable.dart';
|
2022-08-23 18:35:43 +02:00
|
|
|
import 'package:flutter/material.dart';
|
2022-09-02 15:35:25 +02:00
|
|
|
import 'package:flutter_i18n/flutter_i18n.dart';
|
|
|
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
2022-08-23 18:51:11 +02:00
|
|
|
import 'package:revanced_manager/constants.dart';
|
2022-09-02 15:35:25 +02:00
|
|
|
import 'package:revanced_manager/theme.dart';
|
2022-08-23 18:35:43 +02:00
|
|
|
import 'package:url_launcher/url_launcher.dart';
|
|
|
|
|
2022-09-02 15:35:25 +02:00
|
|
|
class SocialMediaWidget extends StatelessWidget {
|
|
|
|
const SocialMediaWidget({Key? key}) : super(key: key);
|
2022-08-23 18:35:43 +02:00
|
|
|
|
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
2022-08-23 18:51:11 +02:00
|
|
|
return ExpandablePanel(
|
|
|
|
theme: ExpandableThemeData(
|
|
|
|
hasIcon: true,
|
|
|
|
iconColor: Theme.of(context).iconTheme.color,
|
2022-09-02 15:35:25 +02:00
|
|
|
iconPadding: const EdgeInsets.symmetric(vertical: 16.0),
|
|
|
|
animationDuration: const Duration(milliseconds: 400),
|
2022-08-23 18:51:11 +02:00
|
|
|
),
|
|
|
|
header: SizedBox(
|
|
|
|
width: double.infinity,
|
|
|
|
child: ListTile(
|
2022-09-02 15:35:25 +02:00
|
|
|
contentPadding: EdgeInsets.zero,
|
2022-08-23 18:51:11 +02:00
|
|
|
title: I18nText(
|
2022-09-02 15:35:25 +02:00
|
|
|
'socialMediaCard.widgetTitle',
|
2022-08-23 18:51:11 +02:00
|
|
|
child: Text('', style: kSettingItemTextStyle),
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
2022-09-02 15:35:25 +02:00
|
|
|
subtitle: I18nText(
|
|
|
|
'socialMediaCard.widgetSubtitle',
|
|
|
|
child: Text(
|
|
|
|
'',
|
|
|
|
style: Theme.of(context).textTheme.bodyMedium!.copyWith(
|
|
|
|
color: isDark ? Colors.grey[400] : Colors.grey[600],
|
|
|
|
),
|
|
|
|
),
|
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
),
|
|
|
|
),
|
|
|
|
expanded: Card(
|
2022-09-02 15:35:25 +02:00
|
|
|
color: isDark
|
|
|
|
? Theme.of(context).colorScheme.primary
|
|
|
|
: Theme.of(context).navigationBarTheme.backgroundColor!,
|
2022-08-23 18:51:11 +02:00
|
|
|
child: Column(
|
2022-09-02 15:35:25 +02:00
|
|
|
children: <Widget>[
|
2022-08-23 18:51:11 +02:00
|
|
|
ListTile(
|
|
|
|
leading: Padding(
|
|
|
|
padding: const EdgeInsets.all(8.0),
|
2022-09-02 15:35:25 +02:00
|
|
|
child: FaIcon(
|
|
|
|
FontAwesomeIcons.github,
|
2022-08-23 18:51:11 +02:00
|
|
|
color: Theme.of(context).iconTheme.color,
|
|
|
|
),
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
title: const Text('GitHub'),
|
|
|
|
subtitle: const Text('github.com/revanced'),
|
|
|
|
onTap: () => launchUrl(
|
|
|
|
Uri.parse('https://github.com/revanced'),
|
|
|
|
mode: LaunchMode.externalApplication,
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
ListTile(
|
|
|
|
leading: Padding(
|
2022-09-02 15:35:25 +02:00
|
|
|
padding: const EdgeInsets.all(8.0).copyWith(left: 5),
|
|
|
|
child: FaIcon(
|
|
|
|
FontAwesomeIcons.discord,
|
2022-08-23 18:51:11 +02:00
|
|
|
color: Theme.of(context).iconTheme.color,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
title: const Text('Discord'),
|
|
|
|
subtitle: const Text('discord.gg/revanced'),
|
|
|
|
onTap: () => launchUrl(
|
2022-09-02 15:35:25 +02:00
|
|
|
Uri.parse('https://discord.gg/rF2YcEjcrT'),
|
2022-08-23 18:51:11 +02:00
|
|
|
mode: LaunchMode.externalApplication,
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
ListTile(
|
|
|
|
leading: Padding(
|
|
|
|
padding: const EdgeInsets.all(8.0),
|
2022-09-02 15:35:25 +02:00
|
|
|
child: FaIcon(
|
|
|
|
FontAwesomeIcons.telegram,
|
2022-08-23 18:51:11 +02:00
|
|
|
color: Theme.of(context).iconTheme.color,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
title: const Text('Telegram'),
|
|
|
|
subtitle: const Text('t.me/app_revanced'),
|
|
|
|
onTap: () => launchUrl(
|
|
|
|
Uri.parse('https://t.me/app_revanced'),
|
|
|
|
mode: LaunchMode.externalApplication,
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
ListTile(
|
|
|
|
leading: Padding(
|
|
|
|
padding: const EdgeInsets.all(8.0),
|
2022-09-02 15:35:25 +02:00
|
|
|
child: FaIcon(
|
|
|
|
FontAwesomeIcons.reddit,
|
2022-08-23 18:51:11 +02:00
|
|
|
color: Theme.of(context).iconTheme.color,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
title: const Text('Reddit'),
|
|
|
|
subtitle: const Text('r/revancedapp'),
|
|
|
|
onTap: () => launchUrl(
|
|
|
|
Uri.parse('https://reddit.com/r/revancedapp'),
|
|
|
|
mode: LaunchMode.externalApplication,
|
|
|
|
),
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
ListTile(
|
|
|
|
leading: Padding(
|
|
|
|
padding: const EdgeInsets.all(8.0),
|
2022-09-02 15:35:25 +02:00
|
|
|
child: FaIcon(
|
|
|
|
FontAwesomeIcons.twitter,
|
2022-08-23 18:51:11 +02:00
|
|
|
color: Theme.of(context).iconTheme.color,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
title: const Text('Twitter'),
|
|
|
|
subtitle: const Text('@revancedapp'),
|
|
|
|
onTap: () => launchUrl(
|
2022-09-02 15:35:25 +02:00
|
|
|
Uri.parse('https://twitter.com/revancedapp'),
|
2022-08-23 18:51:11 +02:00
|
|
|
mode: LaunchMode.externalApplication,
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
ListTile(
|
|
|
|
leading: Padding(
|
|
|
|
padding: const EdgeInsets.all(8.0),
|
2022-09-02 15:35:25 +02:00
|
|
|
child: FaIcon(
|
|
|
|
FontAwesomeIcons.youtube,
|
2022-08-23 18:51:11 +02:00
|
|
|
color: Theme.of(context).iconTheme.color,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
title: const Text('YouTube'),
|
|
|
|
subtitle: const Text('youtube.com/revanced'),
|
|
|
|
onTap: () => launchUrl(
|
2022-09-02 15:35:25 +02:00
|
|
|
Uri.parse('https://youtube.com/revanced'),
|
2022-08-23 18:51:11 +02:00
|
|
|
mode: LaunchMode.externalApplication,
|
|
|
|
),
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
2022-08-23 18:51:11 +02:00
|
|
|
],
|
|
|
|
),
|
2022-08-23 18:35:43 +02:00
|
|
|
),
|
2022-09-02 15:35:25 +02:00
|
|
|
collapsed: Container(),
|
2022-08-23 18:35:43 +02:00
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|