feat: theme switching.

This commit is contained in:
Aunali321
2022-08-12 00:35:03 +05:30
parent 3f45dd2db9
commit 4d0dcf407b
7 changed files with 104 additions and 50 deletions

View File

@ -6,6 +6,7 @@ import 'package:revanced_manager/ui/widgets/available_updates_card.dart';
import 'package:revanced_manager/ui/widgets/installed_apps_card.dart';
import 'package:revanced_manager/ui/widgets/latest_commit_card.dart';
import 'package:stacked/stacked.dart';
import 'package:stacked_themes/stacked_themes.dart';
class HomeView extends StatelessWidget {
const HomeView({Key? key}) : super(key: key);
@ -25,7 +26,7 @@ class HomeView extends StatelessWidget {
Align(
alignment: Alignment.topRight,
child: IconButton(
onPressed: () => {},
onPressed: () {},
icon: const Icon(
Icons.more_vert,
),

View File

@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_i18n/flutter_i18n.dart';
import 'package:revanced_manager/ui/views/settings/settings_viewmodel.dart';
import 'package:stacked/stacked.dart';
import 'package:stacked_themes/stacked_themes.dart';
class SettingsView extends StatelessWidget {
const SettingsView({Key? key}) : super(key: key);
@ -29,29 +30,16 @@ class SettingsView extends StatelessWidget {
trailing: Switch(
value: model.isDarkMode,
onChanged: (value) {
model.toggleTheme();
model.isDarkMode = value;
getThemeManager(context).toggleDarkLightTheme();
},
),
onTap: () {
model.toggleTheme;
},
),
ListTile(
title: I18nText('settingsView.dynamicColorsLabel'),
subtitle: I18nText('settingsView.dynamicColorsHint'),
trailing: Switch(
value: model.isDynamicColors,
onChanged: (value) {
model.toggleDynamicColors();
},
),
onTap: () {
model.toggleDynamicColors();
},
),
Container(
padding: const EdgeInsets.symmetric(
horizontal: 16.0, vertical: 8.0),
horizontal: 16.0,
vertical: 8.0,
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [

View File

@ -2,18 +2,6 @@ import 'package:stacked/stacked.dart';
class SettingsViewModel extends BaseViewModel {
bool isDarkMode = true;
bool isDynamicColors = false;
void toggleDynamicColors() {
isDynamicColors = !isDynamicColors;
notifyListeners();
}
void toggleTheme() {
isDarkMode = !isDarkMode;
notifyListeners();
}
void setLanguage(String language) {
notifyListeners();
}