I had reported this issue for scenes and it’s already been fixed, but there’s the same phenomenon with MQTT devices: their name is truncated on my iPhone.
It’s either because the name is a bit long, or because the info is very wide. A few examples:
mutmut
August 29, 2026, 8:12am
2
I also saw this in Desktop mode with the ....
I would put the No recent value on 2 lines to save even more space.
Hi everyone!
This topic is now in development .
A PR has been opened to fully display long MQTT names in the devices widget of the dashboard, instead of truncating them:
master ← claude/mqtt-device-names-mobile-jlb0q1
ouvert 08:42AM - 29 Aug 26 UTC
### Description
On the dashboard devices widget, long device/feature names — ty… pical of MQTT devices, where the feature name carries all the context — were ellipsized down to a few characters on mobile, even when the control next to them was a mere switch or value badge.
The root cause: the widget rows are a real table, so its three columns were **shared by every row of the card**. One wide control (a shutter button group, a setpoint capsule) claimed that width for the whole control column, and every name of the card was crushed against it, while narrower rows showed a large dead gap.
This change (CSS only — the `<tr>/<td>` markup of the 25+ feature components is untouched) makes each widget row an independent flex row, like the scene rows already are:
- the control keeps exactly its natural width and hit area, whatever the name's length;
- the name gets every remaining pixel of **its own row**, and wraps on several lines (`overflow-wrap: anywhere` breaks even single-token names like `Volet_roulant_chambre_parentale`) instead of being truncated;
- the slider is the one control allowed to give width back to a long name, down to a usable ~6rem floor, and the Bootstrap `.col` gutters in its cell (30px of dead width) are neutralized;
- the "no recent value" badge folds on two balanced lines instead of stealing half the row (suggested on the forum topic);
- the `select` fallback of the adaptive option controls gets a min/max width so a long name can't crush it to its arrow.
The buttons→dropdown adaptive mechanism (`acAdaptiveControls`) keeps working: `nowrap` control cells never shrink below their natural width, so an oversized button group still overflows the `.table-responsive` box, which is what the coordinator measures.
Verified with real renderings (Chromium, 390px iPhone viewport, FR locale, demo mode) on a widget mixing 8 feature families with long MQTT names — switch, sensor value, no-recent-value badge, shutter button group, slider, adaptive mode control, setpoint stepper, merged light row — plus the short-name widgets (no regression) and a narrow 3-column desktop card.
| Before (mobile) | After (mobile) |
|---|---|
| Every name cut to ~5 characters (`Prise…`, `Temp…`, `Humi…`) against the width claimed by the widest control of the card | Names readable on 2-3 lines, controls unchanged, dead gaps gone |
## Forum
Forum: https://community.gladysassistant.com/t/sur-mobile-noms-dappareils-mqtt-tronque-sur-le-dashboard/10746
### Checklist
- [x] Tests pass: server untouched (front CSS + one className only); Cypress suite not run in this environment — the change is visual, verified with real browser renderings at mobile and desktop viewports
- [x] Linter and prettier pass on both front and server (`npm run eslint`, `npm run prettier`)
- [x] No undocumented breaking change
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01Lkhkpg8WqqMWxyPULoBtao
---
_Generated by [Claude Code](https://claude.ai/code/session_01Lkhkpg8WqqMWxyPULoBtao)_
Feel free to follow the PR, test (optional, especially for small requests) and share your feedback here if needed.
Testers wanted at this URL:
Tested, and I confirm. Thanks
This testing method is super practical, but on the other hand, I’m skipping the 2FA step with recovery codes, because I don’t remember setting up a 2FA app for Gladys.
Can you, Pierre-Gilles, reset that so I can do the procedure again?
Great! I’ve disabled 2FA for you. You can log back in and you’ll need to set it up again