mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 18:32:45 +00:00 
			
		
		
		
	 fbfb70f81a
			
		
	
	
		fbfb70f81a
		
	
	
	
	
		
			
			In order for same-origin NavigableContainers (iframe, frame, embed, ...) and window.open() WindowProxies to have the proper JS access to their embedder/opener, we need to host multiple top level traversables in the same WebContent process. As a first step, make WebContent::PageHost hold a HashMap of PageClient objects, each holding their own Web::Page that represents a TraversableNavigable's API surface with the UI process.
		
			
				
	
	
		
			40 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| include(accelerated_graphics)
 | |
| 
 | |
| serenity_component(
 | |
|     WebContent
 | |
|     TARGETS WebContent
 | |
|     DEPENDS ImageDecoder RequestServer WebSocket
 | |
| )
 | |
| 
 | |
| compile_ipc(WebContentServer.ipc WebContentServerEndpoint.h)
 | |
| compile_ipc(WebContentClient.ipc WebContentClientEndpoint.h)
 | |
| 
 | |
| compile_ipc(WebDriverClient.ipc WebDriverClientEndpoint.h)
 | |
| compile_ipc(WebDriverServer.ipc WebDriverServerEndpoint.h)
 | |
| 
 | |
| set(SOURCES
 | |
|     ConnectionFromClient.cpp
 | |
|     ConsoleGlobalEnvironmentExtensions.cpp
 | |
|     ImageCodecPluginSerenity.cpp
 | |
|     PageClient.cpp
 | |
|     PageHost.cpp
 | |
|     WebContentConsoleClient.cpp
 | |
|     WebDriverConnection.cpp
 | |
|     main.cpp
 | |
| )
 | |
| 
 | |
| set(GENERATED_SOURCES
 | |
|     WebContentClientEndpoint.h
 | |
|     WebContentServerEndpoint.h
 | |
|     WebDriverClientEndpoint.h
 | |
|     WebDriverServerEndpoint.h
 | |
| )
 | |
| 
 | |
| serenity_bin(WebContent)
 | |
| target_link_libraries(WebContent PRIVATE LibCore LibFileSystem LibIPC LibGfx LibAudio LibImageDecoderClient LibJS LibWebView LibWeb LibLocale LibMain)
 | |
| link_with_locale_data(WebContent)
 | |
| 
 | |
| if (HAS_ACCELERATED_GRAPHICS)
 | |
|     target_compile_definitions(WebContent PRIVATE HAS_ACCELERATED_GRAPHICS)
 | |
|     target_link_libraries(WebContent PRIVATE LibAccelGfx)
 | |
| endif()
 |