VirtualBox

Changeset 70627 in vbox


Ignore:
Timestamp:
Jan 18, 2018 11:40:45 AM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
120351
Message:

FE/Qt: bugref:8694: Runtime UI: Make Scaled mode and Unscaled HiDPI Output mode work together.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/runtime
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp

    r69957 r70627  
    357357    {
    358358        /* Assign new frame-buffer logical-size: */
    359         frameBuffer()->setScaledSize(size());
     359        QSize scaledSize = size();
     360        const double dDevicePixelRatio = frameBuffer()->devicePixelRatio();
     361        if (dDevicePixelRatio > 1.0 && frameBuffer()->useUnscaledHiDPIOutput())
     362            scaledSize *= dDevicePixelRatio;
     363        frameBuffer()->setScaledSize(scaledSize);
    360364
    361365        /* Forget the last full-screen size: */
     
    10471051        {
    10481052            /* Assign new frame-buffer logical-size: */
    1049             frameBuffer()->setScaledSize(size());
     1053            QSize scaledSize = size();
     1054            const double dDevicePixelRatio = frameBuffer()->devicePixelRatio();
     1055            if (dDevicePixelRatio > 1.0 && frameBuffer()->useUnscaledHiDPIOutput())
     1056                scaledSize *= dDevicePixelRatio;
     1057            frameBuffer()->setScaledSize(scaledSize);
    10501058        }
    10511059        /* For other than 'scale' mode: */
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineViewScale.cpp

    r69500 r70627  
    6262void UIMachineViewScale::sltPerformGuestScale()
    6363{
    64     /* Adjust frame-buffer scaled-size: */
    65     frameBuffer()->setScaledSize(size());
     64    /* Assign new frame-buffer logical-size: */
     65    QSize scaledSize = size();
     66    const double dDevicePixelRatio = frameBuffer()->devicePixelRatio();
     67    if (dDevicePixelRatio > 1.0 && frameBuffer()->useUnscaledHiDPIOutput())
     68        scaledSize *= dDevicePixelRatio;
     69    frameBuffer()->setScaledSize(scaledSize);
    6670    frameBuffer()->performRescale();
    6771
    6872    /* If scaled-size is valid: */
    69     const QSize scaledSize = frameBuffer()->scaledSize();
    7073    if (scaledSize.isValid())
    7174    {
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