Merge branch 'orbital-servo' into 'master'

Make servo render with Orbital

See merge request redox-os/cookbook!670
This commit is contained in:
Jeremy Soller 2025-11-05 06:25:08 -07:00
commit 0c0fd60782
4 changed files with 211 additions and 512 deletions

View File

@ -7,15 +7,18 @@ branch = "redox-24.0"
template = "custom"
dependencies = [
"expat",
"libdrm",
"liborbital",
"llvm18",
"zlib",
]
script = """
DYNAMIC_INIT
export CFLAGS+=" -DHAVE_PTHREAD=1"
export CPPFLAGS+=" -DHAVE_PTHREAD=1"
#TODO: Should be CPPFLAGS but cookbook_meson isn't reading it
export CFLAGS+=" -DHAVE_PTHREAD=1 -I${COOKBOOK_SYSROOT}/include/libdrm"
export LLVM_CONFIG="${TARGET}-llvm-config"
export LDFLAGS+=" -lorbital"
if [ "${COOKBOOK_DYNAMIC}" == "1" ]; then
COOKBOOK_MESON_FLAGS+=(-Dshared-llvm=enabled)
@ -24,14 +27,16 @@ else
fi
cookbook_meson \
-Ddri-drivers-path=/usr/lib/dri \
-Degl=enabled \
-Dglx=disabled \
-Dllvm=enabled \
-Dosmesa=true \
-Dplatforms= \
-Dshader-cache=disabled \
-Dshared-glapi=disabled
-Dplatforms=redox \
-Dshader-cache=disabled
# Hack to add LLVM libs
#TODO: only add necessary LLVM libs, not all of them
sed -i "s/ -lOSMesa / -lOSMesa $("${LLVM_CONFIG}" --libs) -lstdc++ /" "${COOKBOOK_STAGE}/usr/lib/pkgconfig/osmesa.pc"
# Hack to add LLVM libs, the list can be seen from meson log and check for matches $("${LLVM_CONFIG}" --libs)
LLVMLIBS="-lLLVMBitReader -lLLVMCore -lLLVMExecutionEngine -lLLVMInstCombine -lLLVMMCDisassembler"
LLVMLIBS+=" -lLLVMMCJIT -lLLVMScalarOpts -lLLVMTransformUtils -lLLVMCoroutines -lLLVMLTO"
sed -i "s/ -lOSMesa / -lOSMesa ${LLVMLIBS} -lstdc++ /" "${COOKBOOK_STAGE}/usr/lib/pkgconfig/osmesa.pc"
"""

View File

