Martin Robinson
6031a12fd1
Move ScriptToConstellationMsg
to constellation_traits
( #36364 )
...
This is the last big change necessary to create the
`constellation_traits` crate. This moves the data structure for messages
that originate from the `ScriptThread` and are sent to the
`Contellation` to `constellation_traits`, effectively splitting
`script_traits` in half. Before, `script_traits` was responsible for
exposing the API of both the `ScriptThread` and the `Constellation` to
the rest of Servo.
- Data structures that are used by `ScriptToConstellationMsg` are moved
to `constellation_traits`. The dependency graph looks a bit like this:
`script_layout_interface` depends on `script_traits` depends on
`constellation_traits` depends on `embedder_traits`.
- Data structures that are used in the embedding layer
(`UntrustedNodeAddress`, `CompositorHitTestResult`, `TouchEventResult`
and `AnimationState`) are moved to embedder_traits, to avoid a
dependency cycle between `webrender_traits` and
`constellation_traits`.
- Types dealing with MessagePorts and serialization are moved to
`constellation_traits::message_port`.
Testing: This is covered by existing tests as it just moves types
around.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-04-05 22:13:29 +00:00
Gae24
966888615f
DataTransferItem
: improve spec compliance (#35418 )
...
* DataTransfer: remove PlainString and Binary structs
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* add DataTransferItemList remove() test case
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* bring datatransferitem closer to the spec
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* queue a task to invoke the callback
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
---------
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2025-02-16 18:53:35 +00:00
Gae24
1bd34a5781
DataTransfer: propagate CanGc argument ( #35062 )
...
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2025-01-18 18:24:49 +00:00
Gae24
d470f219b1
Implement Clipboard Event Api ( #33576 )
...
* implement ClipboardEvent interface
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* draft implementation of clipboard events
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* handle received clipboard events inside html elemtents
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* use rustdoc style
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix compilation errors due to rebase
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* update arboard crate
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* improve paste events
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* code cleanup
revert arboard crate's update, handle text only
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* restrict visibility of some methods to script crate
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* propagate CanGc argument
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* simplify handle_clipboard_msg
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* remove code duplication
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix potential borrow hazard
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* add clipboard_event pref, restore unit test code
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* retrict visibility of some document's methods
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* check if clipboardevent is trusted
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* enable clipboardevent
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix compilation for egl ports
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
---------
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2025-01-15 19:45:29 +00:00
Josh Matthews
c94d909a86
script: Limit public exports. ( #34915 )
...
* script: Restrict reexport visibility of DOM types.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Mass pub->pub(crate) conversion.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Hide existing dead code warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix clippy warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix unit tests.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* Fix clippy.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* More formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2025-01-10 08:19:19 +00:00
Gae24
c9e3d3e25e
Implement DataTransfer
and related interfaces ( #34205 )
...
* add datatransfer interfaces
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* implement DataTransfer interface
implemented Constructor, setter and getter for drop_effect and effect_allowed, Items and SetDragImage
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* implement DataTransferItem interface
Implemented Kind, Type, GetAsString, GetAsFile.
Marked DataTransfer as weakReferenceable to access its field
inside DataTransferItemList and DataTransferItem.
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* implement DataTransferItemList interface
implemented Lenght, Getter, Add, Remove, Clear
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* added DataTransfer's old interface
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* DataTransfer: implemented GetData, SetData, SetData
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* set Weakref to DataTransfer in DataTransferItemList and DataTransferItem
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* DataTransfer: implemented Types and Files
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* cleanup get_data, set_data, clear_data
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix clippy warning
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* add drag data store
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix DataTransfer's Types() behaviour
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* DataTransferItem: use the underlying drag data store
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix DataTransferItemList's getter and remove
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* fix clippy warnings
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* update test expectations
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
---------
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2024-11-25 10:49:04 +00:00