Skip to content

fix(tabs): call markForCheck when updating selected tab - 22.2.x - #17736

Merged
ChronosSF merged 9 commits into
22.2.xfrom
dmdimitrov/fix-17676-22.2.x
Oct 12, 2026
Merged

ChronosSF merged 9 commits into
22.2.xfrom
dmdimitrov/fix-17676-22.2.x

Conversation

@igdmdimitrov

Copy link
Copy Markdown
Contributor

Closes #17676

Type of Change (check all that apply):

  • Bug fix
  • New functionality
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactoring (no functional changes)
  • Documentation
  • Demos
  • CI/CD
  • Tests
  • Changelog
  • Skills/Agents

How Has This Been Tested?

  • Unit tests
  • Manual testing
  • Automated e2e tests

Checklist:

  • All relevant tags have been applied to this PR
  • This PR includes unit tests covering all the new code (test guidelines)
  • This PR includes API docs for newly added methods/properties (api docs guidelines)
  • This PR includes feature/README.MD updates for the feature docs
  • This PR includes general feature table updates in the root README.MD
  • This PR includes CHANGELOG.MD updates for newly added functionality
  • This PR contains breaking changes
  • This PR includes ng update migrations for the breaking changes (migrations guidelines)
  • This PR includes behavioral changes and the feature specification has been updated with them
  • Accessibility (ARIA, keyboard navigation, focus management) has been verified

Copilot AI balanced review requested due to automatic review settings October 6, 2026 15:56

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The fix covers every affected deferred selection branch with focused zoneless regression tests.

Review effort: Balanced
Findings: None

What changed in this PR

Fixes zoneless tab selection rendering by explicitly scheduling change detection after deferred selection updates.

Changes:

  • Calls markForCheck() after all deferred tab-selection mutations.
  • Adds zoneless tests for initialization and dynamic tab collections.
File Description
tabs.directive.ts Schedules checks after asynchronous selection updates.
tabs.component.spec.ts Tests zoneless selection rendering paths.
tabs-components.spec.ts Adds signal-backed test hosts for dynamic tabs.

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

@igdmdimitrov

Copy link
Copy Markdown
Contributor Author

@copilot , update the changelog.md with information about this bug fix. This should be added in the latest 22.2.x version.

Co-authored-by: igdmdimitrov <49060557+igdmdimitrov@users.noreply.github.com>

Copilot AI commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

@copilot , update the changelog.md with information about this bug fix. This should be added in the latest 22.2.x version.

Added the IgxTabs deferred selection fix under the 22.2.2 Bug Fixes section of CHANGELOG.md. Commit: 44a9bf9.

@igdmdimitrov
igdmdimitrov requested a review from mddragnev October 7, 2026 13:04
@viktorkombov viktorkombov added ✅ status: verified Applies to PRs that have passed manual verification and removed ❌ status: awaiting-test PRs awaiting manual verification labels Oct 12, 2026
@igdmdimitrov

Copy link
Copy Markdown
Contributor Author

@copilot See the comments from the Copilot PR review - #17746

Copilot AI commented Oct 12, 2026

Copy link
Copy Markdown
Contributor

@copilot See the comments from the Copilot PR review - #17746

I reviewed the findings. PR #17746 is the separate 21.2.x backport; its path and CSS-class comments are specific to that version’s layout. In this 22.2.x branch, the import path and igx-tab-header--selected assertion match the source, and the zoneless tests cover adding a selected tab, removing the selected tab while preserving the index, and removing past the selected index. No additional changes are needed here.

@igdmdimitrov igdmdimitrov changed the title fix(tabs): call markForCheck after each Promise.resolve().then() - 22.2.x fix(tabs): call markForCheck when updating selected tab - 22.2.x Oct 12, 2026
@ChronosSF
ChronosSF merged commit 3d9f733 into 22.2.x Oct 12, 2026
5 checks passed
@ChronosSF
ChronosSF deleted the dmdimitrov/fix-17676-22.2.x branch October 12, 2026 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

tabs version: 22.2.x ✅ status: verified Applies to PRs that have passed manual verification

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants