refactor(desktop): drop calculator builtin adapter, make desktop core…#20
Merged
Merged
Conversation
… app-free
The desktop core held an in-process builtin adapter for calculator
(CalculatorBuiltinPanel), making calculator the only user app with source
inside the desktop layer -- a reverse desktop->apps coupling via CMake
target_sources + include path + link. Externalize calculator to match the
other four apps (noter/system_state/alarm_clock/calendar), which are already
pure detached executables with zero code in desktop/.
Changes:
- Delete desktop/ui/components/builtin_apps/calculator_builtin_panel.{h,cpp}
- CFDesktopEntity.cpp: drop the calculator builtin include and its
construction/registration block (About registration kept intact)
- builtin_apps/CMakeLists.txt: drop the calculator adapter source, the
target_sources of apps/calculator/calculator_panel.cpp, the apps/calculator
include dir, and the cfdesktop_calculator_parser link
- apps/calculator/app.json: launch_kind auto -> detached (clean direct launch,
no Auto-fallback log on low tier)
- top-level CMakeLists.txt: refresh the stale apps-before-desktop comment
(the parser-lib coupling it justified is gone)
The builtin MECHANISM is fully preserved (IBuiltinPanel, BuiltinPanelRegistry,
LaunchKind::BuiltinPanel, HardwareTier::prefer_inprocess_apps adjudication,
About panel) for any future panel that needs in-process rendering. Only
calculator's builtin adapter is retired.
Verified: desktop exe, libCFDesktop_shared.so, and libcfdesktop_builtin_apps.a
contain zero CalculatorPanel symbols; AboutPanel still present in the .so;
parser_test 15/15 and builtin_panel_registry_test 5/5 pass; full build green.
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.
… app-free
The desktop core held an in-process builtin adapter for calculator (CalculatorBuiltinPanel), making calculator the only user app with source inside the desktop layer -- a reverse desktop->apps coupling via CMake target_sources + include path + link. Externalize calculator to match the other four apps (noter/system_state/alarm_clock/calendar), which are already pure detached executables with zero code in desktop/.
Changes:
The builtin MECHANISM is fully preserved (IBuiltinPanel, BuiltinPanelRegistry, LaunchKind::BuiltinPanel, HardwareTier::prefer_inprocess_apps adjudication, About panel) for any future panel that needs in-process rendering. Only calculator's builtin adapter is retired.
Verified: desktop exe, libCFDesktop_shared.so, and libcfdesktop_builtin_apps.a contain zero CalculatorPanel symbols; AboutPanel still present in the .so; parser_test 15/15 and builtin_panel_registry_test 5/5 pass; full build green.