All Projects → alex-spataru → HiDPI-Fixer

alex-spataru / HiDPI-Fixer

Licence: MIT License
Qt app that automates fractional scaling configuration on X11 desktops

Programming Languages

C++
36643 projects - #6 most used programming language
QMake
1090 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to HiDPI-Fixer

mutter-x11-scaling
Mutter build with Ubuntu patch for Xorg fractional scaling on Manjaro / Arch Linux
Stars: ✭ 77 (-34.75%)
Mutual labels:  gnome, hidpi
Gromit Mpx
Gromit-MPX is an on-screen annotation tool that works with any Unix desktop environment under X11 as well as Wayland.
Stars: ✭ 287 (+143.22%)
Mutual labels:  x11, gnome
x11-fractional-display-scaling
Script and instructions to get fractional display scaling working nicely on Linux distros that use X11
Stars: ✭ 52 (-55.93%)
Mutual labels:  x11, gnome
Wallutils
🌆 Utilities for handling monitors, resolutions, wallpapers and timed wallpapers
Stars: ✭ 145 (+22.88%)
Mutual labels:  x11, gnome
gimp-hidpi
A theme for HiDPI displays
Stars: ✭ 72 (-38.98%)
Mutual labels:  gnome, hidpi
MIF
Файлик M.I.F. от проекта @plafonlinux
Stars: ✭ 41 (-65.25%)
Mutual labels:  gnome
dxhd
daky's X11 Hotkey Daemon
Stars: ✭ 80 (-32.2%)
Mutual labels:  x11
rofi
Rofi: A window switcher, application launcher and dmenu replacement
Stars: ✭ 9,231 (+7722.88%)
Mutual labels:  x11
compiz-alike-magic-lamp-effect
Compiz alike magic lamp effect for GNOME Shell
Stars: ✭ 58 (-50.85%)
Mutual labels:  gnome
mcwm
mcwm window manager
Stars: ✭ 34 (-71.19%)
Mutual labels:  x11
xwmfs
X11 Window-Manager file system based on FUSE
Stars: ✭ 21 (-82.2%)
Mutual labels:  x11
GNOME-Concepts
Concepts and ideas for the GNOME desktop
Stars: ✭ 13 (-88.98%)
Mutual labels:  gnome
gow
GOW - stream games (and GUI) over Docker
Stars: ✭ 109 (-7.63%)
Mutual labels:  x11
alphabetical-grid-extension
Restore the alphabetical ordering of the app grid, removed in GNOME 3.38
Stars: ✭ 43 (-63.56%)
Mutual labels:  gnome
DotFiles
🎨 one-stop service for you to configure many Unix tools.
Stars: ✭ 29 (-75.42%)
Mutual labels:  gnome
wifibroadcast osd
Mavlink OSD and video player
Stars: ✭ 21 (-82.2%)
Mutual labels:  x11
gahshomar
A Persian (Jalali/Farsi) calendar for Linux
Stars: ✭ 69 (-41.53%)
Mutual labels:  gnome
clickgen
The hassle-free cursor building toolbox
Stars: ✭ 34 (-71.19%)
Mutual labels:  x11
Resource Monitor
Resource_Monitor is a GNOME Shell extension that Monitor the use of system resources like cpu, ram, disk, network and display them in GNOME Shell top bar.
Stars: ✭ 62 (-47.46%)
Mutual labels:  gnome
Adapta-Nord
Nord version of Adapta Theme!
Stars: ✭ 27 (-77.12%)
Mutual labels:  gnome

HiDPI Fixer

Build Status (Travis CI) Build Status (GitHub Actions) Github All Releases

This application allows you to create a script that acomplishes the following tasks:

  • Allow fractional scaling of your display and its components in X11
  • The end result looks nicer and is way less buggy than using Wayland
  • The generated script is configured to run everytime you log in
  • You can also instruct the application to modify the ~/.profile file to correctly scale Qt-based apps (as KDE does)
  • Tested on GNOME, Deepin Desktop and KDE (you need to manualy set the scaling factor to 200% in Deepin and KDE)

Screenshot

Screenshot of HiDPI-Fixer running under Manjaro Deepin

Installing/running

You can download the latest release as an AppImage, no installation required! After your download finishes, open a terminal and type the following commands:

cd Downloads                    # Go to directory where you have downloaded/saved HiDPI-Fixer
chmod +x HiDPI_Fixer*.AppImage  # Make HiDPI-Fixer.AppImage executable
./HiDPI_Fixer*.AppImage         # Run HiDPI-Fixer

Uninstalling

To remove all the scripts and startup launchers generated by HiDPI Fixer, open a terminal and type the following:

cd Downloads                         # Or the location in which you have saved HiDPI-Fixer AppImage
./HiDPI_Fixer*.AppImage --uninstall  # Run uninstall command (if you are lazy, just type -u)

This command will do the following:

  • Remove the ~/.hidpi-fixer directory and all its contents
  • Remove all the startup applications with the name pattern as HiDPI-Fixer_*.desktop in the ~/.config/autostart directory.

All directories and files that HiDPI Fixer removes will be listed in the terminal output.

How does it work?

This application uses a combination of GNOME's scaling-factor setting and xrandr commands. Basically, the application calculates the necessary resolution to obtain the desired scaling factor and registers a new resolution with xrandr. These commands are saved into a *.sh file for every display that you have and are configured to run at startup.

HiDPI-Fixer also works with DEs other than GNOME, however, you will need to manually set the scaling factor to 200% in the control center application of your desktop environment.

TODOs/Ideas

  • Allow users to choose between creating a custom resolution or using xrandr --scale, to avoid BAT MATCH errors
  • Integrate run_scaled to HiDPI-Fixer, by creating custom *.desktop files in ./local/share/applications to fix apps that refuse to do any scaling at all.
  • Instead of generating a startup script, allow users to apply the changes system wide.

Contributions and less-ugly fixes are welcome :octocat:

Tips

  • Some applications such as WPS Office ignore completely the system's DPI setting (and thus cannot do any scaling at all). Given that HiDPI-Fixer creates a very large resolution, it may be almost impossible to use these fixed-DPI applications. If you rely on those applications, you can run them with run_scaled, resulting in an usable, albeit blurry per-application experience. But at least your desktop and HiDPI-friendly apps will look decent 👍.
  • In some cases, xrandr will not let you to use resolutions larger than your screen's native resolution, which results in the rather-cryptic BAD MATCH error. If you have any idea how to fix this, please contact me or make a PR.

License

This project is released under the MIT license, for more info, click here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].