refactor: DCM - const border radius, constructor & switch expressions (#19515)

* enable border radius, switch exp, const constructor

* regenerate provider

* more formatting

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
This commit is contained in:
shenlong
2025-06-25 13:06:24 +05:30
committed by GitHub
parent 05064f87f0
commit 5b0575b956
130 changed files with 338 additions and 264 deletions
+14 -6
View File
@@ -105,7 +105,9 @@ class AlbumsPage extends HookConsumerWidget {
color: context.colorScheme.onSurface.withAlpha(0),
width: 0,
),
borderRadius: BorderRadius.circular(24),
borderRadius: const BorderRadius.all(
Radius.circular(24),
),
gradient: LinearGradient(
colors: [
context.colorScheme.primary.withValues(alpha: 0.075),
@@ -301,7 +303,9 @@ class QuickFilterButton extends StatelessWidget {
),
shape: WidgetStateProperty.all(
RoundedRectangleBorder(
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
side: BorderSide(
color: context.colorScheme.onSurface.withAlpha(25),
width: 1,
@@ -334,8 +338,10 @@ class SortButton extends ConsumerWidget {
style: MenuStyle(
elevation: const WidgetStatePropertyAll(1),
shape: WidgetStateProperty.all(
RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(24),
),
),
),
padding: const WidgetStatePropertyAll(
@@ -384,8 +390,10 @@ class SortButton extends ConsumerWidget {
: Colors.transparent,
),
shape: WidgetStateProperty.all(
RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(24),
),
),
),
),
@@ -246,8 +246,10 @@ class BackupAlbumSelectionPage extends HookConsumerWidget {
context: context,
builder: (BuildContext context) {
return AlertDialog(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(10),
),
),
elevation: 5,
title: Text(
@@ -147,7 +147,9 @@ class BackupControllerPage extends HookConsumerWidget {
padding: const EdgeInsets.only(top: 8.0),
child: Card(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
side: BorderSide(
color: context.colorScheme.outlineVariant,
width: 1,
@@ -42,9 +42,11 @@ class FailedBackupStatusPage extends HookConsumerWidget {
vertical: 4,
),
child: Card(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(15), // if you need this
side: const BorderSide(
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(15), // if you need this
),
side: BorderSide(
color: Colors.black12,
width: 1,
),
@@ -60,7 +60,9 @@ class AppLogDetailPage extends HookConsumerWidget {
Container(
decoration: BoxDecoration(
color: context.colorScheme.surfaceContainerHigh,
borderRadius: BorderRadius.circular(15.0),
borderRadius: const BorderRadius.all(
Radius.circular(15.0),
),
),
child: Padding(
padding: const EdgeInsets.all(8.0),
@@ -99,7 +101,9 @@ class AppLogDetailPage extends HookConsumerWidget {
Container(
decoration: BoxDecoration(
color: context.colorScheme.surfaceContainerHigh,
borderRadius: BorderRadius.circular(15.0),
borderRadius: const BorderRadius.all(
Radius.circular(15.0),
),
),
child: Padding(
padding: const EdgeInsets.all(8.0),
@@ -120,8 +120,10 @@ class CreateAlbumPage extends HookConsumerWidget {
alignment: Alignment.centerLeft,
padding:
const EdgeInsets.symmetric(vertical: 24, horizontal: 16),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(10),
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(10),
),
),
backgroundColor: context.colorScheme.surfaceContainerHigh,
),
+4 -2
View File
@@ -90,8 +90,10 @@ class DownloadTaskTile extends StatelessWidget {
width: context.width - 32,
child: Card(
clipBehavior: Clip.antiAlias,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(16),
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(16),
),
),
child: ListTile(
minVerticalPadding: 18,
+4 -2
View File
@@ -3,6 +3,7 @@ import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:immich_mobile/extensions/build_context_extensions.dart';
import 'package:immich_mobile/routing/router.dart';
import 'package:immich_mobile/widgets/settings/advanced_settings.dart';
import 'package:immich_mobile/widgets/settings/asset_list_settings/asset_list_settings.dart';
import 'package:immich_mobile/widgets/settings/asset_viewer_settings/asset_viewer_settings.dart';
@@ -11,7 +12,6 @@ import 'package:immich_mobile/widgets/settings/language_settings.dart';
import 'package:immich_mobile/widgets/settings/networking_settings/networking_settings.dart';
import 'package:immich_mobile/widgets/settings/notification_setting.dart';
import 'package:immich_mobile/widgets/settings/preference_settings/preference_setting.dart';
import 'package:immich_mobile/routing/router.dart';
enum SettingSection {
advanced(
@@ -85,12 +85,13 @@ class SettingsPage extends StatelessWidget {
centerTitle: false,
title: const Text('settings').tr(),
),
body: context.isMobile ? _MobileLayout() : _TabletLayout(),
body: context.isMobile ? const _MobileLayout() : const _TabletLayout(),
);
}
}
class _MobileLayout extends StatelessWidget {
const _MobileLayout();
@override
Widget build(BuildContext context) {
return ListView(
@@ -147,6 +148,7 @@ class _MobileLayout extends StatelessWidget {
}
class _TabletLayout extends HookWidget {
const _TabletLayout();
@override
Widget build(BuildContext context) {
final selectedSection =
+9 -3
View File
@@ -124,7 +124,9 @@ class EditImagePage extends ConsumerWidget {
),
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(7),
borderRadius: const BorderRadius.all(
Radius.circular(7),
),
boxShadow: [
BoxShadow(
color: Colors.black.withValues(alpha: 0.2),
@@ -135,7 +137,9 @@ class EditImagePage extends ConsumerWidget {
],
),
child: ClipRRect(
borderRadius: BorderRadius.circular(7),
borderRadius: const BorderRadius.all(
Radius.circular(7),
),
child: Image(
image: image.image,
fit: BoxFit.contain,
@@ -149,7 +153,9 @@ class EditImagePage extends ConsumerWidget {
margin: const EdgeInsets.only(bottom: 60, right: 10, left: 10, top: 10),
decoration: BoxDecoration(
color: context.scaffoldBackgroundColor,
borderRadius: BorderRadius.circular(30),
borderRadius: const BorderRadius.all(
Radius.circular(30),
),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+6 -2
View File
@@ -162,13 +162,17 @@ class _FilterButton extends StatelessWidget {
width: 80,
height: 80,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10),
borderRadius: const BorderRadius.all(
Radius.circular(10),
),
border: isSelected
? Border.all(color: context.primaryColor, width: 3)
: null,
),
child: ClipRRect(
borderRadius: BorderRadius.circular(10),
borderRadius: const BorderRadius.all(
Radius.circular(10),
),
child: ColorFiltered(
colorFilter: filter,
child: FittedBox(
+6 -2
View File
@@ -105,7 +105,9 @@ class QuickAccessButtons extends ConsumerWidget {
color: context.colorScheme.onSurface.withAlpha(10),
width: 1,
),
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
gradient: LinearGradient(
colors: [
context.colorScheme.primary.withAlpha(10),
@@ -240,7 +242,9 @@ class PeopleCollectionCard extends ConsumerWidget {
height: size,
width: size,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
gradient: LinearGradient(
colors: [
context.colorScheme.primary.withAlpha(30),
@@ -80,7 +80,9 @@ class PartnerDetailPage extends HookConsumerWidget {
color: context.colorScheme.onSurface.withAlpha(10),
width: 1,
),
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
gradient: LinearGradient(
colors: [
context.colorScheme.primary.withAlpha(10),
@@ -143,7 +143,9 @@ class PlaceTile extends StatelessWidget {
),
),
leading: ClipRRect(
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
child: CachedNetworkImage(
width: 80,
height: 80,
+1 -1
View File
@@ -156,7 +156,7 @@ class MapPage extends HookConsumerWidget {
} else {
// If no asset was previously selected and no new asset is available, close the bottom sheet
if (selectedMarker.value == null) {
bottomSheetStreamController.add(MapCloseBottomSheet());
bottomSheetStreamController.add(const MapCloseBottomSheet());
}
selectedMarker.value = null;
}
+15 -14
View File
@@ -511,16 +511,11 @@ class SearchPage extends HookConsumerWidget {
search();
}
IconData getSearchPrefixIcon() {
switch (textSearchType.value) {
case TextSearchType.context:
return Icons.image_search_rounded;
case TextSearchType.filename:
return Icons.abc_rounded;
case TextSearchType.description:
return Icons.text_snippet_outlined;
}
}
IconData getSearchPrefixIcon() => switch (textSearchType.value) {
TextSearchType.context => Icons.image_search_rounded,
TextSearchType.filename => Icons.abc_rounded,
TextSearchType.description => Icons.text_snippet_outlined,
};
return Scaffold(
resizeToAvoidBottomInset: false,
@@ -533,8 +528,10 @@ class SearchPage extends HookConsumerWidget {
style: MenuStyle(
elevation: const WidgetStatePropertyAll(1),
shape: WidgetStateProperty.all(
RoundedRectangleBorder(
borderRadius: BorderRadius.circular(24),
const RoundedRectangleBorder(
borderRadius: BorderRadius.all(
Radius.circular(24),
),
),
),
padding: const WidgetStatePropertyAll(
@@ -631,7 +628,9 @@ class SearchPage extends HookConsumerWidget {
color: context.colorScheme.onSurface.withAlpha(0),
width: 0,
),
borderRadius: BorderRadius.circular(24),
borderRadius: const BorderRadius.all(
Radius.circular(24),
),
gradient: LinearGradient(
colors: [
context.colorScheme.primary.withValues(alpha: 0.075),
@@ -823,7 +822,9 @@ class QuickLinkList extends StatelessWidget {
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(20),
borderRadius: const BorderRadius.all(
Radius.circular(20),
),
border: Border.all(
color: context.colorScheme.outline.withAlpha(10),
width: 1,