servo/ports/servoshell
Martin Robinson 54b5c7b632
compositing: Move image output and shutdown management out of the compositor (#35538)
This is a step toward the renderer-per-WebView goal. It moves various
details out of `IOCompositor`.

- Image output: This is moved to servoshell as now applications can
  access the image contents of a `WebView` via
  `RenderingContext::read_to_image`. Most options for this are moved to
  `ServoShellPreferences` apart from `wait_for_stable_image` as this
  requires a specific kind of coordination in the `ScriptThread` that is
  also very expensive. Instead, paint is now simply delayed until a
  stable image is reached and `WebView::paint()` returns a boolean.
  Maybe this can be revisited in the future.
- Shutdown: Shutdown is now managed by libservo itself. Shutdown state
  is shared between the compositor and `Servo` instance. In the future,
  this sharing might be unecessary.
- `CompositeTarget` has been removed entirely. This no longer needs to
   be passed when creating a Servo instance.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <yuweiwu@pm.me>
2025-02-20 18:27:49 +00:00
..
desktop compositing: Move image output and shutdown management out of the compositor (#35538) 2025-02-20 18:27:49 +00:00
egl compositing: Move image output and shutdown management out of the compositor (#35538) 2025-02-20 18:27:49 +00:00
platform Fix a leak in MacOS thread count function (#34862) 2025-01-07 03:28:30 +00:00
backtrace.rs Add OpenHarmony support to servoshell (#32594) 2024-06-28 12:51:50 +00:00
build.rs Fix a leak in MacOS thread count function (#34862) 2025-01-07 03:28:30 +00:00
Cargo.toml compositing: Move image output and shutdown management out of the compositor (#35538) 2025-02-20 18:27:49 +00:00
crash_handler.rs Fix various clippy warnings on OpenHarmony (#34281) 2024-11-19 05:21:48 +00:00
lib.rs Add cli option for tracing-filter (#35370) 2025-02-08 07:10:12 +00:00
main.rs Make tracing available on all platforms, with or without perfetto (#33301) 2024-09-04 12:56:29 +00:00
panic_hook.rs api: Flatten and simplify Servo preferences (#34966) 2025-01-14 13:54:06 +00:00
parser.rs api: Flatten and simplify Servo preferences (#34966) 2025-01-14 13:54:06 +00:00
prefs.rs compositing: Move image output and shutdown management out of the compositor (#35538) 2025-02-20 18:27:49 +00:00
resources.rs libservo: Stop using script_traits in the embedding layer (#35185) 2025-01-28 11:15:36 +00:00
test.rs api: Flatten and simplify Servo preferences (#34966) 2025-01-14 13:54:06 +00:00