From 0cf322631c95b879a8c6ec532963430bca50bcbb Mon Sep 17 00:00:00 2001 From: Robin Davies Date: Wed, 28 Aug 2024 23:35:01 -0400 Subject: [PATCH] Adaptive Update Dialog --- react/src/UpdateDialog.tsx | 128 ++++++++++++++++++++++--------------- 1 file changed, 76 insertions(+), 52 deletions(-) diff --git a/react/src/UpdateDialog.tsx b/react/src/UpdateDialog.tsx index 8223b33..3ece574 100644 --- a/react/src/UpdateDialog.tsx +++ b/react/src/UpdateDialog.tsx @@ -34,6 +34,7 @@ import { UpdateStatus, UpdateRelease, UpdatePolicyT, intToUpdatePolicyT } from ' import { PiPedalModelFactory, PiPedalModel } from './PiPedalModel'; import Select from '@mui/material/Select'; import MenuItem from '@mui/material/MenuItem'; +import ResizeResponsiveComponent from './ResizeResponsiveComponent'; const UPDATE_CHECK_DELAY = 86400000; // one day in ms. @@ -47,12 +48,12 @@ export interface UpdateDialogProps { export interface UpdateDialogState { updateStatus: UpdateStatus; - compactLandscape: boolean; + compactWidth: boolean; alertDialogOpen: boolean; alertDialogMessage: string; }; -export default class UpdateDialog extends React.Component { +export default class UpdateDialog extends ResizeResponsiveComponent { private model: PiPedalModel; constructor(props: UpdateDialogProps) { @@ -61,12 +62,13 @@ export default class UpdateDialog extends React.Component { this.handleClose(); }} style={{ userSelect: "none" }} > - { - (!compact) && - ( - -
- PiPedal Updates - -
+ +
+ Updates + +
-
- ) - } - { - (!compact) && - ( - - ) - } +
+ {(upToDate) && ( @@ -197,31 +196,56 @@ export default class UpdateDialog extends React.Component + + Current version: + + + {updateStatus.currentVersionDisplayName} + + {(showUpgradeVersion) && ( +
+ + Update version: + + + {updateRelease.upgradeVersionDisplayName} + +
+ )} + + + ) : ( +
+
+ + Current version: + + {(showUpgradeVersion) && ( + + Update version: + + ) + } +
+
+ + {updateStatus.currentVersionDisplayName} + + {(showUpgradeVersion) && ( + + {updateRelease.upgradeVersionDisplayName} + + ) + } +
+
+ + ) + } -
-
- - Current version: - - {(showUpgradeVersion) && ( - - Update version: - - ) - } -
-
- - {updateStatus.currentVersionDisplayName} - - {(showUpgradeVersion) && ( - - {updateRelease.upgradeVersionDisplayName} - - ) - } -
-
{ (updateStatus.errorMessage.length !== 0) && ( @@ -233,7 +257,7 @@ export default class UpdateDialog extends React.Component { this.onViewReleaseNotes(); }}>View release notes +