On Wayland, add support for fractional scaling
This adds support for the fractional scaling on Wayland via the wp-fractional-scale protocol. Co-authored-by: Julian Orth <ju.orth@gmail.com>
This commit is contained in:
parent
1886949efe
commit
de782504ab
14 changed files with 361 additions and 66 deletions
41
build.rs
41
build.rs
|
|
@ -1,8 +1,34 @@
|
|||
use cfg_aliases::cfg_aliases;
|
||||
|
||||
#[cfg(all(
|
||||
any(
|
||||
target_os = "linux",
|
||||
target_os = "dragonfly",
|
||||
target_os = "freebsd",
|
||||
target_os = "openbsd",
|
||||
target_os = "netbsd",
|
||||
),
|
||||
feature = "wayland",
|
||||
))]
|
||||
mod wayland {
|
||||
use std::env;
|
||||
use std::path::PathBuf;
|
||||
use wayland_scanner::Side;
|
||||
|
||||
pub fn main() {
|
||||
let mut path = PathBuf::from(env::var("OUT_DIR").unwrap());
|
||||
path.push("fractional_scale_v1.rs");
|
||||
wayland_scanner::generate_code(
|
||||
"wayland_protocols/fractional-scale-v1.xml",
|
||||
&path,
|
||||
Side::Client,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
// The script doesn't depend on our code
|
||||
println!("cargo:rerun-if-changed=build.rs");
|
||||
println!("cargo:rerun-if-changed=build.rs:wayland_protocols");
|
||||
// Setup cfg aliases
|
||||
cfg_aliases! {
|
||||
// Systems.
|
||||
|
|
@ -20,4 +46,17 @@ fn main() {
|
|||
wayland_platform: { all(feature = "wayland", free_unix, not(wasm), not(redox)) },
|
||||
orbital_platform: { redox },
|
||||
}
|
||||
|
||||
// XXX aliases are not available for the build script itself.
|
||||
#[cfg(all(
|
||||
any(
|
||||
target_os = "linux",
|
||||
target_os = "dragonfly",
|
||||
target_os = "freebsd",
|
||||
target_os = "openbsd",
|
||||
target_os = "netbsd",
|
||||
),
|
||||
feature = "wayland",
|
||||
))]
|
||||
wayland::main();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue