AvengeMedia / AvengeMedia/DankMaterialShell
Control center: printer status text overlaps the settings button when the status is long
- Dominant language
- QML
- Stars
- 8.1k
- Forks
- 515
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 102
Description
### Description
In the Control Center's **Printers** detail, a long printer status overlaps the settings (gear) button. For example, `Processing (Connecting to Device)` is drawn over the icon, while `Idle (None)` renders correctly.
The printer name is not involved; the dropdown already elides long names.
Environment: DMS 1.6.1 (Fedora COPR), Quickshell 0.3.1, niri 26.04, Fedora 44. The affected file matches current `master`.
**Cause:** In `quickshell/Modules/ControlCenter/BuiltinPlugins/CupsWidget.qml`, the gear button is anchored over the card while the header reserves no space for it. The status label has no width limit, elision, or wrapping, so long text is drawn underneath the button.
### Expected Behavior
The header should reserve space for the settings button, and status text that does not fit should be elided or wrapped.
### Steps to Reproduce
1. Use a CUPS printer that is unavailable or disconnected.
2. Send a print job so its status becomes `Processing (Connecting to Device)`.
3. Open Control Center → **Printers** and select the printer.
4. The status text overlaps the settings button.
### Error Messages/Logs
None. This is a layout issue.
### Screenshots/Recordings
1. `Processing (Connecting to Device)` overlapping the settings button:
2. The settings button underneath the text:
3. `Idle (None)` rendering correctly:
Taken at niri output scale 1.25 with `QT_SCALE_FACTOR=1.15`.
Contributor guide
Research direction
Start in quickshell/Modules/ControlCenter/BuiltinPlugins/CupsWidget.qml and inspect the Printers detail header, gear button anchoring, and status label sizing. Reproduce with a long status such as `Processing (Connecting to Device)` and verify the header reserves space so the text no longer overlaps the settings button while `Idle (None)` still renders correctly.
Written by the indexing model from the issue text.
Assessment
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 88/100