Repository navigation
[WC-3613]: Rich Text keep the table configuration menu applying changes - #2463
Closed
samuelreichert wants to merge 1 commit into
Closed
samuelreichert wants to merge 1 commit into
samuelreichert wants to merge 1 commit into
Conversation
This comment has been minimized.
This comment has been minimized.
samuelreichert
force-pushed
the
fix/rich-text-table-config-unresponsive
branch
from
October 7, 2026 12:45
3c1cfa3 to
d55f864
Compare
samuelreichert
changed the base branch from
test/rich-text-unit-coverage
to
main
October 7, 2026 12:45
gjulivan
previously approved these changes
Oct 12, 2026
samuelreichert
force-pushed
the
fix/rich-text-table-config-unresponsive
branch
from
October 12, 2026 09:12
d55f864 to
d78286f
Compare
This comment has been minimized.
This comment has been minimized.
samuelreichert
force-pushed
the
fix/rich-text-table-config-unresponsive
branch
from
October 13, 2026 14:14
d78286f to
fa12769
Compare
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
samuelreichert
force-pushed
the
fix/rich-text-table-config-unresponsive
branch
from
October 14, 2026 13:34
fa12769 to
7d35027
Compare
Collaborator
|
In the running app, the bug doesn't show up, even though the app is serving the unfixed code. Why it doesn't happen in a real app:
The branch's unit test uses a mock attribute (EditableValueBuilder) whose setValue never re-renders anything. That's why the bug shows up in the test and not in Mendix. we can close this PR. |
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.
Pull request type
Bug fix (non-breaking change which fixes an issue)
Description
Jira: WC-3613
Reported on Rich Text 5.1.0, in both Inline and Class style data format. With the table configuration menu open, a new choice appears not to apply: picking "Groove" in Border Style snaps back to "Solid", and clicking another border color keeps showing the previous one. The menu stays open and looks unresponsive.
Root cause: the change itself reaches the table. Each command updates the table node, and the caret never leaves the table. What breaks is the open menu, which never refreshes:
ConfigurationDropdownreads each control's value withsection.getCurrentValue()during render, but nothing re-renders it when the document changes. It has no editor subscription.selectionUpdate, and changing a table attribute doesn't move the selection.<select>s are controlled (value={currentValue}), so afteronChangeReact puts back the stale value. That is the "chose Groove, stays Solid" in the report. The color pickers show the stale color the same way.The first few changes can look like they work because of incidental re-renders (for example a Mendix value update or a
selectionUpdate), which depend on timing.Fix: while the menu is open,
ConfigurationDropdownsubscribes to the editor'stransactionevent and re-renders, so every control re-reads the current value. It unsubscribes when the menu closes, so there are no extra renders while closed. The cell configuration menu uses the same component and is fixed too.Ruled out while reproducing:
chain().focus().Tests:
TableConfiguration.spec.tsxrenders the full widget, inserts a table, opens the table configuration menu and replays the sequence from the report: background color, border color twice, style, width twice, groove, another color. After every step it checks both the table attributes and the value each control shows, for the inline and class formats and for the cell menu. All 3 tests fail without the fix.Based on
mainand independent of the other Rich Text PRs. Together with #2462 it covers the table configuration problems from the WC-3613 report.What should be covered while testing?
🤖 Generated with Claude Code