use crate::input::core::coordinator::{InputCoordinator, LayerId};
use crate::input::core::sense::Sense;
use crate::input::core::widget_kind::WidgetKind;
use crate::types::{Rect, WidgetId};
pub fn register_chrome(
coord: &mut InputCoordinator,
id: impl Into<WidgetId>,
rect: Rect,
layer: &LayerId,
) -> WidgetId {
coord.register_composite(id, WidgetKind::Chrome, rect, Sense::NONE, layer)
}
pub fn register_chrome_button(
coord: &mut InputCoordinator,
chrome_id: &WidgetId,
btn_id: impl Into<WidgetId>,
rect: Rect,
) {
coord.register_child(
chrome_id,
btn_id,
WidgetKind::Button,
rect,
Sense::CLICK | Sense::HOVER,
);
}
pub fn register_chrome_drag_region(
coord: &mut InputCoordinator,
chrome_id: &WidgetId,
drag_id: impl Into<WidgetId>,
rect: Rect,
) {
coord.register_child(
chrome_id,
drag_id,
WidgetKind::Custom,
rect,
Sense::DRAG,
);
}