From 6687bb73ceda66d81adfe0a91da61ae3ac08a27e Mon Sep 17 00:00:00 2001 From: David Lechner Date: Tue, 6 Dec 2022 15:50:35 -0600 Subject: [PATCH 1/3] firmware: remove android check for chunk size This should no longer be needed since Chrome v98 (released Nov. 2021). --- CHANGELOG.md | 6 ++++-- src/firmware/sagas.ts | 6 ++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index af3744ae6..05d026758 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,9 +9,11 @@ ### Fixed - Fixed first tour item not shown if settings is not open ([support#823]). -- Fixed selected activity tab not controlled independently per window ([support#807]); -- Fixed selected documentation visibility not controlled independently per window ([support#807]); +- Fixed selected activity tab not controlled independently per window ([support#807]). +- Fixed selected documentation visibility not controlled independently per window ([support#807]). +- Fixed slow firmware flash on Android ([support#438]). +[support#438]: https://github.com/pybricks/support/issues/438 [support#778]: https://github.com/pybricks/support/issues/778 [support#807]: https://github.com/pybricks/support/issues/807 [support#823]: https://github.com/pybricks/support/issues/823 diff --git a/src/firmware/sagas.ts b/src/firmware/sagas.ts index 51ffbcc18..214bfb4f0 100644 --- a/src/firmware/sagas.ts +++ b/src/firmware/sagas.ts @@ -63,7 +63,6 @@ import { RootState } from '../reducers'; import { LegoUsbProductId, legoUsbVendorId } from '../usb'; import { defined, ensureError, hex, maybe } from '../utils'; import { crc32, fmod, sumComplement32 } from '../utils/math'; -import { isAndroid } from '../utils/os'; import { FailToFinishReasonType, HubError, @@ -485,9 +484,8 @@ function* handleFlashFirmware(action: ReturnType): Generat yield* disconnectAndCancel(); } - // 14 is "safe" size for all hubs and Android - const maxDataSize = - (!isAndroid() && MaxProgramFlashSize.get(info.hubType)) || 14; + // 14 is "safe" size for all hubs + const maxDataSize = MaxProgramFlashSize.get(info.hubType) || 14; let runningChecksum = 0xff; From 3361c25d8858991419bf07b4aca6a261288cab53 Mon Sep 17 00:00:00 2001 From: David Lechner Date: Wed, 7 Dec 2022 15:40:19 -0600 Subject: [PATCH 2/3] app: bump copyright year displayed in app We are a bit early but since will will do a final release soon, we don't want the app to look out of date already on the first of the year. --- src/app/constants.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/constants.ts b/src/app/constants.ts index 16d1328cb..f3b55af1c 100644 --- a/src/app/constants.ts +++ b/src/app/constants.ts @@ -54,7 +54,7 @@ export const pybricksBleFirmwareRestoreVideoUrl = 'https://pybricks.com/install/technic-boost-city/#restoring-the-original-firmware'; /** Pybricks copyright statement. */ -export const pybricksCopyright = 'Copyright (c) 2020-2022 The Pybricks Authors'; +export const pybricksCopyright = 'Copyright (c) 2020-2023 The Pybricks Authors'; /** The LEGO name with registered trademark symbol. */ export const legoRegisteredTrademark = 'LEGO®'; From 4aadd94fefc69edd780c9ae4b07858cdc902b372 Mon Sep 17 00:00:00 2001 From: David Lechner Date: Thu, 8 Dec 2022 11:19:40 -0600 Subject: [PATCH 3/3] WIP: open doc examples in editor --- src/app/App.tsx | 19 +++++++++++++++++++ src/editor/actions.ts | 8 ++++++++ src/editor/sagas.ts | 27 +++++++++++++++++++++++++++ 3 files changed, 54 insertions(+) diff --git a/src/app/App.tsx b/src/app/App.tsx index 967ad324c..ab5156d76 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -6,9 +6,11 @@ import './app.scss'; import { Classes, Spinner } from '@blueprintjs/core'; import docsPackage from '@pybricks/ide-docs/package.json'; import React, { useEffect, useState } from 'react'; +import { useDispatch } from 'react-redux'; import SplitterLayout from 'react-splitter-layout'; import { useLocalStorage, useTernaryDarkMode } from 'usehooks-ts'; import Activities from '../activities/Activities'; +import { editorActivateExample } from '../editor/actions'; import { InstallPybricksDialog } from '../firmware/installPybricksDialog/InstallPybricksDialog'; import RestoreOfficialDialog from '../firmware/restoreOfficialDialog/RestoreOfficialDialog'; import { useSettingIsShowDocsEnabled } from '../settings/hooks'; @@ -47,6 +49,7 @@ const Terminal = React.lazy(async () => { const Docs: React.VFC = () => { const { setIsSettingShowDocsEnabled } = useSettingIsShowDocsEnabled(); + const dispatch = useDispatch(); return (