Skip to content

DataGrid: Fix header borders being cut off above the vertical scrollbar (T1306973)#34372

Open
Alyar666 wants to merge 5 commits into
DevExpress:mainfrom
Alyar666:T1306973_26_2
Open

DataGrid: Fix header borders being cut off above the vertical scrollbar (T1306973)#34372
Alyar666 wants to merge 5 commits into
DevExpress:mainfrom
Alyar666:T1306973_26_2

Conversation

@Alyar666

Copy link
Copy Markdown
Contributor

No description provided.

@Alyar666 Alyar666 self-assigned this Jul 17, 2026
Copilot AI review requested due to automatic review settings July 17, 2026 14:43
@Alyar666
Alyar666 requested a review from a team as a code owner July 17, 2026 14:43

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.

Pull request overview

Fixes a DataGrid visual defect where header borders are cut off in the area adjacent to the vertical scrollbar gutter (T1306973) by tagging header/footer views when scrollbar spacing is applied and adding theme-specific styling to render the missing border.

Changes:

  • Add a dx-*-scroller-spacing state class toggled by ColumnsView.setScrollerSpacing.
  • Add theme SCSS rules (generic/material/fluent) to draw a 1px border before the scrollbar gutter for headers when spacing is present (including RTL).
  • Add Jest coverage for the class toggling behavior and an e2e screenshot test for the visual regression (LTR/RTL), including cleanup of injected scrollbar CSS.

Reviewed changes

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

Show a summary per file
File Description
packages/devextreme/js/__internal/grids/grid_core/views/m_columns_view.ts Toggles a new prefixed scroller-spacing class when scrollbar spacing is applied.
packages/devextreme/js/__internal/grids/grid_core/views/const.ts Adds the scrollerSpacing class token to shared view constants.
packages/devextreme/js/__internal/grids/grid_core/views/tests/columns_view.integration.test.ts New Jest test verifying the scroller-spacing class is toggled for headers/footer.
packages/devextreme/js/__internal/grids/grid_core/tests/mock/helpers/utils.ts Extends test instance typing to include getView for view-level assertions.
packages/devextreme-scss/scss/widgets/material/gridBase/_index.scss Adds header border rendering before scrollbar gutter when scroller-spacing is active (LTR/RTL).
packages/devextreme-scss/scss/widgets/generic/gridBase/_index.scss Same visual fix for the generic theme (LTR/RTL).
packages/devextreme-scss/scss/widgets/fluent/gridBase/_index.scss Same visual fix for the fluent theme (LTR/RTL).
e2e/testcafe-devextreme/tests/dataGrid/common/scrolling.ts Adds screenshot regression coverage for the header border near the scrollbar gutter (LTR/RTL) and removes injected scrollbar CSS after the test.

Copilot AI review requested due to automatic review settings July 17, 2026 15:14

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.

Pull request overview

Copilot reviewed 8 out of 10 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings July 17, 2026 15:23

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.

Pull request overview

Copilot reviewed 8 out of 10 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings July 20, 2026 08:25

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.

Pull request overview

Copilot reviewed 8 out of 10 changed files in this pull request and generated no new comments.

Comment on lines +1495 to +1498
.css({
paddingLeft: rtlEnabled ? width : '',
paddingRight: !rtlEnabled ? width : '',
});

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.

Lets replace it with inline start/end paddings

Suggested change
.css({
paddingLeft: rtlEnabled ? width : '',
paddingRight: !rtlEnabled ? width : '',
});
.css({
paddingInlineStart: '',
paddingInlineEnd: width,
});

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This behavior was already implemented; I didn't change it. However, let's see if we can adjust it, provided the change is relatively inexpensive.

Comment thread e2e/testcafe-devextreme/tests/dataGrid/common/scrolling.ts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants