cloudscape-design / components

React components for Cloudscape Design System
https://cloudscape.design/
Apache License 2.0
2.3k stars 140 forks source link

fix: Fix table cell focus outline #2336

Closed pan-kot closed 3 weeks ago

pan-kot commented 3 weeks ago

Description

This PR mainly changes how paddings are applied to table cells. Previously the paddings were applied to the cell directly (TD or TH element) and now all paddings are applied to the nested content element (the DIV element). The content element also receives the overflow: none from the cell. This way, the content DIV does not allow for the content to overflow but the cell element does. As result, we can render the cell focus outline which exceeds the dimensions of the cell on the left.

Because the borders are still applied to the cells and not the content, there is a 1px difference in cell size compared to the previous version. That difference is compensated by subtracting border width from padding, but due to conditional padding application in certain cases there is a small pixel shift in some table screenshots.

Rel: AWSUI-36760

How has this been tested?

Review checklist _The following items are to be evaluated by the author(s) and the reviewer(s)._ #### Correctness - _Changes include appropriate documentation updates._ - _Changes are backward-compatible if not indicated, see [`CONTRIBUTING.md`](https://github.com/cloudscape-design/components/blob/main/CONTRIBUTING.md#public-apis)._ - _Changes do not include unsupported browser features, see [`CONTRIBUTING.md`](https://github.com/cloudscape-design/components/blob/main/CONTRIBUTING.md#browsers-support)._ - _Changes were manually tested for accessibility, see [accessibility guidelines](https://cloudscape.design/foundation/core-principles/accessibility/)._ #### Security - _If the code handles URLs: all URLs are validated through [the `checkSafeUrl` function](https://github.com/cloudscape-design/components/blob/main/src/internal/utils/check-safe-url.ts)._ #### Testing - _Changes are covered with new/existing unit tests?_ - _Changes are covered with new/existing integration tests?_

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

codecov[bot] commented 3 weeks ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 95.46%. Comparing base (a4448f5) to head (8687035).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #2336 +/- ## ======================================= Coverage 95.45% 95.46% ======================================= Files 705 705 Lines 18835 18835 Branches 6272 6321 +49 ======================================= + Hits 17979 17980 +1 + Misses 802 801 -1 Partials 54 54 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.