VirtualBox

Changeset 84853 in vbox


Ignore:
Timestamp:
Jun 16, 2020 5:18:34 PM (5 years ago)
Author:
vboxsync
Message:

DevVGA-SVGA3d-shared: We're only creating one kind of window, so make WM_VMSVGA3D_CREATEWINDOW take less complicated parameters.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Graphics/DevVGA-SVGA3d-shared.cpp

    r84852 r84853  
    127127            if (msg.message == WM_VMSVGA3D_CREATEWINDOW)
    128128            {
    129                 HWND            hWnd;
    130                 HWND           *phWnd = (HWND *)msg.wParam;
    131                 LPCREATESTRUCTW pCS = (LPCREATESTRUCTW)msg.lParam;
    132 
    133                 *phWnd = hWnd = CreateWindowExW(pCS->dwExStyle,
     129                /* Create a context window with minimal 4x4 size. We will never use the swapchain
     130                 * to present the rendered image. Rendered images from the guest will be copied to
     131                 * the VMSVGA SCREEN object, which can be either an offscreen render target or
     132                 * system memory in the guest VRAM. */
     133                HWND *phWnd = (HWND *)msg.wParam;
     134                HWND  hWnd;
     135                *phWnd = hWnd = CreateWindowExW(WS_EX_NOACTIVATE | WS_EX_NOPARENTNOTIFY,
    134136                                                VMSVGA3D_WNDCLASSNAME,
    135                                                 pCS->lpszName,
    136                                                 pCS->style,
    137                                                 pCS->x,
    138                                                 pCS->y,
    139                                                 pCS->cx,
    140                                                 pCS->cy,
    141                                                 pCS->hwndParent,
    142                                                 pCS->hMenu,
    143                                                 pCS->hInstance,
    144                                                 NULL);
    145                 AssertMsg(hWnd, ("CreateWindowEx %x %ls %ls %x (%d,%d)(%d,%d), %x %x %x error=%x\n", pCS->dwExStyle,
    146                                  pCS->lpszName, VMSVGA3D_WNDCLASSNAME, pCS->style, pCS->x, pCS->y, pCS->cx, pCS->cy,
    147                                  pCS->hwndParent, pCS->hMenu, pCS->hInstance, GetLastError()));
     137                                                NULL /*pwszName*/,
     138                                                WS_DISABLED,
     139                                                0 /*x*/,
     140                                                0 /*y*/,
     141                                                4 /*cx*/,
     142                                                4 /*cy*/,
     143                                                HWND_DESKTOP /*hwndParent*/,
     144                                                NULL /*hMenu*/,
     145                                                (HINSTANCE)msg.lParam /*hInstance*/,
     146                                                NULL /*WM_CREATE param*/);
     147                AssertMsg(hWnd, ("CreateWindowEx %ls, WS_EX_NOACTIVATE | WS_EX_NOPARENTNOTIFY, WS_DISABLED, (0,0)(4,4), HWND_DESKTOP hInstance=%p -> error=%x\n",
     148                                 VMSVGA3D_WNDCLASSNAME, msg.lParam, GetLastError()));
    148149
    149150#ifdef VBOX_STRICT
     
    274275int vmsvga3dContextWindowCreate(HINSTANCE hInstance, RTTHREAD pWindowThread, RTSEMEVENT WndRequestSem, HWND *pHwnd)
    275276{
    276     /* Create a context window with minimal 4x4 size. We will never use the swapchain
    277      * to present the rendered image. Rendered images from the guest will be copied to
    278      * the VMSVGA SCREEN object, which can be either an offscreen render target or
    279      * system memory in the guest VRAM.
    280      */
    281     CREATESTRUCTW cs;
    282     cs.lpCreateParams   = NULL;
    283     cs.hInstance        = hInstance;
    284     cs.hMenu            = NULL;
    285     cs.hwndParent       = HWND_DESKTOP;
    286     cs.cx               = 4;
    287     cs.cy               = 4;
    288     cs.x                = 0;
    289     cs.y                = 0;
    290     cs.style            = WS_DISABLED;
    291     cs.lpszName         = NULL;
    292     cs.lpszClass        = 0;
    293     cs.dwExStyle        = WS_EX_NOACTIVATE | WS_EX_NOPARENTNOTIFY;
    294 
    295     return vmsvga3dSendThreadMessage(pWindowThread, WndRequestSem, WM_VMSVGA3D_CREATEWINDOW, (WPARAM)pHwnd, (LPARAM)&cs);
     277    return vmsvga3dSendThreadMessage(pWindowThread, WndRequestSem, WM_VMSVGA3D_CREATEWINDOW, (WPARAM)pHwnd, (LPARAM)hInstance);
    296278}
    297279
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