phosphor-snap-engine
Manual zone-based placement engine.
Implements IPlacementEngine for screens running a user-drawn zone layout. Owns auto-snap on window open, directional zone navigation, floating, rotation, and resnap-on-layout-change. Owns SnapState (per-screen IPlacementState for zone assignments + pre-tile geometry) and SnapNavigationTargetResolver (pure compute for keyboard-navigation target geometries). Reads from LayoutRegistry, ZoneDetector, and the shared engine services; reaches into compositor-shadow state through narrow typed interfaces (INavigationStateProvider, IZoneAdjacencyResolver) the daemon's adaptors implement.
Key types
SnapEngineSnapStateISnapSettingsINavigationStateProviderIZoneAdjacencyResolverSnapNavigationTargetResolverDependencies
QtCoreQtGuiphosphor-enginephosphor-zonesphosphor-protocolphosphor-identityphosphor-screens
See also
References
- Full API reference → Doxygen-generated page for
PhosphorSnapEngine. - Namespace index Every symbol under
PhosphorSnapEngine::.