FreeCAD / FreeCAD/FreeCAD

Stylesheets: UI themes in Linux have some issues

Open
#12,720 9 comments 1 reaction 0 assignees View on GitHub
Mod: Core OS: Linux Topic: Stylesheets Type: Feature
Dominant language
C++
Stars
33.6k
Forks
6k
Avg merge
3d 17h
Merged PRs (30d)
196

Description

### Problem description

Hey

Thank you for your hard work on FreeCAD, it's great having a libre CAD option.

I wanted to bring to your attention a theme issue. I experience it using KDE in Manjaro, though it's probably the same in any distro or window manager.

Though stylistically dated, FreeCAD 0.21.2's UI is functional. However, the UI themes in the 0.22.0dev AppImage builds all seem to have functional deficiencies which impede usage of the software.

Notice the issues depicted in the following screenshots:
- [ ] Lack of contrast between dark items, including the actual objects in the 3D view. #17979
- [ ] Grayed-out icons are difficult to see. Fix: Though grayed-out, they should be clearly legible.
- [ ] Undo/Redo are for some reason a different faded color. Fix: If grayed-out, they should have the same color as other grayed-out buttons. If clickable, they should have the same vibrant colors as other clickable buttons.
- [ ] Tooltips have no outline and same background color, so they blend into the background. Fix: Tooltips should stand out as such by having an outline and different tooltip background color.
- [ ] Frames have no outlines. Fix: Frames should have outlines or be designed in such a way that their background and padding colors make it clear where a frame begins and ends.
- [ ] Frames have draggable handles that are not visible at all until the user accidentally hovers over their location.
- [ ] Frame buttons (toggle overlay/toggle floating window/Close dock window) are difficult to see. Fix: Same as for other buttons.
- [ ] Excessive padding between icons. I may have a large screen, but I don't want to waste it on padding.

This is the Classic theme:
![screenshot_20240303_154036](https://github.com/FreeCAD/FreeCAD/assets/5844619/fabb7619-5ced-4f3d-8c23-2dbc306a13aa)

Dark:
![screenshot_20240303_155427](https://github.com/FreeCAD/FreeCAD/assets/5844619/5d8bd253-84b8-42dc-a2f5-71917ea325d7)

Light:
![screenshot_20240303_155457](https://github.com/FreeCAD/FreeCAD/assets/5844619/b6ca43aa-a83c-40f0-945b-fe3512cf27ea)

OpenDark:
![screenshot_20240303_155748](https://github.com/FreeCAD/FreeCAD/assets/5844619/9814d5c6-1e29-4936-ae37-e83c2d56268e)

### Full version info

```shell
OS: Manjaro Linux (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.36166 (Git) AppImage
Build type: Release
Branch: main
Hash: a5ea8023a29b6d7bbf1ebd57b5ed31dd27c5947b
Python 3.10.13, Qt 5.15.8, Coin 4.0.2, Vtk 9.2.6, OCC 7.6.3
Locale: English/United States (en_US)
Installed mods:
* OpenDark 2023.12.17
* fasteners 0.5.11
* Woodworking 0.21.2.33771
* CurvedShapes 1.0.5
* Curves 0.6.23
```

Contributor guide

Open the contributing guide

Research direction

No source files, tests, or entry points are named. Reproduce the theme problems on Linux using the screenshots and listed cases as a checklist, then identify the UI theme and stylesheet locations; done means the affected controls, frames, tooltips, icons, and spacing are visibly usable across the reported themes.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux
Domain
accessibility, design, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.