diff options
author | Martin Robinson <mrobinson@igalia.com> | 2023-05-15 15:48:12 +0200 |
---|---|---|
committer | Martin Robinson <mrobinson@igalia.com> | 2023-05-19 09:05:48 +0200 |
commit | c56a81480647805e8ef5567d77a38568ccfcd9f2 (patch) | |
tree | 87e8836fe5fbee2762f5a25b36873898d6c9be0f /components/script_traits/lib.rs | |
parent | 918557ad6d04cd2bd73516e9ccb9019bdaa53500 (diff) | |
download | servo-c56a81480647805e8ef5567d77a38568ccfcd9f2.tar.gz servo-c56a81480647805e8ef5567d77a38568ccfcd9f2.zip |
Add a compositor-side scroll tree
This will allow the compositor to properly chain scrolling requests up
when a node has reached the extent of the scroll area. This fixes
scrolling on servo.org.
Diffstat (limited to 'components/script_traits/lib.rs')
-rw-r--r-- | components/script_traits/lib.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/components/script_traits/lib.rs b/components/script_traits/lib.rs index 4eaf90ea7fc..90be1e44910 100644 --- a/components/script_traits/lib.rs +++ b/components/script_traits/lib.rs @@ -30,6 +30,7 @@ use crate::transferable::MessagePortImpl; use crate::webdriver_msg::{LoadStatus, WebDriverScriptCommand}; use bluetooth_traits::BluetoothRequest; use canvas_traits::webgl::WebGLPipeline; +use compositor::ScrollTreeNodeId; use crossbeam_channel::{Receiver, RecvTimeoutError, Sender}; use devtools_traits::{DevtoolScriptControlMsg, ScriptToDevtoolsControlMsg, WorkerId}; use embedder_traits::{Cursor, EventLoopWaker}; @@ -1118,6 +1119,9 @@ pub struct CompositorHitTestResult { /// The cursor that should be used when hovering the item hit by the hit test. pub cursor: Option<Cursor>, + + /// The scroll tree node associated with this hit test item. + pub scroll_tree_node: ScrollTreeNodeId, } /// The set of WebRender operations that can be initiated by the content process. |