mirror of
https://github.com/YaLTeR/niri.git
synced 2025-10-06 00:23:14 +02:00
Add a calloop futures executor
This commit is contained in:
3
Cargo.lock
generated
3
Cargo.lock
generated
@@ -474,7 +474,9 @@ version = "0.12.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7b50b5a44d59a98c55a9eeb518f39bf7499ba19fd98ee7d22618687f3f10adbf"
|
||||
dependencies = [
|
||||
"async-task",
|
||||
"bitflags 2.4.1",
|
||||
"futures-io",
|
||||
"log",
|
||||
"polling 3.3.1",
|
||||
"rustix 0.38.28",
|
||||
@@ -1700,6 +1702,7 @@ dependencies = [
|
||||
"async-channel",
|
||||
"async-io 1.13.0",
|
||||
"bitflags 2.4.1",
|
||||
"calloop",
|
||||
"clap",
|
||||
"directories",
|
||||
"git-version",
|
||||
|
@@ -39,6 +39,7 @@ arrayvec = "0.7.4"
|
||||
async-channel = { version = "2.1.1", optional = true }
|
||||
async-io = { version = "1.13.0", optional = true }
|
||||
bitflags = "2.4.1"
|
||||
calloop = { version = "0.12.3", features = ["executor", "futures-io"] }
|
||||
clap = { version = "4.4.13", features = ["derive"] }
|
||||
directories = "5.0.1"
|
||||
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 anyhow::Context;
|
||||
use calloop::futures::Scheduler;
|
||||
use niri_config::{Config, TrackLayout};
|
||||
use smithay::backend::allocator::Fourcc;
|
||||
use smithay::backend::renderer::element::solid::{SolidColorBuffer, SolidColorRenderElement};
|
||||
@@ -112,6 +113,7 @@ pub struct Niri {
|
||||
pub config: Rc<RefCell<Config>>,
|
||||
|
||||
pub event_loop: LoopHandle<'static, State>,
|
||||
pub scheduler: Scheduler<()>,
|
||||
pub stop_signal: LoopSignal,
|
||||
pub display_handle: DisplayHandle,
|
||||
pub socket_name: OsString,
|
||||
@@ -742,6 +744,9 @@ impl Niri {
|
||||
) -> Self {
|
||||
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 config_ = config.borrow();
|
||||
|
||||
@@ -884,6 +889,7 @@ impl Niri {
|
||||
config,
|
||||
|
||||
event_loop,
|
||||
scheduler,
|
||||
stop_signal,
|
||||
socket_name,
|
||||
display_handle,
|
||||
|
Reference in New Issue
Block a user