Skip to content

Commit 352e70b

Browse files
authored
m: Remove once_cell dependency
Removes the once_cell dependency, instead using std::sync::OnceLock and a minimal polyfill for std::sync::LazyLock, which may be stabilized soon (see rust-lang/rust#121377). This should not require a bump in MSRV, as OnceLock was stabilized in 1.70, which this crate is using.
1 parent 990bbf1 commit 352e70b

File tree

14 files changed

+57
-27
lines changed

14 files changed

+57
-27
lines changed

Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ bitflags = "2"
6767
cursor-icon = "1.1.0"
6868
log = "0.4"
6969
mint = { version = "0.5.6", optional = true }
70-
once_cell = "1.12"
7170
rwh_04 = { package = "raw-window-handle", version = "0.4", optional = true }
7271
rwh_05 = { package = "raw-window-handle", version = "0.5.2", features = ["std"], optional = true }
7372
rwh_06 = { package = "raw-window-handle", version = "0.6", features = ["std"], optional = true }

src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,7 @@ mod icon;
187187
pub mod keyboard;
188188
pub mod monitor;
189189
mod platform_impl;
190+
mod utils;
190191
pub mod window;
191192

192193
pub mod platform;

src/platform_impl/android/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ use std::{
1212
time::{Duration, Instant},
1313
};
1414

15+
use crate::utils::Lazy;
1516
use android_activity::input::{InputEvent, KeyAction, Keycode, MotionAction};
1617
use android_activity::{
1718
AndroidApp, AndroidAppWaker, ConfigurationRef, InputStatus, MainEvent, Rect,
1819
};
1920
use log::{debug, trace, warn};
20-
use once_cell::sync::Lazy;
2121

2222
use crate::{
2323
cursor::Cursor,

src/platform_impl/ios/app_state.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ use std::{
1010
time::Instant,
1111
};
1212

13+
use crate::utils::Lazy;
1314
use core_foundation::base::CFRelease;
1415
use core_foundation::date::CFAbsoluteTimeGetCurrent;
1516
use core_foundation::runloop::{
@@ -22,7 +23,6 @@ use icrate::Foundation::{
2223
use objc2::rc::Id;
2324
use objc2::runtime::AnyObject;
2425
use objc2::{msg_send, sel};
25-
use once_cell::sync::Lazy;
2626

2727
use super::uikit::UIView;
2828
use super::window::WinitUIWindow;

src/platform_impl/linux/common/xkb/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ use std::os::raw::c_char;
33
use std::ptr::{self, NonNull};
44
use std::sync::atomic::{AtomicBool, Ordering};
55

6+
use crate::utils::Lazy;
67
use log::warn;
7-
use once_cell::sync::Lazy;
88
use smol_str::SmolStr;
99
#[cfg(wayland_platform)]
1010
use std::os::unix::io::OwnedFd;

src/platform_impl/linux/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ use std::{collections::VecDeque, env, fmt};
1111
use std::{ffi::CStr, mem::MaybeUninit, os::raw::*, sync::Mutex};
1212

1313
#[cfg(x11_platform)]
14-
use once_cell::sync::Lazy;
14+
use crate::utils::Lazy;
1515
use smol_str::SmolStr;
1616

1717
#[cfg(x11_platform)]

src/platform_impl/linux/x11/ime/input_method.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use std::{
88
};
99

1010
use super::{super::atoms::*, ffi, util, XConnection, XError};
11-
use once_cell::sync::Lazy;
11+
use crate::utils::Lazy;
1212
use x11rb::protocol::xproto;
1313

1414
static GLOBAL_LOCK: Lazy<Mutex<()>> = Lazy::new(Default::default);

src/platform_impl/linux/x11/util/wm.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use std::sync::Mutex;
22

3-
use once_cell::sync::Lazy;
3+
use crate::utils::Lazy;
44

55
use super::*;
66

src/platform_impl/macos/cursor.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use crate::utils::Lazy;
12
use icrate::AppKit::{NSBitmapImageRep, NSCursor, NSDeviceRGBColorSpace, NSImage};
23
use icrate::Foundation::{
34
ns_string, NSData, NSDictionary, NSNumber, NSObject, NSObjectProtocol, NSPoint, NSSize,
@@ -6,7 +7,6 @@ use icrate::Foundation::{
67
use objc2::rc::Id;
78
use objc2::runtime::Sel;
89
use objc2::{msg_send_id, sel, ClassType};
9-
use once_cell::sync::Lazy;
1010
use std::ffi::c_uchar;
1111
use std::slice;
1212

src/platform_impl/windows/dark_mode.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/// which is inspired by the solution in https://github.com/ysc3839/win32-darkmode
33
use std::{ffi::c_void, ptr};
44

5-
use once_cell::sync::Lazy;
5+
use crate::utils::Lazy;
66
use windows_sys::{
77
core::PCSTR,
88
Win32::{

0 commit comments

Comments
 (0)