VirtualBox

Changeset 41044 in vbox for trunk/src/VBox/Additions/WINNT


Ignore:
Timestamp:
Apr 24, 2012 11:37:03 AM (13 years ago)
Author:
vboxsync
Message:

VBoxVideoXPDM: inform host about disabled monitors.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/xpdm/VBoxMPDriver.cpp

    r40566 r41044  
    2020#include <VBox/Hardware/VBoxVideoVBE.h>
    2121#include <VBox/VBoxGuestLib.h>
     22#include <VBox/VBoxVideo.h>
    2223#include "common/VBoxMPHGSMI.h"
    2324#include "common/VBoxMPCommon.h"
     
    401402            STARTIO_IN(ULONG, pAttach);
    402403
     404            LOGF(("IOCTL_VIDEO_SWITCH_DUALVIEW: [%d] attach = %d", pExt->iDevice, *pAttach));
     405
    403406            if (pExt->iDevice>0)
    404407            {
    405408                pExt->u.secondary.bEnabled = (BOOLEAN)(*pAttach);
     409
     410                /* Inform the host.
     411                 * Currently only about secondary devices, because the driver does not support
     412                 * disconnecting the primary display (it does not allow to change the primary display).
     413                 */
     414                if (!pExt->u.secondary.bEnabled)
     415                {
     416                    PVBOXMP_COMMON pCommon = VBoxCommonFromDeviceExt(pExt);
     417                    if (pCommon->bHGSMI)
     418                    {
     419                        VBoxHGSMIProcessDisplayInfo(&pCommon->guestCtx, pExt->iDevice,
     420                                                    /* cOriginX = */ 0, /* cOriginY = */ 0,
     421                                                    /* offStart = */ 0, /* cbPitch = */ 0,
     422                                                    /* cWidth = */ 0, /* cHeight = */ 0, /* cBPP = */ 0,
     423                                                    VBVA_SCREEN_F_ACTIVE | VBVA_SCREEN_F_DISABLED);
     424                    }
     425                }
    406426            }
    407427
     
    415435            STARTIO_IN(ULONG, pChildIndex);
    416436            STARTIO_OUT(ULONG, pChildState);
     437
     438            LOGF(("IOCTL_VIDEO_GET_CHILD_STATE: [%d] idx = %d", pExt->iDevice, *pChildIndex));
    417439
    418440            if (*pChildIndex>0 && *pChildIndex<=(ULONG)VBoxCommonFromDeviceExt(pExt)->cDisplays)
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