[Feat] Developer mode Easter egg via version number tap#172
Merged
Conversation
Remove the always-on dev screenshot capture and hide DevTools/Reload menu items behind a persistent developer mode flag. Tapping the version number 5 times in the About section enables developer mode, which is persisted to config.json and rebuilds the app menu to expose Reload and Toggle DevTools.
Contributor
|
Hi @samzong, DetailsInstructions for interacting with me using comments are available here. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a hidden developer mode activated by tapping the version number 5 times in Settings > About (Android-style Easter egg). Remove the always-on dev screenshot feature. DevTools and Reload menu items are now only visible when developer mode is enabled or running in dev mode.
Type of change
[Feat]new featureWhy is this needed?
Production users should not see DevTools/Reload in the View menu by default, but power users and developers need a way to access them without building from source. The previous screenshot-on-startup behavior was unnecessary dev noise.
What changed?
captureScreenshot,setupDevScreenshot,SCREENSHOT_PATH, andwriteFileSyncimport from main processbuildAppMenunow accepts adevModeflag; Reload and Toggle DevTools are only shown whendevMode || is.devapp:rebuild-menuIPC so the renderer can trigger a menu rebuild after toggling developer modedevMode?: booleantoAppConfig,AppSettings, preload bridge, and Zustand UI storeAboutSection.tsx: tapping the version number 5 times within 3 seconds enables developer mode with toast feedback; once enabled, a "Disable" button appearsApp.tsx: loadsdevModefrom persisted settings on startupdevMode,devModeSteps,devModeEnabled,devModeDisabled,devModeDisable) across all 8 localesArchitecture impact
app:rebuild-menuIPC channel from renderer to main to rebuild the native menu when developer mode is toggleddocs/architecture-invariants.md: noneLinked issues
Closes #
Validation
pnpm lintpnpm testpnpm check:ui-contractpnpm check(full suite: lint, architecture, ui-contract, renderer-copy, i18n, format, typecheck, test)pnpm buildScreenshots or recordings
No UI layout changes. The version number span gains a click handler (no visual change). When developer mode is active, a new "Developer Mode / Disable" row appears below the version row in About section.
Release note
Checklist
[Feat]