A redesign of popover was needed: it can no longer query the application state directly due to current state being its own actor, so instead the popover gets a dedicated copy of the relevant state. I'm not entirely happy with the extra complexity of having an extra actor just for 1 string, but at least the duplication between C and Rust and mutual calls have been reduced.
50 lines
771 B
Rust
50 lines
771 B
Rust
#[macro_use]
|
|
extern crate bitflags;
|
|
extern crate cairo;
|
|
extern crate cairo_sys;
|
|
extern crate gdk;
|
|
extern crate gio;
|
|
extern crate glib;
|
|
extern crate glib_sys;
|
|
extern crate gtk;
|
|
extern crate gtk_sys;
|
|
#[allow(unused_imports)]
|
|
#[macro_use] // only for tests
|
|
extern crate maplit;
|
|
extern crate serde;
|
|
extern crate xkbcommon;
|
|
extern crate zbus;
|
|
extern crate zvariant;
|
|
|
|
#[cfg(test)]
|
|
#[macro_use]
|
|
mod assert_matches;
|
|
#[macro_use]
|
|
mod logging;
|
|
|
|
mod action;
|
|
mod actors;
|
|
mod animation;
|
|
pub mod data;
|
|
mod debug;
|
|
mod drawing;
|
|
mod event_loop;
|
|
pub mod float_ord;
|
|
pub mod imservice;
|
|
mod keyboard;
|
|
mod layout;
|
|
mod locale;
|
|
mod main;
|
|
mod outputs;
|
|
mod panel;
|
|
mod popover;
|
|
mod receiver;
|
|
mod resources;
|
|
mod state;
|
|
mod style;
|
|
mod submission;
|
|
pub mod tests;
|
|
pub mod util;
|
|
mod vkeyboard;
|
|
mod xdg;
|