diff options
| author | TrainDoctor <traindoctor@protonmail.com> | 2022-09-01 13:46:49 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-09-01 13:46:49 -0700 |
| commit | eb439574becb9a82c283d513a98440d7c8efbafe (patch) | |
| tree | b2c0b16065f31cb2123c17622a6fe42a71cebf08 /frontend/src/components/settings/pages | |
| parent | 16a6e9b6a929dea4ad4607368e4e0c515ed15b61 (diff) | |
| download | decky-loader-eb439574becb9a82c283d513a98440d7c8efbafe.tar.gz decky-loader-eb439574becb9a82c283d513a98440d7c8efbafe.zip | |
Addition of proper branch slection (#168)
* This is a bit better, but branch selection still isn't working -_-
* I'm the king of oversight
* Selecting different branch checks for updates
* Stable doesn't detect old versions, which indicates it doesn't work
* Start adding deckyState for plugin updating
* Few tweaks
* Disable nightly selection
* Update decky-frontend-lib and move useSetting set setting to async
Diffstat (limited to 'frontend/src/components/settings/pages')
3 files changed, 11 insertions, 14 deletions
diff --git a/frontend/src/components/settings/pages/general/BranchSelect.tsx b/frontend/src/components/settings/pages/general/BranchSelect.tsx index 91e814e5..d803f604 100644 --- a/frontend/src/components/settings/pages/general/BranchSelect.tsx +++ b/frontend/src/components/settings/pages/general/BranchSelect.tsx @@ -1,18 +1,21 @@ import { Dropdown, Field } from 'decky-frontend-lib'; import { FunctionComponent } from 'react'; +import { callUpdaterMethod } from '../../../../updater'; import { useSetting } from '../../../../utils/hooks/useSetting'; enum UpdateBranch { Stable, Prerelease, - Nightly, + // Nightly, } const BranchSelect: FunctionComponent<{}> = () => { const [selectedBranch, setSelectedBranch] = useSetting<UpdateBranch>('branch', UpdateBranch.Prerelease); return ( + // Returns numerical values from 0 to 2 (with current branch setup as of 8/28/22) + // 0 being stable, 1 being pre-release and 2 being nightly <Field label="Update Channel"> <Dropdown rgOptions={Object.values(UpdateBranch) @@ -22,8 +25,10 @@ const BranchSelect: FunctionComponent<{}> = () => { data: UpdateBranch[branch], }))} selectedOption={selectedBranch} - onChange={(newVal) => { - setSelectedBranch(newVal.data); + onChange={async (newVal) => { + await setSelectedBranch(newVal.data); + callUpdaterMethod('check_for_updates'); + console.log('switching branches!'); }} /> </Field> diff --git a/frontend/src/components/settings/pages/general/Updater.tsx b/frontend/src/components/settings/pages/general/Updater.tsx index 9635162c..7056ed13 100644 --- a/frontend/src/components/settings/pages/general/Updater.tsx +++ b/frontend/src/components/settings/pages/general/Updater.tsx @@ -55,21 +55,13 @@ function PatchNotesModal({ versionInfo, closeModal }: { versionInfo: VerInfo | n } export default function UpdaterSettings() { - const { isLoaderUpdating, setIsLoaderUpdating } = useDeckyState(); + const { isLoaderUpdating, setIsLoaderUpdating, versionInfo, setVersionInfo } = useDeckyState(); - const [versionInfo, setVersionInfo] = useState<VerInfo | null>(null); const [checkingForUpdates, setCheckingForUpdates] = useState<boolean>(false); const [updateProgress, setUpdateProgress] = useState<number>(-1); const [reloading, setReloading] = useState<boolean>(false); useEffect(() => { - (async () => { - const res = (await callUpdaterMethod('get_version')) as { result: VerInfo }; - setVersionInfo(res.result); - })(); - }, []); - - useEffect(() => { window.DeckyUpdater = { updateProgress: (i) => { setUpdateProgress(i); diff --git a/frontend/src/components/settings/pages/general/index.tsx b/frontend/src/components/settings/pages/general/index.tsx index c5f9b9dc..a37d8dab 100644 --- a/frontend/src/components/settings/pages/general/index.tsx +++ b/frontend/src/components/settings/pages/general/index.tsx @@ -3,7 +3,7 @@ import { useState } from 'react'; import { FaShapes } from 'react-icons/fa'; import { installFromURL } from '../../../../store'; -// import BranchSelect from './BranchSelect'; +import BranchSelect from './BranchSelect'; import RemoteDebuggingSettings from './RemoteDebugging'; import UpdaterSettings from './Updater'; @@ -22,7 +22,7 @@ export default function GeneralSettings() { /> </Field> */} <UpdaterSettings /> - {/* <BranchSelect /> */} + <BranchSelect /> <RemoteDebuggingSettings /> <Field label="Manual plugin install" |
