AppDrawer: Use enum Events instead of strings

It's easier when all the events are declared in one place. This patch
gets us one step closer to that.
This commit is contained in:
Vishesh Handa
2020-08-09 02:10:39 +02:00
parent 2bc9e8deaf
commit 1379fcfb0b
2 changed files with 27 additions and 21 deletions

View File

@ -24,6 +24,13 @@ enum Event {
FolderRenamed,
FolderConfigUpdated,
RepoSynced,
DrawerSetupGitHost,
DrawerShare,
DrawerRate,
DrawerFeedback,
DrawerBugReport,
DrawerSettings,
}
String _eventToString(Event e) {
@ -55,6 +62,19 @@ String _eventToString(Event e) {
case Event.RepoSynced:
return "repo_synced";
case Event.DrawerSetupGitHost:
return "drawer_setupGitHost";
case Event.DrawerShare:
return "drawer_share";
case Event.DrawerRate:
return "drawer_rate";
case Event.DrawerFeedback:
return "drawer_feedback";
case Event.DrawerBugReport:
return "drawer_bugreport";
case Event.DrawerSettings:
return "drawer_settings";
}
return "unknown_event";

View File

@ -35,9 +35,7 @@ class AppDrawer extends StatelessWidget {
Navigator.pop(context);
Navigator.pushNamed(context, "/setupRemoteGit");
getAnalytics().logEvent(
name: "drawer_setupGitHost",
);
logEvent(Event.DrawerSetupGitHost);
},
);
}
@ -107,9 +105,7 @@ class AppDrawer extends StatelessWidget {
Navigator.pop(context);
Share.share('Checkout GitJournal https://gitjournal.io/');
getAnalytics().logEvent(
name: "drawer_share",
);
logEvent(Event.DrawerShare);
},
),
_buildDrawerTile(
@ -121,11 +117,9 @@ class AppDrawer extends StatelessWidget {
androidAppId: "io.gitjournal.gitjournal",
iOSAppId: "1466519634",
);
Navigator.pop(context);
getAnalytics().logEvent(
name: "drawer_rate",
);
Navigator.pop(context);
logEvent(Event.DrawerRate);
},
),
_buildDrawerTile(
@ -148,10 +142,7 @@ class AppDrawer extends StatelessWidget {
launch(url);
Navigator.pop(context);
getAnalytics().logEvent(
name: "drawer_feedback",
);
logEvent(Event.DrawerFeedback);
},
),
_buildDrawerTile(
@ -174,10 +165,7 @@ class AppDrawer extends StatelessWidget {
await FlutterEmailSender.send(email);
Navigator.pop(context);
getAnalytics().logEvent(
name: "drawer_bugreport",
);
logEvent(Event.DrawerBugReport);
},
),
_buildDrawerTile(
@ -188,9 +176,7 @@ class AppDrawer extends StatelessWidget {
Navigator.pop(context);
Navigator.pushNamed(context, "/settings");
getAnalytics().logEvent(
name: "drawer_settings",
);
logEvent(Event.DrawerSettings);
},
),
],