VirtualBox

Changeset 72718 in vbox


Ignore:
Timestamp:
Jun 28, 2018 12:06:46 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123252
Message:

FE/Qt: bugref:8694: Adjust icons when moving GUI between screen with different DPI: UIGraphicsButton.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/widgets/graphics/UIGraphicsButton.cpp

    r69712 r72718  
    2222/* Qt includes: */
    2323# include <QApplication>
     24# include <QGraphicsScene>
     25# include <QGraphicsView>
    2426# include <QPainter>
    2527# include <QStyle>
     
    9092    const QIcon icon = data(GraphicsButton_Icon).value<QIcon>();
    9193    const QSize expectedIconSize = data(GraphicsButton_IconSize).toSize();
    92     const QPixmap pixmap = icon.pixmap(expectedIconSize);
     94    /* Determine which QWindow this QGraphicsWidget belongs to: */
     95    QWindow *pWindow = 0;
     96    if (   scene()
     97        && !scene()->views().isEmpty()
     98        && scene()->views().first()
     99        && scene()->views().first()->window())
     100        pWindow = scene()->views().first()->window()->windowHandle();
     101    /* Acquire pixmap: */
     102    const QPixmap pixmap = icon.pixmap(pWindow, expectedIconSize);
    93103    const QSize actualIconSize = pixmap.size() / pixmap.devicePixelRatio();
    94104    QPoint position = QPoint(iMargin, iMargin);
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette