@ -1249,6 +1249,39 @@ static int createNativeWindow(_GLFWwindow* window, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    DWORD  style  =  getWindowStyle ( window ) ;   
					 
					 
					 
					    DWORD  style  =  getWindowStyle ( window ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    DWORD  exStyle  =  getWindowExStyle ( window ) ;   
					 
					 
					 
					    DWORD  exStyle  =  getWindowExStyle ( window ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    if  ( ! _glfw . win32 . mainWindowClass )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        WNDCLASSEXW  wc  =  {  sizeof ( wc )  } ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . style          =  CS_HREDRAW  |  CS_VREDRAW  |  CS_OWNDC ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . lpfnWndProc    =  windowProc ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . hInstance      =  _glfw . win32 . instance ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . hCursor        =  LoadCursorW ( NULL ,  IDC_ARROW ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					# if defined(_GLFW_WNDCLASSNAME)  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . lpszClassName  =  _GLFW_WNDCLASSNAME ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					# else  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . lpszClassName  =  L " GLFW30 " ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					# endif  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        // Load user-provided icon if available
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        wc . hIcon  =  LoadImageW ( GetModuleHandleW ( NULL ) ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					                              L " GLFW_ICON " ,  IMAGE_ICON ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					                              0 ,  0 ,  LR_DEFAULTSIZE  |  LR_SHARED ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        if  ( ! wc . hIcon )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            // No user-provided icon found, load default icon
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            wc . hIcon  =  LoadImageW ( NULL ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					                                  IDI_APPLICATION ,  IMAGE_ICON ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					                                  0 ,  0 ,  LR_DEFAULTSIZE  |  LR_SHARED ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        _glfw . win32 . mainWindowClass  =  RegisterClassExW ( & wc ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        if  ( ! _glfw . win32 . mainWindowClass )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            _glfwInputErrorWin32 ( GLFW_PLATFORM_ERROR ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					                                 " Win32: Failed to register window class " ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					            return  GLFW_FALSE ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					        }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( window - > monitor )   
					 
					 
					 
					    if  ( window - > monitor )   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    {   
					 
					 
					 
					    {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        MONITORINFO  mi  =  {  sizeof ( mi )  } ;   
					 
					 
					 
					        MONITORINFO  mi  =  {  sizeof ( mi )  } ;   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -1282,7 +1315,7 @@ static int createNativeWindow(_GLFWwindow* window, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        return  GLFW_FALSE ;   
					 
					 
					 
					        return  GLFW_FALSE ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    window - > win32 . handle  =  CreateWindowExW ( exStyle ,   
					 
					 
					 
					    window - > win32 . handle  =  CreateWindowExW ( exStyle ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                                           _GLFW_WNDCLASSNAME ,   
					 
					 
					 
					                                           MAKEINTATOM ( _glfw . win32 . mainWindowClass ) ,   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					                                           wideTitle ,   
					 
					 
					 
					                                           wideTitle ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                                           style ,   
					 
					 
					 
					                                           style ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                                           xpos ,  ypos ,   
					 
					 
					 
					                                           xpos ,  ypos ,   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -1387,49 +1420,6 @@ static int createNativeWindow(_GLFWwindow* window, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    return  GLFW_TRUE ;   
					 
					 
					 
					    return  GLFW_TRUE ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					}  
					 
					 
					 
					}  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					// Registers the GLFW window class
  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					//
  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					GLFWbool  _glfwRegisterWindowClassWin32 ( void )  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					{  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    WNDCLASSEXW  wc ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    ZeroMemory ( & wc ,  sizeof ( wc ) ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . cbSize         =  sizeof ( wc ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . style          =  CS_HREDRAW  |  CS_VREDRAW  |  CS_OWNDC ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . lpfnWndProc    =  windowProc ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . hInstance      =  _glfw . win32 . instance ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . hCursor        =  LoadCursorW ( NULL ,  IDC_ARROW ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . lpszClassName  =  _GLFW_WNDCLASSNAME ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    // Load user-provided icon if available
   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    wc . hIcon  =  LoadImageW ( GetModuleHandleW ( NULL ) ,   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                          L " GLFW_ICON " ,  IMAGE_ICON ,   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                          0 ,  0 ,  LR_DEFAULTSIZE  |  LR_SHARED ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( ! wc . hIcon )   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    {   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        // No user-provided icon found, load default icon
   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        wc . hIcon  =  LoadImageW ( NULL ,   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                              IDI_APPLICATION ,  IMAGE_ICON ,   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                              0 ,  0 ,  LR_DEFAULTSIZE  |  LR_SHARED ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    }   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    if  ( ! RegisterClassExW ( & wc ) )   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    {   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        _glfwInputErrorWin32 ( GLFW_PLATFORM_ERROR ,   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                             " Win32: Failed to register window class " ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					        return  GLFW_FALSE ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    }   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    return  GLFW_TRUE ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					}  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					// Unregisters the GLFW window class
  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					//
  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					void  _glfwUnregisterWindowClassWin32 ( void )  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					{  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    UnregisterClassW ( _GLFW_WNDCLASSNAME ,  _glfw . win32 . instance ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					}  
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					GLFWbool  _glfwCreateWindowWin32 ( _GLFWwindow *  window ,  
					 
					 
					 
					GLFWbool  _glfwCreateWindowWin32 ( _GLFWwindow *  window ,  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                                const  _GLFWwndconfig *  wndconfig ,   
					 
					 
					 
					                                const  _GLFWwndconfig *  wndconfig ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					                                const  _GLFWctxconfig *  ctxconfig ,   
					 
					 
					 
					                                const  _GLFWctxconfig *  ctxconfig ,