[BUG] CustomTkInter renders incorrectly on Linux when desktop scaling is used.

Open
#2,597 9 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
python
Domain
desktop

Research direction

Reproduce the rendering problem on GNOME 46 with Fedora Workstation 40 at 200% and 100% desktop scaling, using the screenshots and environment described in the issue. Investigate the widget rendering and scaling entry points, then verify that controls and borders occupy the correct physical space at both scales.

Written by the indexing model from the issue text.

Description

bug

System:

  • GNOME 46 on Fedora Workstation 40

I have seen this bug in a lot of tickets here. Many people might not realize what's wrong.

The issue is that CustomTkInter renders all controls and their borders in a squashed way when desktop UI scaling is used:

Here, my desktop is set to 200% scale:

image

This is how CustomTkInter renders (buggy) at 200%:

image

This is how it renders (correctly) when I set the desktop to 100%:

image

To support desktop scaling, it looks like the issue is that CustomTkInter needs to detect the desktop scale and enlarge its own widgets to fit everything correctly. Right now, it seems like the widgets at 200% are rendering with larger widgets but within the exact same PHYSICAL space as 100% widgets would use.

Dominant language
Python
Stars
13.6k
Forks
1.2k
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from TomSchimansky/CustomTkinter

All issues in TomSchimansky/CustomTkinter

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.