AvengeMedia / AvengeMedia/DankMaterialShell

Control center: printer status text overlaps the settings button when the status is long

Open Beginner friendly
#3,400 0 comments 0 reactions 0 assignees View on GitHub
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:

Printer status overlapping the settings button

2. The settings button underneath the text:

Settings button

3. `Idle (None)` rendering correctly:

Idle printer status without overlap

Taken at niri output scale 1.25 with `QT_SCALE_FACTOR=1.15`.

Contributor guide

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.