fix: prevent long language names from shrinking dashboard progress bars - #3811
Conversation
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 15 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe LanguageStats dashboard’s CSS grid template now constrains the first column to ChangesLanguageStats layout
Estimated code review effort: 1 (Trivial) | ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
0d2c5a3 to
67a2e23
Compare
The dashboard languages grid sized the name column with `auto`, so a long language name (e.g. "Arabic (Palestinian Territories) | العربية (الأراضي الفلسطينية)") expanded to its full single-line width and left the 10fr progress bar column with almost no space — for every row, since the grid is shared. Cap the name column at fit-content(40%) and give the bar column a 120px floor, so short names keep hugging their content while long names truncate with an ellipsis (full name shown in a tooltip) instead of stretching the column. Bars stay equal width across rows and rows keep a single-line height. Language tags get the same ellipsis treatment so an overlong custom tag cannot clip the Base chip or bleed under the bar.
67a2e23 to
de74bcc
Compare
## [3.214.1](v3.214.0...v3.214.1) (2026-07-23) ### Bug Fixes * exclude soft-deleted keys from the keys/info endpoint ([#3818](#3818)) ([dd24ad1](dd24ad1)), closes [#3817](#3817) [#3486](#3486) * hard-delete of a project with a default namespace fails on FK constraint ([#3810](#3810)) ([769ae0f](769ae0f)), closes [#3783](#3783) * prevent long language names from shrinking dashboard progress bars ([#3811](#3811)) ([0d09306](0d09306)), closes [#3657](#3657) [#3657](#3657) * purge trashed keys that have translation suggestions ([#3800](#3800)) ([e0f4888](e0f4888)) * serialize cached enums by name instead of ordinal ([#3807](#3807)) ([323d271](323d271))
Problem
On the project dashboard, a language with a long name (e.g. "Arabic (Palestinian Territories) | العربية (الأراضي الفلسطينية)") shrinks the translation status progress bar to a sliver — for every language row, since all rows share one grid.
Cause
LanguageStatslays rows out with:The
autoname column grows to the name's full single-line (max-content) width — the text never wraps — and the10frbar column only receives leftover space, which can drop to zero.Fix
LanguagesSelectdropdown), keeping every row single-lineclassName="test"and redundant null-handling on the already-assertedlanguageVerification
Measured a standalone replica of the grid in a headless browser at 700px and 450px container widths, covering short-names-only, mixed long/short names, and an overlong unbreakable custom tag: bars are equal width across rows in all cases, names/tags truncate on a single line, nothing overlaps the bar, no horizontal overflow.
Related: #3657 addresses long language names in the
LanguagesSelectdropdown — different component, same truncation pattern.