mirror of
https://github.com/KRTirtho/spotube.git
synced 2025-09-13 16:05:18 +00:00
refactor: use table in about
This commit is contained in:
parent
93bd4dc3aa
commit
af6ab5fc2c
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:spotube/collections/assets.gen.dart';
|
||||
import 'package:spotube/components/shared/image/universal_image.dart';
|
||||
import 'package:spotube/components/shared/links/hyper_link.dart';
|
||||
import 'package:spotube/components/shared/page_window_title_bar.dart';
|
||||
import 'package:spotube/extensions/context.dart';
|
||||
import 'package:spotube/hooks/use_package_info.dart';
|
||||
@ -24,6 +25,8 @@ class AboutSpotube extends HookConsumerWidget {
|
||||
final license = ref.watch(_licenseProvider);
|
||||
final theme = Theme.of(context);
|
||||
|
||||
final colon = Text(":");
|
||||
|
||||
return Scaffold(
|
||||
appBar: PageWindowTitleBar(
|
||||
leading: const BackButton(),
|
||||
@ -40,77 +43,75 @@ class AboutSpotube extends HookConsumerWidget {
|
||||
),
|
||||
Center(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(
|
||||
context.l10n.spotube_description,
|
||||
style: theme.textTheme.titleLarge,
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
Row(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
Table(
|
||||
columnWidths: const {
|
||||
0: FixedColumnWidth(95),
|
||||
1: FixedColumnWidth(10),
|
||||
2: IntrinsicColumnWidth(),
|
||||
},
|
||||
children: [
|
||||
Text(
|
||||
"${context.l10n.founder}: ${context.l10n.kingkor_roy_tirtho}",
|
||||
style: const TextStyle(
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
TableRow(
|
||||
children: [
|
||||
Text(context.l10n.founder),
|
||||
colon,
|
||||
Hyperlink(
|
||||
context.l10n.kingkor_roy_tirtho,
|
||||
"https://github.com/KRTirtho",
|
||||
)
|
||||
],
|
||||
),
|
||||
const SizedBox(width: 5),
|
||||
CircleAvatar(
|
||||
radius: 20,
|
||||
child: ClipOval(
|
||||
child: Image.network(
|
||||
"https://avatars.githubusercontent.com/u/61944859?v=4",
|
||||
TableRow(
|
||||
children: [
|
||||
Text(context.l10n.version),
|
||||
colon,
|
||||
Text("v${packageInfo.version}")
|
||||
],
|
||||
),
|
||||
TableRow(
|
||||
children: [
|
||||
Text(context.l10n.build_number),
|
||||
colon,
|
||||
Text(packageInfo.buildNumber.replaceAll(".", " "))
|
||||
],
|
||||
),
|
||||
TableRow(
|
||||
children: [
|
||||
Text(context.l10n.repository),
|
||||
colon,
|
||||
const Hyperlink(
|
||||
"github.com/KRTirtho/spotube",
|
||||
"https://github.com/KRTirtho/spotube",
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
TableRow(
|
||||
children: [
|
||||
Text(context.l10n.license),
|
||||
colon,
|
||||
const Hyperlink(
|
||||
"BSD-4-Clause",
|
||||
"https://raw.githubusercontent.com/KRTirtho/spotube/master/LICENSE",
|
||||
),
|
||||
],
|
||||
),
|
||||
TableRow(
|
||||
children: [
|
||||
Text(context.l10n.bug_issues),
|
||||
colon,
|
||||
const Hyperlink(
|
||||
"github.com/KRTirtho/spotube/issues",
|
||||
"https://github.com/KRTirtho/spotube/issues",
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
const SizedBox(height: 5),
|
||||
Text(
|
||||
"${context.l10n.version}: v${packageInfo.version}",
|
||||
),
|
||||
const SizedBox(height: 5),
|
||||
Text(
|
||||
"${context.l10n.build_number}: ${packageInfo.buildNumber.replaceAll(".", " ")}",
|
||||
),
|
||||
const SizedBox(height: 5),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
launchUrlString(
|
||||
"https://github.com/KRTirtho/spotube",
|
||||
mode: LaunchMode.externalApplication,
|
||||
);
|
||||
},
|
||||
child: Text(
|
||||
"${context.l10n.repository}: https://github.com/KRTirtho/spotube",
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 5),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
launchUrlString(
|
||||
"https://raw.githubusercontent.com/KRTirtho/spotube/master/LICENSE",
|
||||
mode: LaunchMode.externalApplication,
|
||||
);
|
||||
},
|
||||
child: Text(
|
||||
"${context.l10n.license}: BSD-4-Clause",
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 5),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
launchUrlString(
|
||||
"https://github.com/KRTirtho/spotube/issues",
|
||||
mode: LaunchMode.externalApplication,
|
||||
);
|
||||
},
|
||||
child: Text(
|
||||
"${context.l10n.bug_issues}: https://github.com/KRTirtho/spotube/issues",
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
@ -6,6 +6,7 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
|
||||
import 'package:spotube/collections/spotube_icons.dart';
|
||||
import 'package:spotube/components/shared/page_window_title_bar.dart';
|
||||
import 'package:spotube/extensions/context.dart';
|
||||
import 'package:spotube/provider/blacklist_provider.dart';
|
||||
|
||||
class BlackListPage extends HookConsumerWidget {
|
||||
@ -38,7 +39,7 @@ class BlackListPage extends HookConsumerWidget {
|
||||
|
||||
return Scaffold(
|
||||
appBar: PageWindowTitleBar(
|
||||
title: const Text("Blacklist"),
|
||||
title: Text(context.l10n.blacklist),
|
||||
centerTitle: true,
|
||||
leading: const BackButton(),
|
||||
),
|
||||
@ -49,9 +50,9 @@ class BlackListPage extends HookConsumerWidget {
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: TextField(
|
||||
onChanged: (value) => searchText.value = value,
|
||||
decoration: const InputDecoration(
|
||||
hintText: "Search",
|
||||
prefixIcon: Icon(SpotubeIcons.search),
|
||||
decoration: InputDecoration(
|
||||
hintText: context.l10n.search,
|
||||
prefixIcon: const Icon(SpotubeIcons.search),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
Loading…
Reference in New Issue
Block a user