More UI updates

This commit is contained in:
Juan Gilsanz Polo 2022-11-04 17:04:25 +01:00
parent bbf528e369
commit 55010f8896
21 changed files with 581 additions and 560 deletions

View file

@ -66,9 +66,9 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget {
? Theme.of(context).primaryColor
: Colors.green
: appConfigProvider.useThemeColorForStatus == true
? Colors.grey
? Theme.of(context).colorScheme.onSurface.withOpacity(0.38)
: Colors.red
: Colors.grey,
: Theme.of(context).colorScheme.onSurface.withOpacity(0.38)
),
const SizedBox(width: 20),
Column(
@ -84,9 +84,9 @@ class HomeAppBar extends StatelessWidget with PreferredSizeWidget {
const SizedBox(height: 5),
Text(
"${server.connectionMethod}://${server.domain}${server.path ?? ""}${server.port != null ? ':${server.port}' : ""}",
style: const TextStyle(
style: TextStyle(
fontSize: 14,
color: Color.fromRGBO(140, 140, 140, 1)
color: Theme.of(context).colorScheme.onSurfaceVariant
),
)
],

View file

@ -24,9 +24,10 @@ class HomeFab extends StatelessWidget {
return serversProvider.serverStatus.loadStatus == 1
? FloatingActionButton(
onPressed: openManagementBottomSheet,
backgroundColor: Theme.of(context).colorScheme.primaryContainer,
child: Icon(
Icons.shield_rounded,
color: Theme.of(context).primaryColor.computeLuminance() > 0.5 ? Colors.black : Colors.white,
color: Theme.of(context).colorScheme.onPrimaryContainer,
),
)
: const SizedBox();

View file

@ -36,7 +36,7 @@ class ManagementModal extends StatelessWidget {
Widget mainSwitch() {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 12),
padding: const EdgeInsets.symmetric(horizontal: 24),
child: Material(
color: Theme.of(context).primaryColor.withOpacity(0.1),
borderRadius: BorderRadius.circular(28),
@ -84,7 +84,7 @@ class ManagementModal extends StatelessWidget {
child: Padding(
padding: const EdgeInsets.symmetric(
horizontal: 35,
vertical: 5
vertical: 8
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
@ -94,12 +94,15 @@ class ManagementModal extends StatelessWidget {
Icon(
icon,
size: 24,
color: Theme.of(context).colorScheme.onSurfaceVariant,
),
const SizedBox(width: 20),
const SizedBox(width: 16),
Text(
label,
style: const TextStyle(
fontSize: 15,
style: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w400,
color: Theme.of(context).colorScheme.onSurface,
),
),
],
@ -136,53 +139,55 @@ class ManagementModal extends StatelessWidget {
? const NeverScrollableScrollPhysics()
: null,
children: [
const Padding(
padding: EdgeInsets.only(top: 24),
child: Icon(
Icons.shield_rounded,
size: 26,
),
),
Padding(
padding: const EdgeInsets.symmetric(vertical: 24),
child: Text(
AppLocalizations.of(context)!.manageServer,
textAlign: TextAlign.center,
style: const TextStyle(
fontSize: 22
Padding(
padding: const EdgeInsets.only(top: 24),
child: Icon(
Icons.shield_rounded,
size: 24,
color: Theme.of(context).colorScheme.onSurface,
),
),
),
mainSwitch(),
const SizedBox(height: 10),
smallSwitch(
AppLocalizations.of(context)!.ruleFiltering,
Icons.filter_list_rounded,
serversProvider.serverStatus.data!.filteringEnabled,
(value) => updateBlocking(value, 'filtering'),
serversProvider.protectionsManagementProcess.contains('filtering')
),
smallSwitch(
AppLocalizations.of(context)!.safeBrowsing,
Icons.vpn_lock_rounded,
serversProvider.serverStatus.data!.safeBrowsingEnabled,
(value) => updateBlocking(value, 'safeBrowsing'),
serversProvider.protectionsManagementProcess.contains('safeBrowsing')
),
smallSwitch(
AppLocalizations.of(context)!.parentalFiltering,
Icons.block,
serversProvider.serverStatus.data!.parentalControlEnabled,
(value) => updateBlocking(value, 'parentalControl'),
serversProvider.protectionsManagementProcess.contains('parentalControl')
),
smallSwitch(
AppLocalizations.of(context)!.safeSearch,
Icons.search_rounded,
serversProvider.serverStatus.data!.safeSearchEnabled,
(value) => updateBlocking(value, 'safeSearch'),
serversProvider.protectionsManagementProcess.contains('safeSearch')
),
Padding(
padding: const EdgeInsets.symmetric(vertical: 16),
child: Text(
AppLocalizations.of(context)!.manageServer,
textAlign: TextAlign.center,
style: TextStyle(
fontSize: 24,
color: Theme.of(context).colorScheme.onSurface,
),
),
),
mainSwitch(),
const SizedBox(height: 10),
smallSwitch(
AppLocalizations.of(context)!.ruleFiltering,
Icons.filter_list_rounded,
serversProvider.serverStatus.data!.filteringEnabled,
(value) => updateBlocking(value, 'filtering'),
serversProvider.protectionsManagementProcess.contains('filtering')
),
smallSwitch(
AppLocalizations.of(context)!.safeBrowsing,
Icons.vpn_lock_rounded,
serversProvider.serverStatus.data!.safeBrowsingEnabled,
(value) => updateBlocking(value, 'safeBrowsing'),
serversProvider.protectionsManagementProcess.contains('safeBrowsing')
),
smallSwitch(
AppLocalizations.of(context)!.parentalFiltering,
Icons.block,
serversProvider.serverStatus.data!.parentalControlEnabled,
(value) => updateBlocking(value, 'parentalControl'),
serversProvider.protectionsManagementProcess.contains('parentalControl')
),
smallSwitch(
AppLocalizations.of(context)!.safeSearch,
Icons.search_rounded,
serversProvider.serverStatus.data!.safeSearchEnabled,
(value) => updateBlocking(value, 'safeSearch'),
serversProvider.protectionsManagementProcess.contains('safeSearch')
),
],
),
),