+
+ {
+ setIsStarred(e.data < settings.get("starredApps").length);
+ if(e.data === SpecialSelections.FileShortcut) {
+ createFileShortcut();
+ setSelectedApp(null);
+ }
+ else setSelectedApp(e.data);
+ }}
+ />
+
+
+ {
+ if(selectedApp === null) return;
+
+ let toBeStarred = appList[selectedApp];
+
+ setIsStarred(!isStarred);
+ let starredApps = settings.get("starredApps");
+ if(isStarred) {
+ starredApps.splice(starredApps.indexOf(appList[selectedApp]), 1);
+ } else {
+ starredApps.push(appList[selectedApp]);
+ }
+ settings.set("starredApps", starredApps);
+
+ buildAppList()
+ .then(() => {
+ if(isStarred) {
+ let foundApp = 0;
+ for(let app of appList) {
+ if(app.name === toBeStarred.name) {
+ foundApp = appList.indexOf(app);
+ break;
+ }
+ }
+
+ setSelectedApp(foundApp);
+ } else {
+ setSelectedApp(starredApps.length-1);
+ }
+ })
+ }}>
+ {isStarred ? : }
+
+
+