🐛 Bug fixes on background image
This commit is contained in:
@ -118,7 +118,7 @@ class _AccountProfilePopupState extends State<AccountProfilePopup> {
|
||||
const VisualDensity(horizontal: -4, vertical: -2),
|
||||
trailing: const Icon(Icons.chevron_right),
|
||||
onTap: () {
|
||||
AppRouter.instance.goNamed(
|
||||
AppRouter.instance.pushNamed(
|
||||
'accountProfilePage',
|
||||
pathParameters: {'name': _userinfo!.name},
|
||||
);
|
||||
|
@ -1,28 +1,22 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:solian/shells/root_shell.dart';
|
||||
|
||||
class AppBarLeadingButton extends StatelessWidget {
|
||||
const AppBarLeadingButton({super.key});
|
||||
final bool forceBack;
|
||||
|
||||
static Widget? adaptive(BuildContext context) {
|
||||
final hasContent =
|
||||
Navigator.canPop(context) || rootScaffoldKey.currentState!.hasDrawer;
|
||||
return hasContent ? const AppBarLeadingButton() : null;
|
||||
const AppBarLeadingButton({super.key, this.forceBack = false});
|
||||
|
||||
static Widget? adaptive(BuildContext context, {bool forceBack = false}) {
|
||||
final hasContent = Navigator.canPop(context) || forceBack;
|
||||
return hasContent ? AppBarLeadingButton(forceBack: forceBack) : null;
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (Navigator.canPop(context)) {
|
||||
if (Navigator.canPop(context) || forceBack) {
|
||||
return BackButton(
|
||||
onPressed: () => Navigator.pop(context),
|
||||
);
|
||||
}
|
||||
if (rootScaffoldKey.currentState!.hasDrawer) {
|
||||
return DrawerButton(
|
||||
onPressed: () => rootScaffoldKey.currentState!.openDrawer(),
|
||||
);
|
||||
} else {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ import 'dart:io';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:solian/platform.dart';
|
||||
import 'package:solian/theme.dart';
|
||||
|
||||
class RootContainer extends StatelessWidget {
|
||||
final Widget? child;
|
||||
@ -46,3 +47,18 @@ class RootContainer extends StatelessWidget {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class ResponsiveRootContainer extends StatelessWidget {
|
||||
final Widget? child;
|
||||
|
||||
const ResponsiveRootContainer({super.key, this.child});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (AppTheme.isLargeScreen(context)) {
|
||||
return child ?? SizedBox.shrink();
|
||||
} else {
|
||||
return RootContainer(child: child);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ class EmptyPagePlaceholder extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return RootContainer(
|
||||
return ResponsiveRootContainer(
|
||||
child: Center(
|
||||
child: ClipRRect(
|
||||
borderRadius: const BorderRadius.all(Radius.circular(12)),
|
||||
|
Reference in New Issue
Block a user