jay-compositor 1.15.0

The Jay compositor
use crate::ifs::ipc::DynDataSource;
use crate::ifs::ipc::IpcLocation;
use std::rc::Rc;

pub mod ext_data_control_device_v1;
pub mod ext_data_control_manager_v1;
pub mod ext_data_control_offer_v1;
pub mod ext_data_control_source_v1;
mod private;
pub mod zwlr_data_control_device_v1;
pub mod zwlr_data_control_manager_v1;
pub mod zwlr_data_control_offer_v1;
pub mod zwlr_data_control_source_v1;

linear_ids!(DataControlDeviceIds, DataControlDeviceId, u64);

pub trait DynDataControlDevice {
    fn id(&self) -> DataControlDeviceId;

    fn handle_new_source(
        self: Rc<Self>,
        location: IpcLocation,
        source: Option<Rc<dyn DynDataSource>>,
    );
}