cbf-compositor 0.1.0-alpha.8

Scene-based browser surface compositor for CBF applications.
Documentation
use cbf::data::ime::ImeBoundsUpdate;
use cbf_chrome::platform::macos::bindings::CALayerHost;
use objc2::rc::Retained;
use objc2_core_foundation::CGRect;

use crate::{
    model::{HitTestPolicy, HitTestRegionSnapshot, SurfaceTarget},
    platform::host::PlatformSurfaceHandle,
};

#[derive(Clone)]
pub(crate) struct SurfaceSlot {
    pub(crate) target: SurfaceTarget,
    pub(crate) layer: Retained<CALayerHost>,
    pub(crate) bounds: CGRect,
    pub(crate) visible: bool,
    pub(crate) hit_test: HitTestPolicy,
    pub(crate) hit_test_snapshot: Option<HitTestRegionSnapshot>,
    pub(crate) surface: Option<PlatformSurfaceHandle>,
    pub(crate) ime_bounds: Option<ImeBoundsUpdate>,
}