VirtualBox

Ignore:
Timestamp:
Jun 4, 2010 12:12:45 PM (15 years ago)
Author:
vboxsync
Message:

DisplayImpl: fixed VRDP multimonitor (xTracker 5014).

File:
1 edited

Legend:

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

    r29542 r30032  
    36373637DECLCALLBACK(void) Display::displayVBVAUpdateProcess(PPDMIDISPLAYCONNECTOR pInterface, unsigned uScreenId, const PVBVACMDHDR pCmd, size_t cbCmd)
    36383638{
    3639     LogFlowFunc(("uScreenId %d pCmd %p cbCmd %d\n", uScreenId, pCmd, cbCmd));
     3639    LogFlowFunc(("uScreenId %d pCmd %p cbCmd %d, @%d,%d %dx%d\n", uScreenId, pCmd, cbCmd, pCmd->x, pCmd->y, pCmd->w, pCmd->h));
    36403640
    36413641    PDRVMAINDISPLAY pDrv = PDMIDISPLAYCONNECTOR_2_MAINDISPLAY(pInterface);
     
    36473647        if (pFBInfo->fDefaultFormat)
    36483648        {
     3649            /* Make sure that framebuffer contains the same image as the guest VRAM. */
    36493650            if (uScreenId == VBOX_VIDEO_PRIMARY_SCREEN)
    36503651            {
     
    36893690                }
    36903691            }
    3691             pThis->handleDisplayUpdate (pCmd->x + pFBInfo->xOrigin,
    3692                                         pCmd->y + pFBInfo->yOrigin, pCmd->w, pCmd->h);
    3693         }
    3694 
     3692        }
     3693
     3694        VBVACMDHDR hdrSaved = *pCmd;
     3695
     3696        VBVACMDHDR *pHdrUnconst = (VBVACMDHDR *)pCmd;
     3697
     3698        pHdrUnconst->x -= (int16_t)pFBInfo->xOrigin;
     3699        pHdrUnconst->y -= (int16_t)pFBInfo->yOrigin;
     3700
     3701        /* @todo new SendUpdate entry which can get a separate cmd header or coords. */
    36953702        pThis->mParent->consoleVRDPServer()->SendUpdate (uScreenId, pCmd, cbCmd);
     3703
     3704        *pHdrUnconst = hdrSaved;
    36963705    }
    36973706}
     
    38103819    if (!fResize)
    38113820    {
    3812         /* No paramaters of the framebuffer have actually changed. */
     3821        /* No parameters of the framebuffer have actually changed. */
     3822        if (fNewOrigin)
     3823        {
     3824            /* VRDP server still need this notification. */
     3825            LogFlowFunc (("Calling VRDP\n"));
     3826            pThis->mParent->consoleVRDPServer()->SendResize();
     3827        }
    38133828        return VINF_SUCCESS;
    38143829    }
Note: See TracChangeset for help on using the changeset viewer.

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