This patch enhances High DPI support across the Qt frontend with the following improvements: **Windows DPI Awareness:** - Add shellscalingapi.h include for Windows DPI functions - Implement Per Monitor DPI Awareness (Windows 8.1+) and Per Monitor v2 DPI Awareness (Windows 10+) - Use SetProcessDPIAware() and SetProcessDpiAwareness() for better multi-monitor scaling - Dynamically load shcore.dll to access modern DPI awareness APIs **Configuration Dialog Enhancements:** - Add comprehensive High DPI responsive CSS media queries for different DPI levels (192dpi, 240dpi) - Scale UI elements (buttons, comboboxes, line edits, checkboxes, radio buttons) based on screen DPI - Improve scroll area styling with proper scrollbar theming for high DPI displays - Set proper window attributes for scaling (WA_TranslucentBackground, WA_NoSystemBackground) - Calculate logical window size based on device pixel ratio for accurate scaling **UI Improvements:** - Enhanced scroll area styling with custom scrollbar appearance - Better visual feedback with hover effects on scrollbar handles - Improved spacing and sizing for high DPI displays - Set proper window modality and title for configuration dialog These changes provide better visual quality and usability on high DPI displays, particularly on Windows systems with multiple monitors or high-resolution screens. The scaling is now more accurate and consistent across different display configurations. Signed-off-by: Zephyron <zephyron@citron-emu.org>
citron
citron is the world's most popular, open-source, Nintendo Switch emulator — started by the creators of Citra.
It is written in C++ with portability in mind, and we actively maintain builds for Windows, Linux and Android.
Compatibility | Development | Building | Download | Support | License
Compatibility
The emulator is capable of running most commercial games at full speed, provided you meet the necessary hardware requirements.
For a full list of games citron supports, please visit our Compatibility page.
Check out our website for the latest news on exciting features, monthly progress reports, and more!
Development
Most of the development happens on GitHub. It's also where our central repository is hosted. For development discussion, please join us on Discord.
If you want to contribute, please take a look at the Contributor's Guide and Developer Information. You can also contact any of the developers on Discord in order to know about the current state of the emulator.
If you want to contribute to the user interface translation project, please check out the citron project on transifex. We centralize translation work there, and periodically upstream translations.
Building
- Windows: Windows Build
- Linux: Linux Build
Download
You can download the latest releases automatically via the installer on our downloads page.
Support
If you enjoy the project and want to support us financially, check out our Patreon!
Any donations received will go towards things like:
- Switch consoles to explore and reverse-engineer the hardware
- Switch games for testing, reverse-engineering, and implementing new features
- Web hosting and infrastructure setup
- Software licenses (e.g. Visual Studio, IDA Pro, etc.)
- Additional hardware (e.g. GPUs as-needed to improve rendering support, other peripherals to add support for, etc.)
If you wish to support us a different way, please join our Discord and talk to bunnei. You may also contact: donations@citron-emu.org.
License
citron is licensed under the GPLv3 (or any later version). Refer to the LICENSE.txt file.