Repository navigation
Fix language reload, jumping search rows, Enter and calculator after #30/#32 - #33
Merged
Merged
Conversation
PR #30 stopped reloading the whole model on every recreate. A language change recreates Launcher, which then binds the in-memory model directly, and InvariantDeviceProfile.toModelState() left out the locale, so the locale broadcast never reported a model change either. App labels and drawer section letters stayed in the old language. Include the locale list (all tags, not just the primary language: labels fall back through it and the drawer index is built from it) in toModelState(), so the existing locale path runs refreshAndReloadLauncher. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
PR #32 seeded every non-app provider with an empty list on each keystroke, so web suggestions, contacts, files and settings vanished and came back 100-1000 ms later, moving the rows under the user's finger. Seed each provider with what it returned for the previous query of the same typing session instead; its answer to the new query replaces those rows as soon as it arrives. Clearing the box, Back and closing search end the session. A session counter plus a lock around the job launch keep a search queued before Back from delivering results or seeds into the next session. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
With no app match, the first row Enter could open was 'Search in Play Store' until web suggestions arrived. Skip that row for the quick-launch target while a web search row is shown, so Enter searches the web. Row order is unchanged. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
With the calculator now on by default, typing 'e', 'pi' or a plain number such as '2024' showed a calculator row, which also became the Enter target. Answer only when the query has a digit and applies an operator or a function; add sqrt() next to abs(). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
denson9874
added a commit
that referenced
this pull request
Sep 30, 2026
… fixes from public main (#29-#33) Ports the android/ part of public main 938e9c6..73b6592 (PRs #29-#33): - #29 BaseDepthController: skip redundant workspace blur clears and per-frame logging - #30 stop reloading the whole model on every recreate (always-reload-icons default off) - #31 stop re-binding prediction containers on every resume and state change - #32 Pixel-style drawer search: instant results, calculator on by default, opaque focused pill, "Pixel Search (third-party)" label - #33 locale change reloads the model; seeded provider results with session guard; Enter never opens a Play Store search while web suggestions load; calculator only answers real calculations (sqrt added) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
denson9874
added a commit
that referenced
this pull request
Sep 30, 2026
…ge-following labels, bump to v4.0.0 (49) Major release built on the #29-#33 port: instant drawer search that keeps rows in place, opaque focused pill, calculator on by default and only for real calculations, Enter searches the web, fewer blur clears, no full model reload on recreate, no prediction re-binds on resume, and labels that follow a system language change. Default changes: "Always reload icons" off unless set, calculator results on. Changelog 49, 4.0.0 announcement and parity ledger updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Requested by Daryl Denson
A review of the merged PRs #29–#32 found four problems. This fixes them before they ship in 4.0.0.
Before:
e,pior a plain number like2024showed a calculator row, and that row became the Enter target. This came from Pixel-style drawer search: instant results, pill stays visible, calculator on #32.After:
12*7,sqrt(16)or2*pi.sqrt()is new.How:
InvariantDeviceProfile.toModelState()now includes the locale list, so the existing locale-change path runsrefreshAndReloadLauncher.SeededProviderResultsseeds each provider with its last answer from the same typing session.LawnchairLocalSearchAlgorithmends the session oncancel(true)and on zero state, using a session counter and a lock around the job launch. A search queued just before Back therefore can't deliver results or seeds into the next session.AllAppsSearchInputalso ends the session when Back clears a query.setFirstItemQuickLaunchskips the Play Store row while a web-search row is shown.CalculatorSearchProviderneeds a digit and an operator or a function call before it shows a result.Testing:
ci/testspass. New tests:InvariantDeviceProfileLocaleTest,SeededProviderResultsTest,SearchQuickLaunchTargetTestandCalculatorSearchProviderTest. Each one failed before its fix.weatoweatand on Backspace, measured frame by frameKnown limits and follow-ups (not changed here):
🤖 Generated with Claude Code