mirror of
https://github.com/niri-wm/niri.git
synced 2026-06-23 02:05:33 +07:00
Add a calloop futures executor
This commit is contained in:
Generated
+3
@@ -474,7 +474,9 @@ version = "0.12.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7b50b5a44d59a98c55a9eeb518f39bf7499ba19fd98ee7d22618687f3f10adbf"
|
checksum = "7b50b5a44d59a98c55a9eeb518f39bf7499ba19fd98ee7d22618687f3f10adbf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"async-task",
|
||||||
"bitflags 2.4.1",
|
"bitflags 2.4.1",
|
||||||
|
"futures-io",
|
||||||
"log",
|
"log",
|
||||||
"polling 3.3.1",
|
"polling 3.3.1",
|
||||||
"rustix 0.38.28",
|
"rustix 0.38.28",
|
||||||
@@ -1700,6 +1702,7 @@ dependencies = [
|
|||||||
"async-channel",
|
"async-channel",
|
||||||
"async-io 1.13.0",
|
"async-io 1.13.0",
|
||||||
"bitflags 2.4.1",
|
"bitflags 2.4.1",
|
||||||
|
"calloop",
|
||||||
"clap",
|
"clap",
|
||||||
"directories",
|
"directories",
|
||||||
"git-version",
|
"git-version",
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ arrayvec = "0.7.4"
|
|||||||
async-channel = { version = "2.1.1", optional = true }
|
async-channel = { version = "2.1.1", optional = true }
|
||||||
async-io = { version = "1.13.0", optional = true }
|
async-io = { version = "1.13.0", optional = true }
|
||||||
bitflags = "2.4.1"
|
bitflags = "2.4.1"
|
||||||
|
calloop = { version = "0.12.3", features = ["executor", "futures-io"] }
|
||||||
clap = { version = "4.4.13", features = ["derive"] }
|
clap = { version = "4.4.13", features = ["derive"] }
|
||||||
directories = "5.0.1"
|
directories = "5.0.1"
|
||||||
git-version = "0.3.9"
|
git-version = "0.3.9"
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ use std::{env, mem, thread};
|
|||||||
|
|
||||||
use _server_decoration::server::org_kde_kwin_server_decoration_manager::Mode as KdeDecorationsMode;
|
use _server_decoration::server::org_kde_kwin_server_decoration_manager::Mode as KdeDecorationsMode;
|
||||||
use anyhow::Context;
|
use anyhow::Context;
|
||||||
|
use calloop::futures::Scheduler;
|
||||||
use niri_config::{Config, TrackLayout};
|
use niri_config::{Config, TrackLayout};
|
||||||
use smithay::backend::allocator::Fourcc;
|
use smithay::backend::allocator::Fourcc;
|
||||||
use smithay::backend::renderer::element::solid::{SolidColorBuffer, SolidColorRenderElement};
|
use smithay::backend::renderer::element::solid::{SolidColorBuffer, SolidColorRenderElement};
|
||||||
@@ -112,6 +113,7 @@ pub struct Niri {
|
|||||||
pub config: Rc<RefCell<Config>>,
|
pub config: Rc<RefCell<Config>>,
|
||||||
|
|
||||||
pub event_loop: LoopHandle<'static, State>,
|
pub event_loop: LoopHandle<'static, State>,
|
||||||
|
pub scheduler: Scheduler<()>,
|
||||||
pub stop_signal: LoopSignal,
|
pub stop_signal: LoopSignal,
|
||||||
pub display_handle: DisplayHandle,
|
pub display_handle: DisplayHandle,
|
||||||
pub socket_name: OsString,
|
pub socket_name: OsString,
|
||||||
@@ -742,6 +744,9 @@ impl Niri {
|
|||||||
) -> Self {
|
) -> Self {
|
||||||
let _span = tracy_client::span!("Niri::new");
|
let _span = tracy_client::span!("Niri::new");
|
||||||
|
|
||||||
|
let (executor, scheduler) = calloop::futures::executor().unwrap();
|
||||||
|
event_loop.insert_source(executor, |_, _, _| ()).unwrap();
|
||||||
|
|
||||||
let display_handle = display.handle();
|
let display_handle = display.handle();
|
||||||
let config_ = config.borrow();
|
let config_ = config.borrow();
|
||||||
|
|
||||||
@@ -884,6 +889,7 @@ impl Niri {
|
|||||||
config,
|
config,
|
||||||
|
|
||||||
event_loop,
|
event_loop,
|
||||||
|
scheduler,
|
||||||
stop_signal,
|
stop_signal,
|
||||||
socket_name,
|
socket_name,
|
||||||
display_handle,
|
display_handle,
|
||||||
|
|||||||
Reference in New Issue
Block a user