mirror of
				https://github.com/glfw/glfw.git
				synced 2025-11-04 06:15:07 +00:00 
			
		
		
		
	Add GLFW_X11_XCB_VULKAN_SURFACE flag to glfwinfo
This commit is contained in:
		
							parent
							
								
									a25e8eb50d
								
							
						
					
					
						commit
						f90df24244
					
				@ -116,6 +116,7 @@ static void usage(void)
 | 
				
			|||||||
                                        ANGLE_TYPE_VULKAN " or "
 | 
					                                        ANGLE_TYPE_VULKAN " or "
 | 
				
			||||||
                                        ANGLE_TYPE_METAL ")\n");
 | 
					                                        ANGLE_TYPE_METAL ")\n");
 | 
				
			||||||
    printf("      --graphics-switching  request macOS graphics switching\n");
 | 
					    printf("      --graphics-switching  request macOS graphics switching\n");
 | 
				
			||||||
 | 
					    printf("      --disable-xcb-surface disable VK_KHR_xcb_surface extension\n");
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void error_callback(int error, const char* description)
 | 
					static void error_callback(int error, const char* description)
 | 
				
			||||||
@ -360,6 +361,7 @@ int main(int argc, char** argv)
 | 
				
			|||||||
    bool fb_doublebuffer = true;
 | 
					    bool fb_doublebuffer = true;
 | 
				
			||||||
    int angle_type = GLFW_ANGLE_PLATFORM_TYPE_NONE;
 | 
					    int angle_type = GLFW_ANGLE_PLATFORM_TYPE_NONE;
 | 
				
			||||||
    bool cocoa_graphics_switching = false;
 | 
					    bool cocoa_graphics_switching = false;
 | 
				
			||||||
 | 
					    bool disable_xcb_surface = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    enum { CLIENT, CONTEXT, BEHAVIOR, DEBUG_CONTEXT, FORWARD, HELP,
 | 
					    enum { CLIENT, CONTEXT, BEHAVIOR, DEBUG_CONTEXT, FORWARD, HELP,
 | 
				
			||||||
           EXTENSIONS, LAYERS,
 | 
					           EXTENSIONS, LAYERS,
 | 
				
			||||||
@ -367,7 +369,7 @@ int main(int argc, char** argv)
 | 
				
			|||||||
           REDBITS, GREENBITS, BLUEBITS, ALPHABITS, DEPTHBITS, STENCILBITS,
 | 
					           REDBITS, GREENBITS, BLUEBITS, ALPHABITS, DEPTHBITS, STENCILBITS,
 | 
				
			||||||
           ACCUMREDBITS, ACCUMGREENBITS, ACCUMBLUEBITS, ACCUMALPHABITS,
 | 
					           ACCUMREDBITS, ACCUMGREENBITS, ACCUMBLUEBITS, ACCUMALPHABITS,
 | 
				
			||||||
           AUXBUFFERS, SAMPLES, STEREO, SRGB, SINGLEBUFFER, NOERROR_SRSLY,
 | 
					           AUXBUFFERS, SAMPLES, STEREO, SRGB, SINGLEBUFFER, NOERROR_SRSLY,
 | 
				
			||||||
           ANGLE_TYPE, GRAPHICS_SWITCHING };
 | 
					           ANGLE_TYPE, GRAPHICS_SWITCHING, XCB_SURFACE };
 | 
				
			||||||
    const struct option options[] =
 | 
					    const struct option options[] =
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        { "behavior",           1, NULL, BEHAVIOR },
 | 
					        { "behavior",           1, NULL, BEHAVIOR },
 | 
				
			||||||
@ -401,6 +403,7 @@ int main(int argc, char** argv)
 | 
				
			|||||||
        { "no-error",           0, NULL, NOERROR_SRSLY },
 | 
					        { "no-error",           0, NULL, NOERROR_SRSLY },
 | 
				
			||||||
        { "angle-type",         1, NULL, ANGLE_TYPE },
 | 
					        { "angle-type",         1, NULL, ANGLE_TYPE },
 | 
				
			||||||
        { "graphics-switching", 0, NULL, GRAPHICS_SWITCHING },
 | 
					        { "graphics-switching", 0, NULL, GRAPHICS_SWITCHING },
 | 
				
			||||||
 | 
					        { "vk-xcb-surface",     0, NULL, XCB_SURFACE },
 | 
				
			||||||
        { NULL, 0, NULL, 0 }
 | 
					        { NULL, 0, NULL, 0 }
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -607,6 +610,9 @@ int main(int argc, char** argv)
 | 
				
			|||||||
            case GRAPHICS_SWITCHING:
 | 
					            case GRAPHICS_SWITCHING:
 | 
				
			||||||
                cocoa_graphics_switching = true;
 | 
					                cocoa_graphics_switching = true;
 | 
				
			||||||
                break;
 | 
					                break;
 | 
				
			||||||
 | 
					            case XCB_SURFACE:
 | 
				
			||||||
 | 
					                disable_xcb_surface = true;
 | 
				
			||||||
 | 
					                break;
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                usage();
 | 
					                usage();
 | 
				
			||||||
                exit(EXIT_FAILURE);
 | 
					                exit(EXIT_FAILURE);
 | 
				
			||||||
@ -623,6 +629,7 @@ int main(int argc, char** argv)
 | 
				
			|||||||
    glfwInitHint(GLFW_COCOA_MENUBAR, false);
 | 
					    glfwInitHint(GLFW_COCOA_MENUBAR, false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    glfwInitHint(GLFW_ANGLE_PLATFORM_TYPE, angle_type);
 | 
					    glfwInitHint(GLFW_ANGLE_PLATFORM_TYPE, angle_type);
 | 
				
			||||||
 | 
					    glfwInitHint(GLFW_X11_XCB_VULKAN_SURFACE, !disable_xcb_surface);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (!glfwInit())
 | 
					    if (!glfwInit())
 | 
				
			||||||
        exit(EXIT_FAILURE);
 | 
					        exit(EXIT_FAILURE);
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user