Incular logoIncular
API ReferencePlatform & Testing

Capabilities

Tri-state support queries plus content-sensitivity backends.

CapabilitySupport: Unknown / Supported / Unsupported (is_supported(), from_supported(bool)). Capability snapshots (ApplicationServiceCapabilities, WindowControlCapabilities, DisplayPlacementCapabilities, NativeMenuCapabilities, TransientSurfaceCapabilities, AdvancedInputCapabilities, DataTransferCapabilities) expose per-facility fields of this type.

Content sensitivity

use incular::prelude::*;

fn main() {
    println!("supported: {}", CapabilitySupport::Supported.is_supported());
    println!(
        "from bool: {}",
        CapabilitySupport::from_supported(false).is_supported()
    );
    let mut backend = MemoryContentSensitivityBackend::supported();
    backend.apply(ContentSensitivity::Sensitive);
    println!("outcomes: {}", backend.outcomes().len());
    println!("current sensitive: {}", backend.current() == ContentSensitivity::Sensitive);
}

ContentSensitivityOutcome: Applied { sensitivity } / NoOp { requested, reason } (Unsupported / Unchanged). ContentSensitivityBackend trait: capability() + apply(). ContentSensitivityCapability: whether the backend can enforce; ContentSensitivityNoOpReason: Unsupported / Unchanged.

Related: SensitiveContent, Desktop.

On this page