Merge pull request #3024 from pangeachat/2977-change-screen-after-i-have-seen-that-ive-completed-the-getting-started-tasks
chore: add close button to onboarding page on web
This commit is contained in:
commit
261dfafc6a
3 changed files with 47 additions and 30 deletions
|
|
@ -25,6 +25,15 @@ class Onboarding extends StatefulWidget {
|
|||
class OnboardingController extends State<Onboarding> {
|
||||
static final GetStorage _onboardingStorage = GetStorage('onboarding_storage');
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
// Initialize the storage if needed
|
||||
GetStorage.init('onboarding_storage').then((_) {
|
||||
if (mounted) setState(() {});
|
||||
});
|
||||
}
|
||||
|
||||
static bool get isClosed => _onboardingStorage.read('closed') ?? false;
|
||||
|
||||
static bool get isComplete => OnboardingStepsEnum.values.every(
|
||||
|
|
|
|||
|
|
@ -14,31 +14,34 @@ class OnboardingComplete extends StatelessWidget {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return FluffyThemes.isColumnMode(context)
|
||||
? Text(
|
||||
L10n.of(context).getStartedComplete,
|
||||
textAlign: TextAlign.center,
|
||||
style: const TextStyle(
|
||||
fontSize: 32.0,
|
||||
final isColumnMode = FluffyThemes.isColumnMode(context);
|
||||
return Stack(
|
||||
children: [
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: Theme.of(context).colorScheme.onSurface.withAlpha(20),
|
||||
borderRadius: BorderRadius.circular(
|
||||
10.0,
|
||||
),
|
||||
)
|
||||
: Stack(
|
||||
children: [
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: Theme.of(context).colorScheme.onSurface.withAlpha(20),
|
||||
borderRadius: BorderRadius.circular(
|
||||
10.0,
|
||||
),
|
||||
),
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
padding: const EdgeInsets.fromLTRB(
|
||||
),
|
||||
margin: const EdgeInsets.all(12.0),
|
||||
padding: isColumnMode
|
||||
? const EdgeInsets.all(48.0)
|
||||
: const EdgeInsets.fromLTRB(
|
||||
48.0,
|
||||
8.0,
|
||||
48.0,
|
||||
0.0,
|
||||
),
|
||||
child: Column(
|
||||
child: isColumnMode
|
||||
? Text(
|
||||
L10n.of(context).getStartedComplete,
|
||||
textAlign: TextAlign.center,
|
||||
style: const TextStyle(
|
||||
fontSize: 32.0,
|
||||
),
|
||||
)
|
||||
: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
spacing: 24.0,
|
||||
children: [
|
||||
|
|
@ -56,16 +59,16 @@ class OnboardingComplete extends StatelessWidget {
|
|||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
right: 16.0,
|
||||
top: 16.0,
|
||||
child: IconButton(
|
||||
icon: const Icon(Icons.close),
|
||||
onPressed: controller.closeCompletedMessage,
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
),
|
||||
Positioned(
|
||||
right: 16.0,
|
||||
top: 16.0,
|
||||
child: IconButton(
|
||||
icon: const Icon(Icons.close),
|
||||
onPressed: controller.closeCompletedMessage,
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import 'package:fluffychat/pangea/onboarding/onboarding_constants.dart';
|
|||
import 'package:fluffychat/pangea/onboarding/onboarding_step.dart';
|
||||
import 'package:fluffychat/pangea/onboarding/onboarding_steps_enum.dart';
|
||||
import 'package:fluffychat/utils/stream_extension.dart';
|
||||
import 'package:fluffychat/widgets/layouts/empty_page.dart';
|
||||
import 'package:fluffychat/widgets/layouts/max_width_body.dart';
|
||||
import 'package:fluffychat/widgets/matrix.dart';
|
||||
|
||||
|
|
@ -28,6 +29,10 @@ class OnboardingView extends StatelessWidget {
|
|||
final client = Matrix.of(context).client;
|
||||
final isColumnMode = FluffyThemes.isColumnMode(context);
|
||||
|
||||
if (OnboardingController.isClosed && isColumnMode) {
|
||||
return const EmptyPage();
|
||||
}
|
||||
|
||||
final screenheight = MediaQuery.of(context).size.height;
|
||||
|
||||
return Material(
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue