mirror of
https://github.com/alacritty/alacritty.git
synced 2024-11-25 14:05:41 -05:00
Replace need for drop_types_in_const with lazy_static
This commit is contained in:
parent
800b65622c
commit
ee5a9f1338
4 changed files with 13 additions and 10 deletions
1
Cargo.lock
generated
1
Cargo.lock
generated
|
@ -10,6 +10,7 @@ dependencies = [
|
||||||
"font 0.1.0",
|
"font 0.1.0",
|
||||||
"gl_generator 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
"gl_generator 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"glutin 0.6.1 (git+https://github.com/jwilm/glutin?rev=af7fe340bd4a2af53ea521defcb4f377cdc588cf)",
|
"glutin 0.6.1 (git+https://github.com/jwilm/glutin?rev=af7fe340bd4a2af53ea521defcb4f377cdc588cf)",
|
||||||
|
"lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)",
|
"libc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"mio 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
"mio 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"notify 2.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
"notify 2.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
|
|
@ -17,6 +17,7 @@ notify = "2.6"
|
||||||
bitflags = "*"
|
bitflags = "*"
|
||||||
font = { path = "./font" }
|
font = { path = "./font" }
|
||||||
errno = "0.1.6"
|
errno = "0.1.6"
|
||||||
|
lazy_static = "0.2.2"
|
||||||
parking_lot = { version = "0.3.1", features = ["nightly"] }
|
parking_lot = { version = "0.3.1", features = ["nightly"] }
|
||||||
serde = "0.8"
|
serde = "0.8"
|
||||||
serde_yaml = "0.5"
|
serde_yaml = "0.5"
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
#![feature(range_contains)]
|
#![feature(range_contains)]
|
||||||
#![feature(inclusive_range_syntax)]
|
#![feature(inclusive_range_syntax)]
|
||||||
#![feature(inclusive_range)]
|
#![feature(inclusive_range)]
|
||||||
#![feature(drop_types_in_const)]
|
|
||||||
#![cfg_attr(feature = "clippy", feature(plugin))]
|
#![cfg_attr(feature = "clippy", feature(plugin))]
|
||||||
#![cfg_attr(feature = "clippy", plugin(clippy))]
|
#![cfg_attr(feature = "clippy", plugin(clippy))]
|
||||||
#![cfg_attr(feature = "clippy", deny(clippy))]
|
#![cfg_attr(feature = "clippy", deny(clippy))]
|
||||||
|
@ -36,6 +35,8 @@ extern crate copypasta;
|
||||||
extern crate errno;
|
extern crate errno;
|
||||||
extern crate font;
|
extern crate font;
|
||||||
extern crate glutin;
|
extern crate glutin;
|
||||||
|
#[macro_use]
|
||||||
|
extern crate lazy_static;
|
||||||
extern crate libc;
|
extern crate libc;
|
||||||
extern crate mio;
|
extern crate mio;
|
||||||
extern crate notify;
|
extern crate notify;
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
use std::convert::From;
|
use std::convert::From;
|
||||||
use std::fmt::{self, Display};
|
use std::fmt::{self, Display};
|
||||||
use std::ops::Deref;
|
use std::ops::Deref;
|
||||||
|
use std::sync::Mutex;
|
||||||
|
|
||||||
use gl;
|
use gl;
|
||||||
use glutin;
|
use glutin;
|
||||||
|
@ -26,13 +27,13 @@ use glutin;
|
||||||
///
|
///
|
||||||
/// This will fail horribly if more than one window is created. Don't do that :)
|
/// This will fail horribly if more than one window is created. Don't do that :)
|
||||||
fn window_resize_handler(width: u32, height: u32) {
|
fn window_resize_handler(width: u32, height: u32) {
|
||||||
unsafe {
|
RESIZE_CALLBACK.lock().unwrap().as_ref().map(|func| (*func)(width, height));
|
||||||
RESIZE_CALLBACK.as_ref().map(|func| func(width, height));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// The resize callback invoked by `window_resize_handler`
|
lazy_static! {
|
||||||
static mut RESIZE_CALLBACK: Option<Box<Fn(u32, u32)>> = None;
|
/// The resize callback invoked by `window_resize_handler`
|
||||||
|
static ref RESIZE_CALLBACK: Mutex<Option<Box<Fn(u32, u32) + 'static + Send>>> = Mutex::new(None);
|
||||||
|
}
|
||||||
|
|
||||||
/// Window errors
|
/// Window errors
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
|
@ -238,10 +239,9 @@ impl Window {
|
||||||
///
|
///
|
||||||
/// This method takes self mutably to ensure there's no race condition
|
/// This method takes self mutably to ensure there's no race condition
|
||||||
/// setting the callback.
|
/// setting the callback.
|
||||||
pub fn set_resize_callback<F: Fn(u32, u32) + 'static>(&mut self, func: F) {
|
pub fn set_resize_callback<F: Fn(u32, u32) + 'static + Send>(&mut self, func: F) {
|
||||||
unsafe {
|
let mut guard = RESIZE_CALLBACK.lock().unwrap();
|
||||||
RESIZE_CALLBACK = Some(Box::new(func));
|
*guard = Some(Box::new(func));
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn inner_size_pixels(&self) -> Option<Size<Pixels<u32>>> {
|
pub fn inner_size_pixels(&self) -> Option<Size<Pixels<u32>>> {
|
||||||
|
|
Loading…
Reference in a new issue