mirror of
https://github.com/servo/servo.git
synced 2025-08-02 20:20:14 +01:00
script: When using WebRender, keep the DOM-side scroll positions for
elements with `overflow: scroll` up to date, and take them into account when doing hit testing. Closes #11648.
This commit is contained in:
parent
ce88b8ed30
commit
041cfe6d0a
14 changed files with 259 additions and 47 deletions
|
@ -112,8 +112,9 @@ mod unpremultiplytable;
|
|||
mod webdriver_handlers;
|
||||
|
||||
use dom::bindings::codegen::RegisterBindings;
|
||||
use js::jsapi::SetDOMProxyInformation;
|
||||
use js::jsapi::{Handle, JSContext, JSObject, SetDOMProxyInformation};
|
||||
use std::ptr;
|
||||
use util::opts;
|
||||
|
||||
#[cfg(target_os = "linux")]
|
||||
#[allow(unsafe_code)]
|
||||
|
@ -168,3 +169,14 @@ pub fn init() {
|
|||
|
||||
perform_platform_specific_initialization();
|
||||
}
|
||||
|
||||
/// FIXME(pcwalton): Currently WebRender cannot handle DOM-initiated scrolls. Remove this when it
|
||||
/// can. See PR #11680 for details.
|
||||
///
|
||||
/// This function is only marked `unsafe` because the `[Func=foo]` WebIDL attribute requires it. It
|
||||
/// shouldn't actually do anything unsafe.
|
||||
#[allow(unsafe_code)]
|
||||
pub unsafe fn script_can_initiate_scroll(_: *mut JSContext, _: Handle<*mut JSObject>) -> bool {
|
||||
!opts::get().use_webrender
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue