[18.0][FIX] spreadsheet_oca: inherit parent components in SpreadsheetControlPanel - #112
Merged
OCA-git-bot merged 1 commit intoJul 28, 2026
Conversation
…lPanel SpreadsheetControlPanel extends ControlPanel but overrides its static components property, losing Dropdown and DropdownItem that the parent template uses. This causes "Cannot find the definition of component Dropdown" when opening a spreadsheet from certain navigation paths (e.g. from a form view). Fix: spread parent components before adding custom ones.
arielbarreiros96
approved these changes
Jul 28, 2026
arielbarreiros96
left a comment
There was a problem hiding this comment.
This solves #124 , is simple and it works 👌🏻. @nericervin I'll cherry-pick this commit to v19 which has the same problem
Contributor
|
This PR has the |
Member
|
/ocabot merge patch |
Contributor
|
On my way to merge this fine PR! |
Contributor
|
Congratulations, your PR was merged at 6663df2. Thanks a lot for contributing to OCA. ❤️ |
|
Hello there, I have the same problem on Odoo 17, how could I use this fix there? |
susaglam
added a commit
to susaglam/spreadsheet
that referenced
this pull request
Sep 17, 2026
The OCA 18.0 based frontend used o-spreadsheet and web client APIs that no
longer exist in saas-19.4. Every API was checked against the 19.4 source;
OCA 19.0 was used as an idea reference only.
spreadsheet_oca
- Global filters: globalFieldMatchingRegistry (getters first) replaces the
removed globalFiltersFieldMatchers / RELATIVE_DATE_RANGE_TYPES; default
values use {operator, ids|strings}; date defaults use DefaultDateValue;
FilterValue gets globalFilterValue / setGlobalFilterValue; string domains
for DomainSelector. The edit panel no longer crashes on open.
- Insert flows: pivots use getCollapsed/ExpandedTableStructure (dynamic vs
static), lists use listId and the flat 19.4 definition, graphs create native
bar/line/pie charts with an "odoo" data source and a valid CREATE_CHART
payload. Re-insert from the side panels works; SELECT_ODOO_LIST removed.
- List "Add to spreadsheet" moved to the ListController and waits for the
lazily loaded model (clicks before the renderer mounted were lost); x2many
lists in forms never react (OCA OCA#88 root cause).
- Side panels: OWL3 hooks pass the component scope as first argument, so the
pivot/list panels no longer bind loaders with default parameters.
- Charts: a community "odoo" chart data-source side panel is registered
(community 19.4 only ships "range"); the ChartTypePicker patch that let Odoo
charts become scorecard/gauge and the dead odoo_* chart panels are removed.
- Control panel: parent components are inherited (OCA OCA#112), breadcrumbs and
Dropdown use the 19.4 markup (desktop and 375px), t-slot -> t-call-slot,
graph "Add to spreadsheet" is enabled/disabled on real data.
- getExtraModelCustom() hook lets add-ons extend the model config (OCA OCA#127
idea); image store implements getFile for clipboard copies.
spreadsheet_forecast_oca, spreadsheet_period_comparison_oca
- toNumber with locale, EvaluationError instead of Error, eslint errors
fixed, missing _t strings added to the catalogs.
Tests (throwaway saas-19.4 databases on the test clone, Chrome)
- New browser tours for filters, pivot/list/graph insertion into new and
existing spreadsheets, side-panel re-insert and domain edit, chart panel,
breadcrumbs (desktop + mobile); hoot suites for the formula modules.
- Fresh install with demo: 491 tests, 0 failed, 0 errors.
- Upgrade of the pre-fix database: 489 tests, 0 failed, 0 errors.
Co-Authored-By: Claude Opus 5 (1M context) <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.
Summary
SpreadsheetControlPanelextendsControlPanelbut overrides itsstatic componentsproperty with onlySpreadsheetName, losingDropdownandDropdownItemthat the parent template (web.ControlPanel) uses.This causes:
The error occurs when opening a spreadsheet from certain navigation paths (e.g., from a form view or a custom action), where the parent template's Dropdown component is needed.
Fix
Spread parent components before adding custom ones:
This follows the same pattern used for
SpreadsheetControlPanel.propswhich already spreadsControlPanel.props.Test plan