AppDrawer: Only show Pro Mode button if we aren't in Pro Mode

This commit is contained in:
Vishesh Handa
2020-04-08 14:18:47 +02:00
parent b1683acbf3
commit 20a5ad8043
2 changed files with 10 additions and 3 deletions

View File

@ -32,6 +32,8 @@ class Settings {
String folderViewHeaderType = "TitleGenerated";
int version = 0;
bool proMode = false;
void load(SharedPreferences pref) {
gitAuthor = pref.getString("gitAuthor") ?? gitAuthor;
gitAuthorEmail = pref.getString("gitAuthorEmail") ?? gitAuthorEmail;
@ -63,6 +65,7 @@ class Settings {
pref.getString("folderViewHeaderType") ?? folderViewHeaderType;
version = pref.getInt("settingsVersion") ?? version;
proMode = pref.getBool("proMode") ?? proMode;
}
Future save() async {
@ -83,6 +86,7 @@ class Settings {
pref.setBool("showNoteSummary", showNoteSummary);
pref.setString("folderViewHeaderType", folderViewHeaderType);
pref.setInt("settingsVersion", version);
pref.setBool("proMode", proMode);
// Shouldn't we check if something has actually changed?
for (var f in changeObservers) {
@ -107,6 +111,7 @@ class Settings {
"showNoteSummary": showNoteSummary,
"folderViewHeaderType": folderViewHeaderType,
"version": version,
"proMode": proMode,
};
}

View File

@ -3,6 +3,7 @@ import 'dart:io';
import 'package:flutter/material.dart';
import 'package:flutter_email_sender/flutter_email_sender.dart';
import 'package:gitjournal/features.dart';
import 'package:gitjournal/settings.dart';
import 'package:launch_review/launch_review.dart';
import 'package:provider/provider.dart';
import 'package:share/share.dart';
@ -65,11 +66,11 @@ class AppDrawer extends StatelessWidget {
),
),
if (setupGitButton != null) ...[setupGitButton, divider],
if (Features.purchaseProModeAvailable)
if (Features.purchaseProModeAvailable && !Settings.instance.proMode)
_buildDrawerTile(
context,
icon: Icons.power,
title: "Go Pro",
title: "Unlock Pro Version",
onTap: () {
Navigator.pop(context);
Navigator.pushNamed(context, "/purchase");
@ -79,7 +80,8 @@ class AppDrawer extends StatelessWidget {
);
},
),
if (Features.purchaseProModeAvailable) divider,
if (Features.purchaseProModeAvailable && !!Settings.instance.proMode)
divider,
_buildDrawerTile(
context,
icon: Icons.note,