@ -1,6 +1,6 @@
[source]
git = "https://github.com/servo/servo.git"
rev = "25fea1e086c46d611cf87db439430994e4f56cd5"
rev = "721214fbe44bf11b968e5e076e5b0af5b5663447"
patches = [
"redox.patch"
]
@ -12,27 +12,10 @@ cp ../.servobuild ./
template = "custom"
dependencies = [
"freetype2",
"expat",
"gettext",
"glib",
"gstreamer",
"harfbuzz",
"libffi",
"libpng",
"libiconv",
"libx11",
"libxcb",
"libpng",
"libstdcxx-v3",
"openssl1",
"pcre",
"zlib",
"x11proto",
"x11proto-kb",
"xcb-proto",
"xextproto",
"libxau",
"libpthread-stubs",
"mesa",
"fontconfig",
"expat",
]
@ -48,7 +31,7 @@ export TARGET_AR="$AR"
# pkg-config crate can only recognize one path to pkgconfig
export PKG_CONFIG_PATH_x86_64_unknown_redox="${COOKBOOK_SYSROOT}/lib/pkgconfig"
export PKG_CONFIG_SYSROOT_DIR_x86_64_unknown_redox="${COOKBOOK_SYSROOT}/lib/pkgconfig"
rsync -a -v ${COOKBOOK_SYSROOT}/usr/share/pkgconfig/*.pc ${COOKBOOK_SYSROOT}/lib/pkgconfig/
# rsync -a -v ${COOKBOOK_SYSROOT}/usr/share/pkgconfig/*.pc ${COOKBOOK_SYSROOT}/lib/pkgconfig/
export RUSTFLAGS="$RUSTFLAGS -L native=${COOKBOOK_SYSROOT}/lib -C link-arg=-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib"
@ -70,6 +53,5 @@ rsync -a -v ${COOKBOOK_SOURCE}/resources ${COOKBOOK_STAGE}/usr/lib/servo/
[package]
dependencies = [
"libxcursor",
"libxkbcommon-x11",
"mesa"
]

View File

@ -1,206 +1,135 @@
diff --git a/Cargo.toml b/Cargo.toml
index 2dcb622934f..0d5f41924c0 100644
index 8589f4c8078..2773d79f447 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -55,14 +55,14 @@ ctr = "0.9.2"
darling = { version = "0.20", default-features = false }
data-url = "0.3"
devtools_traits = { path = "components/shared/devtools" }
-dpi = "0.1"
+dpi = { git = "https://gitlab.redox-os.org/njskalski/winit.git", branch = "redox_mods2"}
embedder_traits = { path = "components/shared/embedder" }
encoding_rs = "0.8"
env_logger = "0.11"
euclid = "0.22"
fnv = "1.0"
fonts_traits = { path = "components/shared/fonts" }
-freetype-sys = "0.20"
+freetype-sys = { version ="0.20.1", default-features = false}
fxhash = "0.2"
getopts = "0.2.11"
gleam = "0.15"
@@ -91,7 +91,7 @@ imsz = "0.2"
indexmap = { version = "2.10.0", features = ["std"] }
ipc-channel = "0.20"
@@ -31,7 +31,7 @@ arboard = "3"
arrayvec = "0.7"
async-tungstenite = { version = "0.29", features = ["tokio-rustls-webpki-roots"] }
atomic_refcell = "0.1.13"
-aws-lc-rs = { version = "1.14", default-features = false, features = ["aws-lc-sys"] }
+aws-lc-rs = { version = "=1.13.3", default-features = false, features = ["aws-lc-sys"] }
background_hang_monitor_api = { path = "components/shared/background_hang_monitor" }
backtrace = "0.3"
base = { path = "components/shared/base" }
@@ -86,7 +86,7 @@ icu_segmenter = "1.5.0"
image = { version = "0.25", default-features = false, features = ["avif", "rayon", "bmp", "gif", "ico", "jpeg", "png", "webp"] }
imsz = "0.2"
indexmap = { version = "2.11.4", features = ["std"] }
-ipc-channel = "0.20.2"
+ipc-channel = { version = "0.20.2", features = ["force-inprocess"] }
itertools = "0.14"
-js = { package = "mozjs", git = "https://github.com/servo/mozjs" }
+js = { package = "mozjs", git = "https://gitlab.redox-os.org/willnode/mozjs.git", branch = "redox_mods" }
keyboard-types = { version = "0.8.1", features = ["serde", "webdriver"] }
kurbo = { version = "0.11.3", features = ["euclid"] }
layout_api = { path = "components/shared/layout" }
@@ -151,7 +151,7 @@ stylo_config = { git = "https://github.com/servo/stylo", branch = "2025-08-01" }
stylo_dom = { git = "https://github.com/servo/stylo", branch = "2025-08-01" }
stylo_malloc_size_of = { git = "https://github.com/servo/stylo", branch = "2025-08-01" }
stylo_traits = { git = "https://github.com/servo/stylo", branch = "2025-08-01" }
-surfman = { git = "https://github.com/servo/surfman", rev = "f7688b4585f9e0b5d4bf8ee8e4a91e82349610b1", features = ["chains"] }
+surfman = { git = "https://gitlab.redox-os.org/njskalski/surfman.git", branch = "redox_mods", features = ["sm-x11"] }
js = { package = "mozjs", git = "https://github.com/servo/mozjs" }
keyboard-types = { version = "0.8.3", features = ["serde", "webdriver"] }
@@ -148,7 +148,7 @@ stylo_config = { git = "https://github.com/servo/stylo", branch = "2025-10-01" }
stylo_dom = { git = "https://github.com/servo/stylo", branch = "2025-10-01" }
stylo_malloc_size_of = { git = "https://github.com/servo/stylo", branch = "2025-10-01" }
stylo_traits = { git = "https://github.com/servo/stylo", branch = "2025-10-01" }
-surfman = { version = "0.10.0", features = ["chains"] }
+surfman = { git = "https://github.com/willnode/surfman", branch = "redox-orbital", features = ["chains"] }
syn = { version = "2", default-features = false, features = ["clone-impls", "derive", "parsing"] }
synstructure = "0.13"
taffy = { version = "0.9", default-features = false, features = ["calc", "detailed_layout_info", "grid", "std"] }
@@ -178,14 +178,14 @@ vello_cpu = { git = "https://github.com/linebender/vello", rev = "b0e2e598ac62c7
@@ -174,16 +174,16 @@ vello_cpu = { git = "https://github.com/linebender/vello", rev = "fdf025a88dd00c
webdriver = "0.53.0"
webgpu_traits = { path = "components/shared/webgpu" }
webpki-roots = "1.0"
-webrender = { git = "https://github.com/servo/webrender", branch = "0.67", features = ["capture"] }
-webrender_api = { git = "https://github.com/servo/webrender", branch = "0.67" }
+webrender = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
-webrender = { git = "https://github.com/servo/webrender", branch = "0.68", features = ["capture"] }
-webrender_api = { git = "https://github.com/servo/webrender", branch = "0.68" }
+webrender = { git = "https://github.com/willnode/webrender.git", branch = "0.68-redox", features = ["capture"] }
+webrender_api = { git = "https://github.com/willnode/webrender.git", branch = "0.68-redox" }
webxr-api = { path = "components/shared/webxr" }
wgpu-core = "25"
wgpu-types = "25"
wgpu-core = "26"
wgpu-types = "26"
winapi = "0.3"
windows-sys = "0.59"
windows-sys = "0.61"
-winit = "0.30.12"
+winit = { git = "https://gitlab.redox-os.org/njskalski/winit.git", branch = "redox_mods2"}
+winit = { version = "0.30.12", default-features = false }
wio = "0.2"
wr_malloc_size_of = { git = "https://github.com/servo/webrender", branch = "0.67" }
-wr_malloc_size_of = { git = "https://github.com/servo/webrender", branch = "0.68" }
+wr_malloc_size_of = { git = "https://github.com/willnode/webrender.git", branch = "0.68-redox" }
xi-unicode = "0.3.0"
@@ -222,6 +222,20 @@ lto = "thin"
xml5ever = "0.35"
xpath = { path = "components/xpath" }
@@ -232,6 +232,20 @@ lto = "thin"
codegen-units = 1
[patch.crates-io]
+ipc-channel = { git = "https://gitlab.redox-os.org/njskalski/ipc-channel.git", branch="redox_mods" }
+servo_malloc_size_of = { path = "./components/malloc_size_of" }
+wr_malloc_size_of = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods"}
+# requires socketpair SOCK_SEQPACKET to support multiprocess (try remove force-inprocess feature)
+ipc-channel = { git = "https://github.com/willnode/ipc-channel.git", branch="redox" }
+orbclient = { git = "https://gitlab.redox-os.org/redox-os/orbclient" }
+#servo_malloc_size_of = { path = "./components/malloc_size_of" }
+tikv-jemalloc-sys = { version = "0.6.0", git = "https://gitlab.redox-os.org/njskalski/jemallocator.git", branch = "redox_mods" }
+tikv-jemallocator = { version = "0.6.0", git = "https://gitlab.redox-os.org/njskalski/jemallocator.git", branch = "redox_mods" }
+mozangle = { git = "https://gitlab.redox-os.org/willnode/mozangle.git", branch = "redox_mods"}
+# gaol = { git = "https://gitlab.redox-os.org/njskalski/gaol.git", branch = "redox_mods" }
+aws-lc-rs = { git = "https://gitlab.redox-os.org/njskalski/aws-lc-rs.git", branch = "redox_mods" }
+# mozjs_sys = { git = "https://gitlab.redox-os.org/njskalski/mozjs.git", rev = "e2ee9c77148c3af4f11fdff9a2cbd7e449d48d33"}
+# mozjs = { git = "https://gitlab.redox-os.org/njskalski/mozjs.git", branch = "redox_mods"}
+x11rb = { git = "https://gitlab.redox-os.org/njskalski/x11rb.git", branch = "redox_mods"}
+# x11rb = { git = "https://gitlab.redox-os.org/njskalski/x11rb.git", branch = "redox_mods"}
+libz-sys = { git = "https://github.com/willnode/libz-sys.git", branch = "servo"}
+winit = { git = "https://gitlab.redox-os.org/njskalski/winit.git", branch = "redox_mods2"}
+# winit = { git = "https://gitlab.redox-os.org/njskalski/winit.git", branch = "redox_mods2"}
+# freetype-sys = { git = "https://github.com/PistonDevelopers/freetype-sys.git", branch = "master" }
# If you need to temporarily test Servo with a local fork of some upstream
# crate, add that here. Use the form:
#
@@ -250,7 +264,7 @@ codegen-units = 1
@@ -260,7 +274,7 @@ codegen-units = 1
#
# [patch."https://github.com/servo/webrender"]
# webrender = { path = "../webrender/webrender" }
-# webrender_api = { path = "../webrender/webrender_api" }
+# webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" } = { path = "../webrender/webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }" }
+# webrender_api = { git = "https://github.com/willnode/webrender.git", branch = "0.68-redox" } = { path = "../webrender/webrender_api = { git = "https://github.com/willnode/webrender.git", branch = "0.68-redox" }" }
# wr_malloc_size_of = { path = "../webrender/wr_malloc_size_of" }
#
# Or for another Git dependency:
diff --git a/components/canvas/Cargo.toml b/components/canvas/Cargo.toml
index ef0c84977f2..4edb129dd97 100644
--- a/components/canvas/Cargo.toml
+++ b/components/canvas/Cargo.toml
@@ -38,7 +38,7 @@ raqote = { version = "0.8.5", optional = true }
servo_arc = { workspace = true }
stylo = { workspace = true }
unicode-script = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
servo_config = { path = "../config" }
vello = { workspace = true, optional = true }
vello_cpu = { workspace = true, optional = true }
diff --git a/components/compositing/Cargo.toml b/components/compositing/Cargo.toml
index d5792b858db..38132ba0f2c 100644
--- a/components/compositing/Cargo.toml
+++ b/components/compositing/Cargo.toml
@@ -44,10 +44,10 @@ servo-tracing = { workspace = true }
stylo_traits = { workspace = true }
timers = { path = "../timers" }
tracing = { workspace = true, optional = true }
-webrender = { workspace = true }
-webrender_api = { workspace = true }
+webrender = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
webxr = { path = "../webxr", optional = true }
-wr_malloc_size_of = { workspace = true }
+wr_malloc_size_of = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
[dev-dependencies]
surfman = { workspace = true }
diff --git a/components/background_hang_monitor/Cargo.toml b/components/background_hang_monitor/Cargo.toml
index f08648d3eb9..a6272f8ffb5 100644
--- a/components/background_hang_monitor/Cargo.toml
+++ b/components/background_hang_monitor/Cargo.toml
@@ -18,7 +18,7 @@ background_hang_monitor_api = { workspace = true }
backtrace = { workspace = true }
base = { workspace = true }
crossbeam-channel = { workspace = true }
-ipc-channel = { workspace = true }
+ipc-channel = { workspace = true, features = ["force-inprocess"] }
libc = { workspace = true }
log = { workspace = true }
rustc-demangle = { version = "0.1", optional = true }
diff --git a/components/constellation/Cargo.toml b/components/constellation/Cargo.toml
index a982bcbfe73..cb519367edd 100644
index 5974dd08eea..74e43604b00 100644
--- a/components/constellation/Cargo.toml
+++ b/components/constellation/Cargo.toml
@@ -58,10 +58,10 @@ stylo_traits = { workspace = true }
tracing = { workspace = true, optional = true }
webgpu = { path = "../webgpu" }
webgpu_traits = { workspace = true }
-webrender = { workspace = true }
-webrender_api = { workspace = true }
+webrender = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods", features = ["capture"] }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
@@ -67,4 +67,4 @@ webrender_api = { workspace = true }
webxr-api = { workspace = true, features = ["ipc"] }
servo-tracing = { workspace = true }
-[target.'cfg(any(target_os="macos", all(not(target_os = "windows"), not(target_os = "ios"), not(target_os="android"), not(target_env="ohos"), not(target_arch="arm"), not(target_arch="aarch64"))))'.dependencies]
+[target.'cfg(any(target_os="macos", all(not(target_os = "windows"), not(target_os = "ios"), not(target_os="android"), not(target_os="redox"), not(target_env="ohos"), not(target_arch="arm"), not(target_arch="aarch64"))))'.dependencies]
gaol = "0.2.1"
[target.'cfg(any(target_os="macos", all(not(target_os = "windows"), not(target_os = "ios"), not(target_os="android"), not(target_env="ohos"), not(target_arch="arm"), not(target_arch="aarch64"))))'.dependencies]
-gaol = "0.2.1"
+gaol = { git = "https://github.com/willnode/gaol.git", branch = "redox" }
diff --git a/components/constellation/sandboxing.rs b/components/constellation/sandboxing.rs
index 02a6f4ed6f6..81dae2503e8 100644
index 02a6f4ed6f6..e88b3bd6ee1 100644
--- a/components/constellation/sandboxing.rs
+++ b/components/constellation/sandboxing.rs
@@ -11,6 +11,7 @@ use std::{env, process};
not(target_os = "windows"),
not(target_os = "ios"),
not(target_os = "android"),
+ not(target_os = "redox"),
not(target_env = "ohos"),
not(target_arch = "arm"),
not(target_arch = "aarch64")
@@ -99,7 +100,8 @@ pub fn content_process_sandbox_profile() -> Profile {
@@ -99,7 +99,7 @@ pub fn content_process_sandbox_profile() -> Profile {
not(target_os = "android"),
not(target_env = "ohos"),
not(target_arch = "arm"),
- not(target_arch = "aarch64")
+ not(target_arch = "aarch64"),
+ not(target_os = "redox"),
))]
pub fn content_process_sandbox_profile() -> Profile {
use std::path::PathBuf;
@@ -128,6 +130,7 @@ pub fn content_process_sandbox_profile() -> Profile {
target_os = "windows",
target_os = "ios",
target_os = "android",
+ target_os = "redox",
target_env = "ohos",
target_arch = "arm",
@@ -175,7 +178,8 @@ pub fn spawn_multiprocess(content: UnprivilegedContent) -> Result<Process, Error
@@ -175,7 +175,7 @@ pub fn spawn_multiprocess(content: UnprivilegedContent) -> Result<Process, Error
not(target_os = "android"),
not(target_env = "ohos"),
not(target_arch = "arm"),
- not(target_arch = "aarch64")
+ not(target_arch = "aarch64"),
+ not(target_os = "redox"),
))]
pub fn spawn_multiprocess(content: UnprivilegedContent) -> Result<Process, Error> {
use gaol::sandbox::{self, Sandbox, SandboxMethods};
@@ -243,6 +247,12 @@ pub fn spawn_multiprocess(_content: UnprivilegedContent) -> Result<Process, Erro
process::exit(1);
}
+#[cfg(target_os = "redox")]
+pub fn spawn_multiprocess(_content: UnprivilegedContent) -> Result<Process, Error> {
+ log::error!("Multiprocess is not supported on Redox.");
+ process::exit(1);
+}
+
fn setup_common<C: CommandMethods>(command: &mut C, token: String) {
C::arg(command, "--content-process");
C::arg(command, token);
diff --git a/components/fonts/Cargo.toml b/components/fonts/Cargo.toml
index e4c27ca6c6f..acf5335e922 100644
index a22f053f133..3ce1e22b76e 100644
--- a/components/fonts/Cargo.toml
+++ b/components/fonts/Cargo.toml
@@ -53,7 +53,7 @@ tracing = { workspace = true, optional = true }
unicode-properties = { workspace = true }
unicode-script = { workspace = true }
url = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
servo-tracing = { workspace = true }
[target.'cfg(target_os = "macos")'.dependencies]
@@ -62,11 +62,11 @@ core-foundation = "0.9"
@@ -61,11 +61,11 @@ core-foundation = "0.9"
core-graphics = "0.23"
core-text = "20.1"
@ -215,10 +144,10 @@ index e4c27ca6c6f..acf5335e922 100644
[target.'cfg(target_os = "android")'.dependencies]
diff --git a/components/fonts/font.rs b/components/fonts/font.rs
index 751aeecdba7..1b62cba5851 100644
index 12bde2769de..d76b3626ef5 100644
--- a/components/fonts/font.rs
+++ b/components/fonts/font.rs
@@ -947,7 +947,7 @@ pub struct FontBaseline {
@@ -912,7 +912,7 @@ pub struct FontBaseline {
/// let mapped_weight = apply_font_config_to_style_mapping(&mapping, weight as f64);
/// ```
#[cfg(all(
@ -228,10 +157,10 @@ index 751aeecdba7..1b62cba5851 100644
))]
pub(crate) fn map_platform_values_to_style_values(mapping: &[(f64, f64)], value: f64) -> f64 {
diff --git a/components/fonts/platform/freetype/mod.rs b/components/fonts/platform/freetype/mod.rs
index feea468008e..24f59a276d4 100644
index 3698087927a..42cf4b128ba 100644
--- a/components/fonts/platform/freetype/mod.rs
+++ b/components/fonts/platform/freetype/mod.rs
@@ -16,7 +16,7 @@ use webrender_api::NativeFontHandle;
@@ -5,7 +5,7 @@
pub mod font;
mod freetype_face;
@ -241,10 +170,10 @@ index feea468008e..24f59a276d4 100644
#[cfg(target_os = "android")]
diff --git a/components/fonts/platform/mod.rs b/components/fonts/platform/mod.rs
index 2c77d17d5d5..3138343feb2 100644
index c8e1dc14800..444364fe6d0 100644
--- a/components/fonts/platform/mod.rs
+++ b/components/fonts/platform/mod.rs
@@ -3,25 +3,25 @@
@@ -3,32 +3,32 @@
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
#[cfg(all(
@ -271,19 +200,18 @@ index 2c77d17d5d5..3138343feb2 100644
use crate::FallbackFontSelectionOptions;
-#[cfg(any(target_os = "linux", target_os = "android"))]
+#[cfg(any(target_os = "linux", target_os = "android", target_os="redox"))]
pub use crate::platform::freetype::{LocalFontIdentifier, font, font_list};
pub use crate::platform::freetype::{font, font_list};
#[cfg(target_os = "macos")]
pub use crate::platform::macos::{
@@ -30,7 +30,7 @@ pub use crate::platform::macos::{
pub use crate::platform::macos::{core_text_font_cache, font, font_list};
#[cfg(target_os = "windows")]
pub use crate::platform::windows::{font, font_list, font_list::LocalFontIdentifier};
pub use crate::platform::windows::{font, font_list};
-#[cfg(any(target_os = "linux", target_os = "android"))]
+#[cfg(any(target_os = "linux", target_os = "android", target_os="redox"))]
pub mod freetype;
#[cfg(target_os = "macos")]
@@ -47,7 +47,7 @@ mod windows {
@@ -45,7 +45,7 @@ mod windows {
}
#[cfg(all(
@ -292,120 +220,47 @@ index 2c77d17d5d5..3138343feb2 100644
not(target_os = "android"),
not(target_env = "ohos")
))]
diff --git a/components/geometry/Cargo.toml b/components/geometry/Cargo.toml
index 8634bc1d18c..a4115f6bf90 100644
--- a/components/geometry/Cargo.toml
+++ b/components/geometry/Cargo.toml
@@ -16,5 +16,5 @@ app_units = { workspace = true }
euclid = { workspace = true }
malloc_size_of = { workspace = true }
malloc_size_of_derive = { workspace = true }
-webrender = { workspace = true }
-webrender_api = { workspace = true }
+webrender = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
diff --git a/components/layout/Cargo.toml b/components/layout/Cargo.toml
index 139f2ce3dba..0196a3f15e0 100644
--- a/components/layout/Cargo.toml
+++ b/components/layout/Cargo.toml
@@ -62,7 +62,7 @@ tracing = { workspace = true, optional = true }
unicode-bidi = { workspace = true }
unicode-script = { workspace = true }
url = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
xi-unicode = { workspace = true }
servo-tracing = { workspace = true }
diff --git a/components/malloc_size_of/Cargo.toml b/components/malloc_size_of/Cargo.toml
index 6e5e45a4e35..8de32d2c798 100644
--- a/components/malloc_size_of/Cargo.toml
+++ b/components/malloc_size_of/Cargo.toml
@@ -39,5 +39,5 @@ unicode-script = { workspace = true }
url = { workspace = true }
urlpattern = { workspace = true }
uuid = { workspace = true }
-webrender_api = { workspace = true }
-wr_malloc_size_of = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
+wr_malloc_size_of = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods"}
diff --git a/components/media/Cargo.toml b/components/media/Cargo.toml
index cf51080ec7a..effa64922f8 100644
--- a/components/media/Cargo.toml
+++ b/components/media/Cargo.toml
@@ -20,4 +20,4 @@ log = { workspace = true }
serde = { workspace = true }
servo-media = { workspace = true }
servo_config = { path = "../config" }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
diff --git a/components/net/Cargo.toml b/components/net/Cargo.toml
index 7556a1bf81f..38252d09b54 100644
index 3d2eb3c7594..fb9db9ea4d4 100644
--- a/components/net/Cargo.toml
+++ b/components/net/Cargo.toml
@@ -77,8 +77,7 @@ tungstenite = { workspace = true }
url = { workspace = true }
@@ -76,7 +76,6 @@ url = { workspace = true }
uuid = { workspace = true }
webpki-roots = { workspace = true }
-webrender_api = { workspace = true }
webrender_api = { workspace = true }
-
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
[dev-dependencies]
embedder_traits = { workspace = true, features = ["baked-default-resources"] }
flate2 = "1"
diff --git a/components/pixels/Cargo.toml b/components/pixels/Cargo.toml
index 9ba20db80c0..fe33d20b88b 100644
index 9ba20db80c0..efd49741a7b 100644
--- a/components/pixels/Cargo.toml
+++ b/components/pixels/Cargo.toml
@@ -19,8 +19,7 @@ log = { workspace = true }
malloc_size_of = { workspace = true }
@@ -20,7 +20,6 @@ malloc_size_of = { workspace = true }
malloc_size_of_derive = { workspace = true }
serde = { workspace = true, features = ["derive"] }
-webrender_api = { workspace = true }
webrender_api = { workspace = true }
-
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
[dev-dependencies]
criterion = { version = "0.5", features = ["html_reports"] }
diff --git a/components/script/Cargo.toml b/components/script/Cargo.toml
index 51e81f6c085..fb85b1ea6b1 100644
--- a/components/script/Cargo.toml
+++ b/components/script/Cargo.toml
@@ -136,7 +136,7 @@ utf-8 = "0.7"
uuid = { workspace = true, features = ["serde"] }
webdriver = { workspace = true }
webgpu_traits = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
webxr-api = { workspace = true, features = ["ipc"], optional = true }
wgpu-core = { workspace = true }
wgpu-types = { workspace = true }
diff --git a/components/script/dom/bindings/buffer_source.rs b/components/script/dom/bindings/buffer_source.rs
index a271cad5643..551cf044eb2 100644
--- a/components/script/dom/bindings/buffer_source.rs
+++ b/components/script/dom/bindings/buffer_source.rs
@@ -887,7 +887,7 @@ impl DataBlock {
*cx,
range.end - range.start,
// SAFETY: This is safe because we have checked there is no overlapping view
- (*raw)[range.clone()].as_mut_ptr() as _,
+ (&mut (*raw))[range.clone()].as_mut_ptr() as _,
Some(free_func),
raw as _,
)
diff --git a/components/script/dom/navigatorinfo.rs b/components/script/dom/navigatorinfo.rs
index f3e6ddc109b..ee83d327df9 100644
index f3e6ddc109b..6b539f120c9 100644
--- a/components/script/dom/navigatorinfo.rs
+++ b/components/script/dom/navigatorinfo.rs
@@ -46,7 +46,7 @@ pub(crate) fn Platform() -> DOMString {
}
#[allow(non_snake_case)]
-#[cfg(any(target_os = "android", target_os = "linux"))]
+#[cfg(any(target_os = "android", target_os = "linux", target_os = "redox"))]
pub(crate) fn Platform() -> DOMString {
@@ -51,6 +51,12 @@ pub(crate) fn Platform() -> DOMString {
DOMString::from("Linux")
}
+#[allow(non_snake_case)]
+#[cfg(target_os = "redox")]
+pub(crate) fn Platform() -> DOMString {
+ DOMString::from("Redox")
+}
+
#[allow(non_snake_case)]
#[cfg(target_os = "macos")]
pub(crate) fn Platform() -> DOMString {
diff --git a/components/script_bindings/build.rs b/components/script_bindings/build.rs
index c28f900f6ce..2445c2ec9e4 100644
--- a/components/script_bindings/build.rs
@ -427,30 +282,22 @@ index c28f900f6ce..2445c2ec9e4 100644
+ panic!("Can't find python (tried `{command:?}`)!")
}
diff --git a/components/servo/Cargo.toml b/components/servo/Cargo.toml
index 2c1f75dca13..03bb5596dc1 100644
index e400c592bed..211813cb6c6 100644
--- a/components/servo/Cargo.toml
+++ b/components/servo/Cargo.toml
@@ -25,7 +25,7 @@ default = ["clipboard", "raqote"]
clipboard = ["dep:arboard"]
crown = ["script/crown"]
debugmozjs = ["script/debugmozjs"]
-background_hang_monitor = ["background_hang_monitor/sampler"]
+# background_hang_monitor = ["background_hang_monitor/sampler"]
jitspew = ["script/jitspew"]
js_backtrace = ["script/js_backtrace"]
media-gstreamer = ["servo-media-gstreamer", "gstreamer"]
@@ -117,8 +117,8 @@ surfman = { workspace = true }
tracing = { workspace = true, optional = true }
url = { workspace = true }
webgpu = { path = "../webgpu" }
-webrender = { workspace = true }
-webrender_api = { workspace = true }
+webrender = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods", features = ["capture"] }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
webxr-api = { workspace = true, optional = true }
@@ -13,8 +13,9 @@ path = "lib.rs"
crate-type = ["rlib"]
[target.'cfg(any(target_os = "android", target_env = "ohos"))'.dependencies]
@@ -128,7 +128,7 @@ webxr = { path = "../webxr", optional = true }
[features]
-default = ["clipboard", "vello_cpu"]
-background_hang_monitor = ["background_hang_monitor/sampler"]
+# clipboard cut off
+default = ["vello_cpu"]
+# background_hang_monitor = ["background_hang_monitor/sampler"]
bluetooth = [
"bluetooth_traits",
"dep:bluetooth",
@@ -131,7 +132,7 @@ webxr = { path = "../webxr", optional = true }
arboard = { workspace = true, optional = true }
webxr = { path = "../webxr", features = ["ipc", "glwindow", "headless"] }
@ -459,8 +306,17 @@ index 2c1f75dca13..03bb5596dc1 100644
gaol = "0.2.1"
[target.'cfg(target_os = "windows")'.dependencies]
@@ -141,7 +142,7 @@ webxr = { path = "../webxr", features = ["ipc", "glwindow", "headless", "openxr-
anyhow = "1.0.97"
http = { workspace = true }
libservo = { path = ".", features = ["tracing"] }
-rustls = { version = "0.23", default-features = false, features = ["aws-lc-rs"] }
+rustls = { workspace = true , default-features = false, features = ["aws-lc-rs"] }
tracing = { workspace = true }
winit = { workspace = true }
diff --git a/components/servo/lib.rs b/components/servo/lib.rs
index 37ce2019c7a..35e64e30c0d 100644
index 4b7dcdc5052..4174dfc4348 100644
--- a/components/servo/lib.rs
+++ b/components/servo/lib.rs
@@ -77,6 +77,7 @@ use fonts::SystemFontService;
@ -471,7 +327,7 @@ index 37ce2019c7a..35e64e30c0d 100644
))]
use gaol::sandbox::{ChildSandbox, ChildSandboxMethods};
pub use gleam::gl;
@@ -1305,6 +1306,7 @@ pub fn run_content_process(token: String) {
@@ -1335,6 +1336,7 @@ pub fn run_content_process(token: String) {
not(target_arch = "arm"),
not(target_arch = "aarch64"),
not(target_env = "ohos"),
@ -479,7 +335,7 @@ index 37ce2019c7a..35e64e30c0d 100644
))]
fn create_sandbox() {
ChildSandbox::new(content_process_sandbox_profile())
@@ -1319,6 +1321,7 @@ fn create_sandbox() {
@@ -1349,6 +1351,7 @@ fn create_sandbox() {
target_arch = "arm",
target_arch = "aarch64",
target_env = "ohos",
@ -487,52 +343,8 @@ index 37ce2019c7a..35e64e30c0d 100644
))]
fn create_sandbox() {
panic!("Sandboxing is not supported on Windows, iOS, ARM targets and android.");
diff --git a/components/shared/base/Cargo.toml b/components/shared/base/Cargo.toml
index b293fa0faf3..eead0fb12e3 100644
--- a/components/shared/base/Cargo.toml
+++ b/components/shared/base/Cargo.toml
@@ -21,8 +21,7 @@ malloc_size_of_derive = { workspace = true }
parking_lot = { workspace = true }
serde = { workspace = true }
time = { workspace = true }
-webrender_api = { workspace = true }
-
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies]
mach2 = { workspace = true }
diff --git a/components/shared/canvas/Cargo.toml b/components/shared/canvas/Cargo.toml
index 36711c0f83a..474c7722812 100644
--- a/components/shared/canvas/Cargo.toml
+++ b/components/shared/canvas/Cargo.toml
@@ -28,5 +28,5 @@ serde = { workspace = true }
servo_config = { path = "../../config" }
strum = { workspace = true }
stylo = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
webxr-api = { workspace = true, features = ["ipc"] }
diff --git a/components/shared/compositing/Cargo.toml b/components/shared/compositing/Cargo.toml
index 11ac6223766..98fe1417013 100644
--- a/components/shared/compositing/Cargo.toml
+++ b/components/shared/compositing/Cargo.toml
@@ -19,7 +19,7 @@ base = { workspace = true }
bincode = { workspace = true }
bitflags = { workspace = true }
crossbeam-channel = { workspace = true }
-dpi = { version = "0.1" }
+dpi = { workspace = true }
embedder_traits = { workspace = true }
euclid = { workspace = true }
gleam = { workspace = true }
@@ -38,4 +38,4 @@ strum_macros = { workspace = true }
stylo = { workspace = true }
stylo_traits = { workspace = true }
surfman = { workspace = true, features = ["sm-x11"] }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
diff --git a/components/shared/compositing/rendering_context.rs b/components/shared/compositing/rendering_context.rs
index 0596210430b..c85c84618ae 100644
index 515533db2e2..920a9a15cab 100644
--- a/components/shared/compositing/rendering_context.rs
+++ b/components/shared/compositing/rendering_context.rs
@@ -105,7 +105,12 @@ impl Drop for SurfmanRenderingContext {
@ -607,116 +419,45 @@ index 0596210430b..c85c84618ae 100644
Ok(Self {
size: Cell::new(size),
diff --git a/components/shared/constellation/Cargo.toml b/components/shared/constellation/Cargo.toml
index 7a1132ecd63..954c002d7f9 100644
--- a/components/shared/constellation/Cargo.toml
+++ b/components/shared/constellation/Cargo.toml
@@ -37,5 +37,5 @@ strum_macros = { workspace = true }
stylo_traits = { workspace = true }
uuid = { workspace = true }
webgpu_traits = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
wgpu-core = { workspace = true, optional = true }
diff --git a/components/shared/embedder/Cargo.toml b/components/shared/embedder/Cargo.toml
index 2ff427a4057..bc611d67da4 100644
--- a/components/shared/embedder/Cargo.toml
+++ b/components/shared/embedder/Cargo.toml
@@ -38,5 +38,5 @@ stylo = { workspace = true }
url = { workspace = true }
uuid = { workspace = true }
webdriver = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
servo_geometry = { path = "../../geometry" }
diff --git a/components/shared/layout/Cargo.toml b/components/shared/layout/Cargo.toml
index ae5d005d103..b24976e9da6 100644
--- a/components/shared/layout/Cargo.toml
+++ b/components/shared/layout/Cargo.toml
@@ -41,4 +41,4 @@ servo_arc = { workspace = true }
servo_url = { path = "../../url" }
stylo_traits = { workspace = true }
stylo = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
diff --git a/components/shared/fonts/font_identifier.rs b/components/shared/fonts/font_identifier.rs
index 8029252a20c..5d13b8010ee 100644
--- a/components/shared/fonts/font_identifier.rs
+++ b/components/shared/fonts/font_identifier.rs
@@ -22,7 +22,7 @@ impl FontIdentifier {
}
}
-#[cfg(any(target_os = "linux", target_os = "android"))]
+#[cfg(any(target_os = "linux", target_os = "android", target_os = "redox"))]
mod platform {
use std::fs::File;
use std::path::{Path, PathBuf};
diff --git a/components/shared/net/Cargo.toml b/components/shared/net/Cargo.toml
index 044b2658c4e..0a36fc291ca 100644
index f727fa008a5..90dbbceeb01 100644
--- a/components/shared/net/Cargo.toml
+++ b/components/shared/net/Cargo.toml
@@ -41,7 +41,6 @@ servo_rand = { path = "../../rand" }
servo_url = { path = "../../url" }
@@ -43,6 +43,5 @@ servo_url = { path = "../../url" }
url = { workspace = true }
uuid = { workspace = true }
-webrender_api = { workspace = true }
webrender_api = { workspace = true }
-
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
[dev-dependencies]
embedder_traits = { workspace = true, features = ["baked-default-resources"] }
diff --git a/components/shared/script/Cargo.toml b/components/shared/script/Cargo.toml
index 69438867cc0..e65648a60b5 100644
--- a/components/shared/script/Cargo.toml
+++ b/components/shared/script/Cargo.toml
@@ -41,5 +41,5 @@ strum_macros = { workspace = true }
stylo_atoms = { workspace = true }
stylo_traits = { workspace = true }
webgpu_traits = { workspace = true, optional = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
webxr-api = { workspace = true, features = ["ipc"] }
diff --git a/components/shared/webgpu/Cargo.toml b/components/shared/webgpu/Cargo.toml
index 5fb042dfb78..d41af6398d7 100644
--- a/components/shared/webgpu/Cargo.toml
+++ b/components/shared/webgpu/Cargo.toml
@@ -18,6 +18,6 @@ ipc-channel = { workspace = true }
malloc_size_of = { workspace = true }
pixels = { path = "../../pixels" }
serde = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
wgpu-core = { workspace = true, features = ["serde", "wgsl"] }
wgpu-types = { workspace = true }
diff --git a/components/webgl/Cargo.toml b/components/webgl/Cargo.toml
index 46fe7381959..017cf68eba7 100644
--- a/components/webgl/Cargo.toml
+++ b/components/webgl/Cargo.toml
@@ -30,7 +30,7 @@ itertools = { workspace = true }
log = { workspace = true }
pixels = { path = "../pixels" }
surfman = { workspace = true }
-webrender = { workspace = true }
-webrender_api = { workspace = true }
+webrender = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods", features = ["capture"] }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
webxr = { path = "../webxr", features = ["ipc"], optional = true }
webxr-api = { workspace = true, features = ["ipc"], optional = true }
diff --git a/components/webgpu/Cargo.toml b/components/webgpu/Cargo.toml
index a2119f4c83c..308ab3772fb 100644
--- a/components/webgpu/Cargo.toml
+++ b/components/webgpu/Cargo.toml
@@ -22,7 +22,7 @@ pixels = { path = "../pixels" }
serde = { workspace = true, features = ["serde_derive"] }
servo_config = { path = "../config" }
webgpu_traits = { workspace = true }
-webrender_api = { workspace = true }
+webrender_api = { git = "https://gitlab.redox-os.org/njskalski/webrender.git", branch = "redox_mods" }
wgpu-core = { workspace = true, features = ["serde", "wgsl"] }
wgpu-types = { workspace = true }
diff --git a/ports/servoshell/Cargo.toml b/ports/servoshell/Cargo.toml
index 06304184929..fb77b7099b0 100644
index c18a68219b8..54ea23823a7 100644
--- a/ports/servoshell/Cargo.toml
+++ b/ports/servoshell/Cargo.toml
@@ -37,7 +37,8 @@ ProductName = "Servo"
@@ -35,7 +35,8 @@ OriginalFilename = "servo.exe"
ProductName = "Servo"
[features]
crown = ["libservo/crown"]
debugmozjs = ["libservo/debugmozjs"]
-default = ["max_log_level", "webgpu", "webxr"]
+# cutting , "webxr" for redox
+default = ["max_log_level", "webgpu"]
crown = ["libservo/crown"]
debugmozjs = ["libservo/debugmozjs"]
jitspew = ["libservo/jitspew"]
js_backtrace = ["libservo/js_backtrace"]
max_log_level = ["log/release_max_level_info"]
@@ -68,7 +69,8 @@ image = { workspace = true }
@@ -65,7 +66,8 @@ image = { workspace = true }
ipc-channel = { workspace = true }
keyboard-types = { workspace = true }
libc = { workspace = true }
@ -726,7 +467,7 @@ index 06304184929..fb77b7099b0 100644
log = { workspace = true }
mime_guess = { workspace = true }
raw-window-handle = { workspace = true }
@@ -108,13 +110,32 @@ nix = { workspace = true, features = ["fs"] }
@@ -105,12 +107,31 @@ nix = { workspace = true, features = ["fs"] }
serde_json = { workspace = true }
surfman = { workspace = true, features = ["sm-angle-default"] }
@ -737,11 +478,11 @@ index 06304184929..fb77b7099b0 100644
+[target.'cfg(not(any(target_os = "android", target_env = "ohos", target_os = "redox")))'.dependencies]
+# accesskit_winit = "0.27"
dirs = "6.0"
-egui = { version = "0.32.1", features = ["accesskit"] }
+# egui = { version = "0.32.1", features = ["accesskit"] }
-egui = { version = "0.32.3", features = ["accesskit"] }
+# egui = { version = "0.32.3", features = ["accesskit"] }
+# egui-file-dialog = "0.11.0"
+# egui-winit = { version = "0.32.1", default-features = false, features = ["accesskit", "clipboard", "wayland"] }
+# egui_glow = { version = "0.32.1", features = ["winit"] }
+# egui-winit = { version = "0.32.3", default-features = false, features = ["accesskit", "clipboard", "wayland"] }
+# egui_glow = { version = "0.32.3", features = ["winit"] }
+gilrs = "0.11.0"
+# glow = "0.16.0"
+headers = { workspace = true }
@ -757,18 +498,16 @@ index 06304184929..fb77b7099b0 100644
+dirs = "6.0"
+egui = { version = "0.32.1", default-features = false }
egui-file-dialog = "0.11.0"
-egui-winit = { version = "0.32.1", default-features = false, features = ["accesskit", "clipboard", "wayland"] }
-egui_glow = { version = "0.32.1", features = ["winit"] }
+egui-winit = { version = "0.32.1", default-features = false, features = ["clipboard"] } #<-here
+egui_glow = { version = "0.32.1", default-features = false, features = [] }
-egui-winit = { version = "0.32.3", default-features = false, features = ["accesskit", "clipboard", "wayland"] }
+egui-winit = { version = "0.32.3", default-features = false, features = [] }
egui_glow = { version = "0.32.3", features = ["winit"] }
gilrs = "0.11.0"
glow = "0.16.0"
headers = { workspace = true }
glow = { workspace = true }
diff --git a/ports/servoshell/desktop/app.rs b/ports/servoshell/desktop/app.rs
index 08c943b2829..61d20de8bc3 100644
index a77d1060051..0691b3909cc 100644
--- a/ports/servoshell/desktop/app.rs
+++ b/ports/servoshell/desktop/app.rs
@@ -766,18 +766,18 @@ impl ApplicationHandler<AppEvent> for App {
@@ -699,18 +699,18 @@ impl ApplicationHandler<AppEvent> for App {
}
fn user_event(&mut self, event_loop: &ActiveEventLoop, event: AppEvent) {
@ -799,24 +538,11 @@ index 08c943b2829..61d20de8bc3 100644
let now = Instant::now();
let event = winit::event::Event::UserEvent(event);
diff --git a/ports/servoshell/desktop/egui_glue.rs b/ports/servoshell/desktop/egui_glue.rs
index 797ea3c5a91..d658563edc1 100644
--- a/ports/servoshell/desktop/egui_glue.rs
+++ b/ports/servoshell/desktop/egui_glue.rs
@@ -81,7 +81,7 @@ impl EguiGlow {
None,
);
let window = window.winit_window().unwrap();
- egui_winit.init_accesskit(event_loop, window, event_loop_proxy);
+ // egui_winit.init_accesskit(event_loop, window, event_loop_proxy);
window.set_visible(true);
Self {
egui_winit,
diff --git a/ports/servoshell/desktop/events_loop.rs b/ports/servoshell/desktop/events_loop.rs
index 4137001e4eb..b24757b9ad2 100644
index 8bb978c7bfb..94e946928b2 100644
--- a/ports/servoshell/desktop/events_loop.rs
+++ b/ports/servoshell/desktop/events_loop.rs
@@ -22,14 +22,14 @@ pub type EventLoopProxy = winit::event_loop::EventLoopProxy<AppEvent>;
@@ -20,14 +20,14 @@ pub type EventLoopProxy = winit::event_loop::EventLoopProxy<AppEvent>;
pub enum AppEvent {
/// Another process or thread has kicked the OS event loop with EventLoopWaker.
Waker,
@ -838,10 +564,10 @@ index 4137001e4eb..b24757b9ad2 100644
/// The real or fake OS event loop.
#[allow(dead_code)]
diff --git a/ports/servoshell/desktop/headed_window.rs b/ports/servoshell/desktop/headed_window.rs
index eef657f2062..7054a201792 100644
index bfe35feca4e..1e3220cad1f 100644
--- a/ports/servoshell/desktop/headed_window.rs
+++ b/ports/servoshell/desktop/headed_window.rs
@@ -144,10 +144,24 @@ impl Window {
@@ -153,10 +153,24 @@ impl Window {
let window_handle = winit_window
.window_handle()
.expect("could not get window handle from window");
@ -871,10 +597,10 @@ index eef657f2062..7054a201792 100644
// Setup for GL accelerated media handling. This is only active on certain Linux platforms
// and Windows.
diff --git a/ports/servoshell/desktop/headless_window.rs b/ports/servoshell/desktop/headless_window.rs
index e17e09a5218..24beb102919 100644
index 9910ed941d4..4937cee1120 100644
--- a/ports/servoshell/desktop/headless_window.rs
+++ b/ports/servoshell/desktop/headless_window.rs
@@ -179,7 +179,7 @@ impl WindowPortsMethods for Window {
@@ -168,7 +168,7 @@ impl WindowPortsMethods for Window {
// notification (such as from the display manager) that it has changed size, so we
// must notify the compositor here.
webview.move_resize(self.screen_size.to_f32().into());
@ -884,52 +610,39 @@ index e17e09a5218..24beb102919 100644
self.screen_size.height as u32,
));
diff --git a/ports/servoshell/desktop/minibrowser.rs b/ports/servoshell/desktop/minibrowser.rs
index 460e639c15b..3146f73d213 100644
index ba4127a241f..6026edc93a4 100644
--- a/ports/servoshell/desktop/minibrowser.rs
+++ b/ports/servoshell/desktop/minibrowser.rs
@@ -522,23 +522,23 @@ impl Minibrowser {
self.update_status_text(state)
@@ -107,9 +107,9 @@ impl Minibrowser {
);
let winit_window = window.winit_window().unwrap();
- context
- .egui_winit
- .init_accesskit(event_loop, winit_window, event_loop_proxy);
+ // context
+ // .egui_winit
+ // .init_accesskit(event_loop, winit_window, event_loop_proxy);
winit_window.set_visible(true);
context.egui_ctx.options_mut(|options| {
@@ -571,6 +571,7 @@ impl Minibrowser {
}
- /// Returns true if a redraw is required after handling the provided event.
- pub(crate) fn handle_accesskit_event(&mut self, event: &accesskit_winit::WindowEvent) -> bool {
- match event {
- accesskit_winit::WindowEvent::InitialTreeRequested => {
- self.context.egui_ctx.enable_accesskit();
- true
- },
- accesskit_winit::WindowEvent::ActionRequested(req) => {
- self.context
- .egui_winit
- .on_accesskit_action_request(req.clone());
- true
- },
- accesskit_winit::WindowEvent::AccessibilityDeactivated => {
- self.context.egui_ctx.disable_accesskit();
- false
- },
- }
- }
+ // Returns true if a redraw is required after handling the provided event.
+ // pub(crate) fn handle_accesskit_event(&mut self, event: &accesskit_winit::WindowEvent) -> bool {
+ // match event {
+ // accesskit_winit::WindowEvent::InitialTreeRequested => {
+ // self.context.egui_ctx.enable_accesskit();
+ // true
+ // },
+ // accesskit_winit::WindowEvent::ActionRequested(req) => {
+ // self.context
+ // .egui_winit
+ // .on_accesskit_action_request(req.clone());
+ // true
+ // },
+ // accesskit_winit::WindowEvent::AccessibilityDeactivated => {
+ // self.context.egui_ctx.disable_accesskit();
+ // false
+ // },
+ // }
+ // }
}
/// Returns true if a redraw is required after handling the provided event.
+ /*
pub(crate) fn handle_accesskit_event(&mut self, event: &accesskit_winit::WindowEvent) -> bool {
match event {
accesskit_winit::WindowEvent::InitialTreeRequested => {
@@ -589,7 +590,7 @@ impl Minibrowser {
},
}
}
-
+ */
pub(crate) fn set_zoom_factor(&self, factor: f32) {
self.context.egui_ctx.set_zoom_factor(factor);
}
diff --git a/ports/servoshell/desktop/tracing.rs b/ports/servoshell/desktop/tracing.rs
index b1f0b1d742e..046b016a2e2 100644
--- a/ports/servoshell/desktop/tracing.rs
@ -945,7 +658,7 @@ index b1f0b1d742e..046b016a2e2 100644
Self::AboutToWait => target!("AboutToWait"),
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
deleted file mode 100644
index 09d8bc760c6..00000000000
index 97ac30608ba..00000000000
--- a/rust-toolchain.toml
+++ /dev/null
@@ -1,17 +0,0 @@
@ -953,7 +666,7 @@ index 09d8bc760c6..00000000000
-# Be sure to update the 'rust-overlay' module's url in shell.nix to point to a
-# commit which supports the required rustc version and also update the version
-# in support/crown/rust-toolchain.toml when bumping this!
-channel = "1.85.0"
-channel = "1.89.0"
-
-components = [
- "clippy",

View File

@ -1,4 +1,3 @@
# TODO: Port sys/ioccom.h just like BSD?
[source]
tar = "https://gitlab.freedesktop.org/mesa/libdrm/-/archive/libdrm-2.4.125/libdrm-libdrm-2.4.125.tar.gz"
blake3 = "33e6448252639f4ff8a8cd30129b335c5d85356c1c93f8d77a79221003b14f66"