feat(windows): WebView2 lazy webviews + Android auto-update + history repolish#694
Open
HKLHaoBin wants to merge 13 commits into
Open
feat(windows): WebView2 lazy webviews + Android auto-update + history repolish#694HKLHaoBin wants to merge 13 commits into
HKLHaoBin wants to merge 13 commits into
Conversation
Align updateChannel prefs with background AutoUpdateGate, add symmetric manual stable/beta check buttons, Android auto-download after check, and settings toggle; extract updater_logic helpers with unit tests. Co-authored-by: Cursor <cursoragent@cursor.com>
call_static_method caused NoSuchMethodError on Thread-8 during AutoUpdateGate background check, killing the app ~4s after launch. Co-authored-by: Cursor <cursoragent@cursor.com>
Manual workflow_dispatch builds signed release APKs when ANDROID_KEYSTORE_* is configured (overlay install, data preserved); otherwise falls back to unsigned debug with job summary notice. Tag releases still require all secrets; minisign/manifest/GitHub Release remain tag-only. Co-authored-by: Cursor <cursoragent@cursor.com>
Sync UPDATER_PUBKEY_B64 with tauri.conf.json; fail download when installApk returns false; put Beta channel above auto-update toggle; add pubkey CI check script. Co-authored-by: Cursor <cursoragent@cursor.com>
Avoid squeezing the toggle beside long description text on narrow mobile layouts; align with AutoUpdateSection pattern. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Exclude Playwright/ui-check-screenshots outputs from version control and update the lockfile after tauri-nspanel resolution. Co-authored-by: Cursor <cursoragent@cursor.com>
Avoid NoSuchMethodError when installed APK dex lacks OpenLessAccessibilityService.isEnabled static bridge; query enabled services and heartbeat prefs directly. Co-authored-by: Cursor <cursoragent@cursor.com>
Add @keep and @JvmStatic on Rust-invoked bridge methods; default overlay service starts to startService and only START_RECORDING uses startForegroundService on API 26+; abort recording when foreground promotion fails. Co-authored-by: Cursor <cursoragent@cursor.com>
…ess#653) Add opt-in polishUnchanged detection, history-level repolish IPC, and UI; exclude translation history; preserve insert error codes on retry. Co-authored-by: Cursor <cursoragent@cursor.com>
…ssion Co-authored-by: Cursor <cursoragent@cursor.com>
Reduce idle WebView2 renderers by creating qa/less-computer/glow on demand and destroying on dismiss; add QA state snapshot for cold-start hydrate; lazy-load FloatingShell tabs and Settings sections for smaller main-window first paint. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Contributor
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
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.
User description
Summary
QaStateSnapshotfor cold-start hydrate; lazy-load FloatingShell tabs and Settings sections to shrink main-window first paint and idle renderer count.Build.SUPPORTED_ABIS, accessibility state, ProGuard@Keepon bridge methods).done_messagebefore movingerror_codeinto session (fixes a move-after-use bug).Test plan
PR Type
Bug fix, Enhancement, Tests
Description
Lazy-create auxiliary webviews (qa, less-computer)
Android auto-update with stable/beta channels
Detect polish unchanged and allow history repolish
Fix JNI read of Build.SUPPORTED_ABIS
Diagram Walkthrough
flowchart LR subgraph Desktop A[WebView2 lazy-create] --> B[qa/less-computer/glow] C[Hide→destroy] --> D[Free memory] end subgraph Android E[AutoUpdateGate] --> F[stable/beta manifest] F --> G[Download+install] end subgraph History H[Polish unchanged detection] --> I[mark polishUnchanged] I --> J[Repolish button] endFile Walkthrough
28 files
Add repolish/show QA window commands; lazy webview creationDetect polish unchanged; resolve error codes; add testsAdd QA snapshot, repolish methods, style-pack resolutionAdd polish_unchanged_enabled pref; update commentsAdd repolish_history_entry commandAdd get_qa_window_state command and snapshot structRegister updater_logic moduleAdd autoInstallAndroid option; update dialog stringsRefactor state handling; add cold-start hydrateLazy load non-overview tabs and settings modalAdd repolish button and unchanged tagAdd QaStateSnapshot, polishUnchangedEnabled fieldsLazy load services, privacy, advanced tabsRestructure layout; separate toggle and check buttonAdd repolishHistoryEntry and getQaWindowState mocksShow channel-specific button labelsPass autoInstallAndroid to checkForUpdatesAdd Android auto-update toggle sectionAdd polish unchanged detection toggleCompose advanced settings sectionsLazy load privacy tabLazy load general tabLazy load services tabAdd script to verify pubkey consistencyAdjust overlay bridge for new featuresAlign heartbeat with Rust-side checksImprove install result reportingPermission handling adjustments3 files
Extract constants; fix JNI field read; add install checkRewrite accessibility checks via Settings.SecureUpdate for background update integration2 files
Add version compare, manifest URLs, pubkey; unit testsAdd polishUnchangedEnabled to test defaults7 files
Add Japanese translations for new featuresAdd Traditional Chinese translationsAdd Korean translationsAdd Simplified Chinese translationsAdd English translationsUpdate documentation for auto-updateUpdate build instructions3 files
Add release signing for manual dispatchSet create:false for auxiliary windows; update updater pubkeyAdd pubkey check job1 files
Dependency adjustments for lazy loading1 files