Skip to content

CardView - onOptionChanged is not triggered when column properties are updated (T1306434)#33626

Open
markallenramirez wants to merge 2 commits into
DevExpress:26_1from
markallenramirez:bug_T1306434/26_1
Open

CardView - onOptionChanged is not triggered when column properties are updated (T1306434)#33626
markallenramirez wants to merge 2 commits into
DevExpress:26_1from
markallenramirez:bug_T1306434/26_1

Conversation

@markallenramirez
Copy link
Copy Markdown
Contributor

No description provided.

@markallenramirez markallenramirez self-assigned this May 19, 2026
Copilot AI review requested due to automatic review settings May 19, 2026 09:26
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes T1306434: the new grid_core (CardView) did not raise onOptionChanged when column properties were updated. The PR wires column mutations through the component's _notifyOptionChanged, while preventing the resulting event from being re-processed by the internal options-sync handler.

Changes:

  • Added notifyColumnOptionChanged on OptionsController that calls component._notifyOptionChanged and uses a _skipProcessingColumnsChange flag to bypass the internal onOptionChangedHandler for the in-flight path.
  • In ColumnsController.columnOption and updateColumns, compute previous/new values and emit columns[i].<option> change notifications via the new helper, guarded by equalByValue.
  • Introduced IGNORE_COLUMN_OPTION_NAMES to suppress notifications for internal-only column fields (visibleWidth, bestFitWidth, bufferedFilterValue, selector).

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
packages/devextreme/js/__internal/grids/new/grid_core/options_controller/options_controller_base.ts Adds skip flag and notifyColumnOptionChanged helper to dispatch external optionChanged events without re-entering the internal sync handler.
packages/devextreme/js/__internal/grids/new/grid_core/columns_controller/columns_controller.ts Captures prev/new values in columnOption/updateColumns and emits per-column option-change notifications.
packages/devextreme/js/__internal/grids/new/grid_core/columns_controller/const.ts New constant listing internal column option names to exclude from notifications.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants