From 0aa7a46568d22c3240be9f812e4e7b152b152193 Mon Sep 17 00:00:00 2001 From: Robin Davies Date: Tue, 26 Apr 2022 10:16:12 -0400 Subject: [PATCH] Sponsor. --- react/src/AndroidHost.tsx | 2 ++ react/src/AppThemed.tsx | 23 +++++++++++++++++++++++ react/src/PiPedalModel.tsx | 7 +++++++ 3 files changed, 32 insertions(+) diff --git a/react/src/AndroidHost.tsx b/react/src/AndroidHost.tsx index c71ea32..6c853b9 100644 --- a/react/src/AndroidHost.tsx +++ b/react/src/AndroidHost.tsx @@ -23,6 +23,7 @@ */ export interface AndroidHostInterface { + showSponsorship() : void; isAndroidHosted(): boolean; getHostVersion() : string; chooseNewDevice() : void; @@ -44,5 +45,6 @@ export class FakeAndroidHost implements AndroidHostInterface setDisconnected(isDisconnected: boolean): void { } + showSponsorship() : void { } } \ No newline at end of file diff --git a/react/src/AppThemed.tsx b/react/src/AppThemed.tsx index ff8db5c..cb6bfc4 100644 --- a/react/src/AppThemed.tsx +++ b/react/src/AppThemed.tsx @@ -28,6 +28,7 @@ import Typography from '@mui/material/Typography'; import createStyles from '@mui/styles/createStyles'; import withStyles from '@mui/styles/withStyles'; import IconButton from '@mui/material/IconButton'; +import VolunteerActivismIcon from '@mui/icons-material/VolunteerActivism'; import MenuButton from '@mui/icons-material/Menu'; import { TemporaryDrawer } from './TemporaryDrawer'; import FullscreenIcon from '@mui/icons-material/Fullscreen'; @@ -405,10 +406,26 @@ const AppThemed = withStyles(appStyles)(class extends ResizeResponsiveComponent< editBankDialogOpen: false }); + } + handleDrawerDonationClick() { + this.setState({ + isDrawerOpen: false, + }); + if (this.model_.isAndroidHosted()) + { + this.model_.showAndroidDonationActivity(); + } else { + if (window) + { + window.open("https://github.com/sponsors/rerdavies", '_blank'); + } + } + } handleDrawerAboutClick() { this.setState({ + isDrawerOpen: false, aboutDialogOpen: true }); @@ -727,6 +744,12 @@ const AppThemed = withStyles(appStyles)(class extends ResizeResponsiveComponent< + { this.handleDrawerDonationClick() }}> + + + + + diff --git a/react/src/PiPedalModel.tsx b/react/src/PiPedalModel.tsx index d1041c2..73c9d2e 100644 --- a/react/src/PiPedalModel.tsx +++ b/react/src/PiPedalModel.tsx @@ -436,6 +436,7 @@ export interface PiPedalModel { setFavorite(pluginUrl: string, isFavorite: boolean): void; isAndroidHosted(): boolean; + showAndroidDonationActivity(): void; getAndroidHostVersion(): string; chooseNewDevice(): void; }; @@ -2106,6 +2107,12 @@ class PiPedalModelImpl implements PiPedalModel { isAndroidHosted(): boolean { return this.androidHost !== undefined; } + showAndroidDonationActivity(): void { + if (this.androidHost) + { + this.androidHost.showSponsorship(); + } + } getAndroidHostVersion(): string { if (this.androidHost) { return this.androidHost.getHostVersion();