feat: almost finished homescreen (hardcoded).

This commit is contained in:
Aunali321
2022-08-01 01:16:27 +05:30
parent 6cbc122714
commit c3982326e4
14 changed files with 376 additions and 39 deletions

View File

@ -1,5 +1,8 @@
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:revanced_manager_flutter/ui/widgets/available_update.dart';
import 'package:revanced_manager_flutter/ui/widgets/installed_apps.dart';
import 'package:revanced_manager_flutter/ui/widgets/latest_commit.dart';
class HomeScreen extends StatelessWidget {
const HomeScreen({Key? key}) : super(key: key);
@ -8,52 +11,61 @@ class HomeScreen extends StatelessWidget {
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Padding(
padding: const EdgeInsets.symmetric(
vertical: 0.0,
horizontal: 24.0,
),
child: Column(
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
"ReVanced Manager",
style: GoogleFonts.manrope(
fontSize: 24,
fontWeight: FontWeight.w500,
),
),
IconButton(
child: SingleChildScrollView(
child: Padding(
padding: const EdgeInsets.symmetric(
vertical: 0.0,
horizontal: 20.0,
),
child: Column(
children: [
Align(
alignment: Alignment.topRight,
child: IconButton(
onPressed: () {},
icon: const Icon(
Icons.more_vert,
),
)
],
),
const SizedBox(height: 12),
Align(
alignment: Alignment.topLeft,
child: Text(
"Dashboard",
style: GoogleFonts.lato(
fontSize: 32,
),
),
),
const SizedBox(height: 12),
Align(
alignment: Alignment.topLeft,
child: Text(
"ReVanced Updates",
style: GoogleFonts.lato(
fontSize: 22,
const SizedBox(height: 60),
Align(
alignment: Alignment.topLeft,
child: Text(
"Dashboard",
style: GoogleFonts.inter(
fontSize: 28,
),
),
),
),
],
const SizedBox(height: 23),
Align(
alignment: Alignment.topLeft,
child: Text(
"ReVanced Updates",
style: GoogleFonts.inter(
fontSize: 18,
),
),
),
const SizedBox(height: 10),
const LatestCommitWidget(),
const SizedBox(height: 14),
Align(
alignment: Alignment.topLeft,
child: Text(
"Patched Applications",
style: GoogleFonts.inter(
fontSize: 18,
),
),
),
const SizedBox(height: 14),
const AvailableUpdatesWidget(),
const SizedBox(height: 15),
const InstalledAppsWidget(),
],
),
),
),
),

View File

@ -0,0 +1,140 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:google_fonts/google_fonts.dart';
class AvailableUpdatesWidget extends StatelessWidget {
const AvailableUpdatesWidget({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(12),
color: const Color(0xff1B222B),
),
padding: const EdgeInsets.symmetric(vertical: 18, horizontal: 20),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
"Updates Available(2)",
style: GoogleFonts.inter(
fontSize: 16,
color: const Color(0xff7792BA),
fontWeight: FontWeight.w500,
),
),
TextButton(
onPressed: () {},
style: TextButton.styleFrom(
primary: Colors.white,
backgroundColor: const Color(0xff7792BA),
padding: const EdgeInsets.symmetric(
vertical: 8,
horizontal: 18,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
),
),
child: const Text("Patch all"),
)
],
),
ListTile(
horizontalTitleGap: 12.0,
leading: SvgPicture.asset(
"lib/assets/images/revanced.svg",
height: 26,
width: 26,
),
title: Text(
"ReVanced",
style: GoogleFonts.roboto(
color: const Color(0xff7792BA),
),
),
subtitle: const Text("Released 2 days ago"),
trailing: TextButton(
onPressed: () {},
style: TextButton.styleFrom(
side: const BorderSide(
color: Color(0xff7792BA),
width: 1,
),
primary: Colors.white,
padding: const EdgeInsets.symmetric(
vertical: 10,
horizontal: 24,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
),
),
child: const Text("Patch"),
),
),
ListTile(
horizontalTitleGap: 12.0,
leading: const Image(
image: AssetImage("lib/assets/images/reddit.png"),
height: 39,
width: 39,
),
title: Text(
"ReReddit",
style: GoogleFonts.roboto(
color: const Color(0xff7792BA),
),
),
subtitle: const Text("Released 1 month ago"),
trailing: TextButton(
onPressed: () {},
style: TextButton.styleFrom(
side: const BorderSide(
color: Color(0xff7792BA),
width: 1,
),
primary: Colors.white,
padding: const EdgeInsets.symmetric(
vertical: 10,
horizontal: 24,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
),
),
child: const Text("Patch"),
),
),
const SizedBox(height: 4),
Text(
"Changelog",
style: GoogleFonts.roboto(
color: const Color(0xff8691A0),
fontWeight: FontWeight.w700,
),
),
const SizedBox(height: 4),
Text(
"fix: we made the player even worse (you love)",
style: GoogleFonts.roboto(
color: const Color(0xff8691A0),
),
),
const SizedBox(height: 4),
Text(
"chore: guhhughghu",
style: GoogleFonts.roboto(
color: const Color(0xff8691A0),
),
),
],
),
);
}
}

View File

@ -0,0 +1,85 @@
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
class InstalledAppsWidget extends StatelessWidget {
const InstalledAppsWidget({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(12),
color: const Color(0xff1B222B),
),
padding: const EdgeInsets.symmetric(vertical: 18, horizontal: 20),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Text(
"Total Installed(3)",
style: GoogleFonts.inter(
fontSize: 16,
color: const Color(0xff7792BA),
fontWeight: FontWeight.w500,
),
),
ListTile(
horizontalTitleGap: 12.0,
leading: const Image(
image: AssetImage("lib/assets/images/reddit.png"),
height: 39,
width: 39,
),
title: Text(
"ReVanced",
style: GoogleFonts.roboto(
color: const Color(0xff7792BA),
),
),
subtitle: const Text("Released 2 days ago"),
trailing: TextButton(
onPressed: () {},
style: TextButton.styleFrom(
side: const BorderSide(
color: Color(0xff7792BA),
width: 1,
),
primary: Colors.white,
padding: const EdgeInsets.symmetric(
vertical: 10,
horizontal: 24,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
),
),
child: const Text("Patch"),
),
),
Text(
"Changelog",
style: GoogleFonts.roboto(
color: const Color(0xff8691A0),
fontWeight: FontWeight.w700,
),
),
const SizedBox(height: 4),
Text(
"fix: we made the player even worse (you love)",
style: GoogleFonts.roboto(
color: const Color(0xff8691A0),
),
),
const SizedBox(height: 4),
Text(
"chore: guhhughghu",
style: GoogleFonts.roboto(
color: const Color(0xff8691A0),
),
),
],
),
);
}
}

View File

@ -0,0 +1,43 @@
import 'package:flutter/material.dart';
class LatestCommitWidget extends StatelessWidget {
const LatestCommitWidget({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(12),
color: const Color(0xff1B222B),
),
padding: const EdgeInsets.symmetric(vertical: 18, horizontal: 20),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: const [
Text("Patcher: 20 hours ago"),
Text("Manager: 3 days ago"),
],
),
TextButton(
onPressed: () {},
style: TextButton.styleFrom(
primary: Colors.white,
backgroundColor: const Color(0xff7792BA),
padding: const EdgeInsets.symmetric(
vertical: 10,
horizontal: 24,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
),
),
child: const Text("Update Manager"),
)
],
),
);
}
}