KShortcutsEditorDelegate: Fix HiDPI rendering of indicator arrows
Even with HiDPI rendering enabled in applications, the standard "Configure Keyboard Shortcuts" dialog would still show pixelated indicator arrows in the "Shortcut" and "Alternate" columns.
This is because the respective pixmap is only scaled up, but not rendered appropriately sized from the beginning.
Setting the pixmap's devicePixelRatio
and increasing its size fixes
the issue. option.rect
is in device independent pixels, and therefore
should be kept as is.
Note: In order for the arrows to still get drawn in the right place,
additional fixes in KExtendableItemDelegate
(i.e. the base class) are
necessary, see kitemviews!10 (merged).
Test Plan:
- Launch
QT_SCALE_FACTOR=1.7 ./bin/kxmlguiwindowtest
. - Open "Configure Keyboard Shortcuts" dialog.
- Arrows in "Shortcut" column should not be pixelated anymore, for both their expanded and collapsed states.
- Test with
-style Fusion
and other scaling factors, too.
Edited by snooxx 💤