servo/ports/servoshell/desktop
Martin Robinson 0908a47780
libservo: Expose a single InputEvent type and pass it to script (#35430)
This change exposes a single `InputEvent` type and now there is only a
single delegate method for this `WebViewDelegate::notify_input_event`.

- Clipboard events are now handled as `EditingAction` inpute events. In
  the future this can include things like "Select All", etc.

In addition, many parts of the dance to pass these events can now be
simplified due to this abstraction.

- All forwarded events are handled the same way in the `Constellation`,
  though they may carry an optional hit test (for events that have a
  `point`) which affects which `Pipeline` they are sent to.
- In the `ScriptThread` we now accept these `InputEvents` and use them
  everywhere. Now all "compositor events" are "input events".
- This allows removing several data structures which are no longer
  necessary.
- We no longer inform the embedder when an event was handled by a
  WebView as that was only important for a MDI feature that will
  no longer be so important the full-featured `WebView` API.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2025-02-12 17:07:15 +00:00
..
protocols Create HttpStatus to safely deal with HTTP responses status. (#33581) 2024-09-29 18:23:48 +00:00
app.rs servoshell: Move initial_window_size and screen_size_override into ServoShellPreferences from Opts (#35407) 2025-02-10 20:48:48 +00:00
app_state.rs libservo: Expose a single InputEvent type and pass it to script (#35430) 2025-02-12 17:07:15 +00:00
cli.rs Add cli option for tracing-filter (#35370) 2025-02-08 07:10:12 +00:00
dialog.rs servoshell: Port alert/confirm dialog code to use egui intead of tinyfiledialogs (#35399) 2025-02-12 11:47:36 +00:00
egui_glue.rs chore: remove WindowMethods::rendering_context (#34780) 2025-01-01 08:26:23 +00:00
embedder.rs Finish the integration of webxr into the Cargo workspace (#35229) 2025-01-31 16:41:57 +00:00
events_loop.rs servoshell: Port desktop servoshell to use delegate API (#35284) 2025-02-06 07:33:31 +00:00
gamepad.rs libservo: Expose a single InputEvent type and pass it to script (#35430) 2025-02-12 17:07:15 +00:00
geometry.rs Use webrender_api::units::DevicePixel rather than style_traits::DevicePixel unless interfacing with Stylo (#34353) 2024-11-25 23:42:04 +00:00
headed_window.rs libservo: Expose a single InputEvent type and pass it to script (#35430) 2025-02-12 17:07:15 +00:00
headless_window.rs servoshell: Move initial_window_size and screen_size_override into ServoShellPreferences from Opts (#35407) 2025-02-10 20:48:48 +00:00
keyutils.rs servoshell: Clean up keyboard event conversion a little (#32564) 2024-06-19 19:38:56 +00:00
minibrowser.rs Revert "Use surfman with glow bindings (#34328)" (#35402) 2025-02-10 17:20:27 +00:00
mod.rs servoshell: Port desktop servoshell to use delegate API (#35284) 2025-02-06 07:33:31 +00:00
tracing.rs servoshell: Port desktop servoshell to use delegate API (#35284) 2025-02-06 07:33:31 +00:00
window_trait.rs servoshell: Port desktop servoshell to use delegate API (#35284) 2025-02-06 07:33:31 +00:00