mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 10:38:11 +00:00

The "WebContent" service provides a very restricted instance of LibWeb running as an unprivileged user account. This will be used to implement process separation in Browser, among other things. This first cut of the service only spawns a single WebContent process when someone connects to /tmp/portal/webcontent. We will soon switch this over to spawning a new process for each connection. Since this feature is very immature, we'll be bringing it up inside of Demos/WebView as a separate demo program. Eventually this will become a reusable widget that anyone can embed and easily get out-of-process web content in their GUI. This is pretty, pretty cool! :^)
15 lines
515 B
Text
15 lines
515 B
Text
endpoint WebContentServer = 89
|
|
{
|
|
Greet() => (i32 client_id)
|
|
|
|
UpdateSystemTheme(i32 shbuf_id) =|
|
|
|
|
LoadURL(URL url) =|
|
|
|
|
Paint(Gfx::IntRect content_rect, i32 shbuf_id) =|
|
|
SetViewportRect(Gfx::IntRect rect) =|
|
|
|
|
MouseDown(Gfx::IntPoint position, unsigned button, unsigned buttons, unsigned modifiers) =|
|
|
MouseMove(Gfx::IntPoint position, unsigned button, unsigned buttons, unsigned modifiers) =|
|
|
MouseUp(Gfx::IntPoint position, unsigned button, unsigned buttons, unsigned modifiers) =|
|
|
}
|