INNER CODE UNIT · Rust

ResponseFunction

versotile-org/verso · verso/src/lib.rs:23

type ResponseFunction = Box<dyn FnOnce(Option<http::Response<Vec<u8>>>) + Send>;
type Listener<T> = Arc<Mutex<Option<T>>>;
type ResponseListener<T> = Arc<Mutex<HashMap<uuid::Uuid, T>>>;

#[derive(Default)]
struct EventListeners {
    on_close_requested: Listener<Box<dyn Fn() + Send + 'static>>,
    on_navigation_starting: Listener<Box<dyn Fn(url::Url) -> bool + Send + 'static>>,
    on_web_resource_requested:
        Listener<Box<dyn Fn(http::Request<Vec<u8>>, ResponseFunction) + Send + 'static>>,
    size_response: ResponseListener<MpscSender<PhysicalSize<u32>>>,
    position_response: ResponseListener<MpscSender<Option<PhysicalPosition<i32>>>>,
    maximized_response: ResponseListener<MpscSender<bool>>,
    minimized_response: ResponseListener<MpscSender<bool>>,
    fullscreen_response: ResponseListener<MpscSender<bool>>,
    visible_response: ResponseListener<MpscSender<bool>>,
    scale_factor_response: ResponseListener<MpscSender<f64>>,
    get_url_response: ResponseListener<MpscSender<url::Url>>,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…