VirtualBox

Changeset 83142 in vbox for trunk/src/VBox/Main/src-client


Ignore:
Timestamp:
Feb 24, 2020 7:24:26 PM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
136260
Message:

bugref:9637. Sending monitor positions (offsets) from GAs to svga device since vmwgfx fails to do so.

Location:
trunk/src/VBox/Main/src-client
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-client/DisplayImpl.cpp

    r82968 r83142  
    7676    /** Pointer to the driver instance structure. */
    7777    PPDMDRVINS                  pDrvIns;
    78     /** Pointer to the keyboard port interface of the driver/device above us. */
     78    /** Pointer to the display port interface of the driver/device above us. */
    7979    PPDMIDISPLAYPORT            pUpPort;
    8080    /** Our display connector interface. */
     
    12831283    RTMemTmpFree(pVisibleRegion);
    12841284
     1285    return VINF_SUCCESS;
     1286}
     1287
     1288int  Display::i_handleUpdateMonitorPositions(uint32_t cPositions, PRTPOINT pPosition)
     1289{
     1290    AssertMsgReturn(pPosition, ("Empty monitor position array\n"), E_INVALIDARG);
     1291    if (mpDrv && mpDrv->pUpPort->pfnReportMonitorPositions)
     1292        mpDrv->pUpPort->pfnReportMonitorPositions(mpDrv->pUpPort, cPositions, pPosition);
    12851293    return VINF_SUCCESS;
    12861294}
  • trunk/src/VBox/Main/src-client/VMMDevInterface.cpp

    r82968 r83142  
    458458    /* Forward to Display, which calls corresponding framebuffers. */
    459459    pConsole->i_getDisplay()->i_handleSetVisibleRegion(cRect, pRect);
     460
     461    return VINF_SUCCESS;
     462}
     463
     464DECLCALLBACK(int) vmmdevUpdateMonitorPositions(PPDMIVMMDEVCONNECTOR pInterface, uint32_t cPositions, PRTPOINT pPositions)
     465{
     466    PDRVMAINVMMDEV pDrv = RT_FROM_MEMBER(pInterface, DRVMAINVMMDEV, Connector);
     467    Console *pConsole = pDrv->pVMMDev->getParent();
     468
     469    pConsole->i_getDisplay()->i_handleUpdateMonitorPositions(cPositions, pPositions);
    460470
    461471    return VINF_SUCCESS;
     
    10701080    pThis->Connector.pfnSetCredentialsJudgementResult = vmmdevSetCredentialsJudgementResult;
    10711081    pThis->Connector.pfnSetVisibleRegion              = vmmdevSetVisibleRegion;
     1082    pThis->Connector.pfnUpdateMonitorPositions        = vmmdevUpdateMonitorPositions;
    10721083    pThis->Connector.pfnQueryVisibleRegion            = vmmdevQueryVisibleRegion;
    10731084    pThis->Connector.pfnReportStatistics              = vmmdevReportStatistics;
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