Expand description
ยงkael
The GPU-accelerated application framework at the center of Kael. It is designed for substantial desktop and browser products that need to stay responsive while their data, surfaces, background work, and platform integrations grow.
kael provides the application runtime and low-level UI primitives: retained
rendering, layout, text, elements, state, windows, input, accessibility,
animation, async work, and native platform services. It does not depend on the
optional kael_ui component library, so applications can build and brand their
own component system directly on these primitives.
[dependencies]
kael = "0.4"WebView support is opt-in, so ordinary native applications do not pull Wry, GTK, or WebKit. Enable it only when the application embeds web content:
[dependencies]
kael = { version = "0.4", features = ["webview"] }use kael::prelude::*;
use kael::{Application, Window, WindowOptions, div};
struct Hello;
impl Render for Hello {
fn render(&mut self, _: &mut Window, _: &mut Context<Self>) -> impl IntoElement {
div().size_full().flex().items_center().justify_center().child("Hello, Kael!")
}
}
fn main() -> Result<(), Box<dyn std::error::Error>> {
Application::try_new()?.run(|cx| {
if let Err(error) = cx.open_window(WindowOptions::default(), |_, cx| {
cx.new(|_| Hello)
}) {
eprintln!("failed to open the application window: {error}");
cx.quit();
}
});
Ok(())
}Kael targets macOS (Metal), Windows (DirectX 11), Linux X11/Wayland (Vulkan
through Blade), and browsers (WebAssembly/WebGL2). OS and browser integrations
differ by host; use
CapabilityReport::current() when a product requires a specific service.
ยงStart here
ยงOptional features
| Feature | Purpose |
|---|---|
browser | WebAssembly runtime, WebGL2 Scene renderer, and sandboxed iframe WebView islands |
portable-services | Build-portable product batteries for one-source native/browser applications; consult capability reports for sandboxed runtime operations |
browser-full | browser plus the complete portable-services consumer graph used by release CI |
game-input | Frame-synchronized native/browser controllers plus portable browser/native pointer lock and relative motion |
http-client | Bundled Reqwest transport; the transport trait remains available without it |
auto-update | Signed feeds, verified downloads, and platform installers |
lottie | Native Lottie and dotLottie playback |
webview | Explicit hosted web surfaces |
media | Native media playback integration |
storage, document, audio, pdf | Product data and content services |
icons | Compact embedded SVG catalog with application-asset overrides |
diagnostics, notifications-full, share | Optional diagnostics plus portable native/browser notification and sharing batteries |
screen-capture | Screen-capture backend support |
image-avif, image-exr | Opt-in AVIF (libdav1d) and OpenEXR decoding |
agent-tools | Structured capability-planning metadata |
runtime_shaders | Runtime shader compilation for development |
The minimum supported Rust version is 1.97.1. The crate uses Rust 2024.
The optional agent-tools feature is disabled by default and is not required to
build applications.
For a suite-class application, keep the Rust source identical and select the backend in the manifest:
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
kael = { version = "0.4", features = ["portable-services"] }
[target.'cfg(target_arch = "wasm32")'.dependencies]
kael = { version = "0.4", default-features = false, features = ["browser-full"] }This guarantees that the same optional API graph compiles on both targets. It
does not weaken browser security boundaries: use CapabilityReport and the
operation-level WebView, notification, sharing, capture, and update reports to
select the appropriate hosted fallback.
Kael began as a fork of GPUI, created by Zed Industries. It is an independent project and is not affiliated with or endorsed by Zed Industries.
Licensed under Apache-2.0. See LICENSE-APACHE in this package.
Re-exportsยง
pub use command_registry::CommandDescriptor;pub use command_registry::CommandIpcHandoff;pub use command_registry::CommandIpcHandoffBuilder;pub use command_registry::CommandIpcNextAction;pub use command_registry::CommandIpcRequest;pub use command_registry::CommandPalette;pub use command_registry::PaletteCommandId;pub use crate::animation::Animation;pub use crate::animation::AnimationSequence;pub use crate::animation::Easing;pub use crate::animation::Keyframes;pub use crate::animation::Repeat;pub use crate::animation::StyledKeyframe;pub use crate::animation::keyframes;pub use http_client;pub use kael_net as net;pub use accessibility::*;pub use app_runtime::*;pub use background_jobs::*;pub use benchmark::*;pub use computed::*;pub use dev_tools::*;pub use crate::animation::easing::*;pub use extension_host::*;pub use extension_rpc::*;pub use game_input::*;pub use gesture::*;pub use gpu::*;pub use graphics_capabilities::*;pub use headless_render::*;pub use ipc_transport::*;pub use media_capture::*;pub use panels::*;pub use platform_caps::*;pub use plugin::*;pub use portable_scene::*;pub use process_model::*;pub use runtime::*;pub use scene_graph::*;pub use security::*;pub use split_pane::*;pub use status_bar::*;pub use supervisor::*;pub use text_engine::*;pub use theme::*;pub use video_color::*;pub use virtual_data::*;pub use worker_api::*;pub use workspace::*;
Modulesยง
- _ownership_
and_ data_ flow - In GPUI, every model or view in the application is actually owned by a single top-level object called the
App. When a new entity or view is created (referred to collectively as entities), the application is given ownership of their state to enable their participation in a variety of app services and interaction with other entities. - accessibility
- Shared accessibility model and semantic role system for GPUI.
- animation
- Explicit animation primitives and keyframe builders.
- app_
runtime - Higher-level app-runtime primitives for common desktop product patterns.
- background_
jobs - Background job orchestration with worker-pool integration.
- benchmark
- Product-level benchmark workloads and harness for GPUI.
- colors
- The default colors used by GPUI.
- command_
registry - Command registry for registering named commands invokable from menus, keybindings, and a command palette.
- computed
- Memoized values with automatic entity-dependency tracking.
- dev_
tools - Developer tools for observability, diagnostics, and runtime inspection.
- extension_
host - Extension host runtime managing the full lifecycle of extensions.
- extension_
rpc - Extension RPC contract and typed transport wrappers.
- game_
input - Portable pointer-lock and game-controller input. Portable, frame-synchronized input for games and other interactive canvases.
- gesture
- Gesture recognizers and higher-level pointer interaction types.
- golden
- GPU memory budgeting and eviction. Golden-image pixel-diff comparison for the headless render pipeline. Golden-image pixel-diff comparison for the headless render pipeline (P0-J).
- gpu
- GPU memory budgeting and eviction.
- graphics_
capabilities - Capability reporting for native graphics and visual escape hatches. Capability reporting for Kaelโs graphics escape hatches.
- headless_
render - Headless off-screen rendering for benchmarks and golden-image tests. Headless off-screen rendering for benchmarks and golden-image tests.
- inspector_
reflection - Provides definitions used by
#[derive_inspector_reflection]. - interpolate
- The canonical interpolation vocabulary shared across the framework. The canonical interpolation vocabulary shared across the framework.
- ipc_
transport - Cross-platform IPC transport for the GPUI process-isolation model.
- media_
capture - Cross-platform media and capture infrastructure for GPUI.
- panels
- Pre-built panel implementations for common dock areas.
- platform_
caps - Platform capability detection and feature-level support reporting.
- plugin
- Plugin and extension architecture for GPUI.
- portable_
scene - Bounded retained 2D commands shared by native and browser renderers. Bounded retained 2D drawing commands shared by native and browser renderers.
- prelude
- The GPUI prelude is a collection of traits and types that are widely used throughout the library. It is recommended to import this prelude into your application to avoid having to import each trait individually.
- process_
model - Process-isolation model and typed IPC for GPUI.
- runtime
- Runtime worker support. Runtime worker support for background task execution.
- scene_
graph - Scene graph primitives for canvas and creative applications. Scene graph primitives for canvas and creative applications.
- scroll_
bar - Scroll bar primitives bound to scroll handles.
- scroll_
elasticity - Rubber-band scroll elasticity: the canonical overscroll feel shared across the framework.
- security
- Security boundary: capability model and permission broker for GPUI.
- single_
instance - Cross-platform single instance enforcement using Unix domain sockets and Windows named mutexes.
- split_
pane - Split-pane and tab model for IDE-style workspace layouts.
- status_
bar - Status bar for displaying contextual information in large applications.
- styled_
reflection - Implements function reflection
- supervisor
- Process supervisor for the GPUI process-isolation model.
- tab_
manager - Cross-platform window tab manager for Windows and Linux backends.
- text_
engine - Text and document editing engine for IDEs, notes apps, and chat composers.
- theme
- Application themes with JSON or TOML loading and file hot-reload support.
- video_
color - Video color: YCbCrโRGB matrices and transfer functions. Video color: YCbCrโRGB matrices and transfer functions.
- virtual_
data - Virtualized data models for lists, tables, and trees.
- window_
positioner - Pure Rust utility for computing window bounds from a semantic
WindowPosition. - worker_
api - Worker API for runtime tasks.
- workspace
- Workspace and panel layout management with JSON persistence.
Macrosยง
- actions
- Defines and registers unit structs that can be used as actions. For more complex data types, derive
Action. - border_
style_ methods - Generates methods for border styles.
- box_
shadow_ style_ methods - Generates methods for box shadow styles.
- cursor_
style_ methods - Generates methods for cursor styles.
- include_
lottie - Embed a Lottie asset directly into the binary at compile time.
- margin_
style_ methods - Generates methods for margin styles.
- overflow_
style_ methods - Generates methods for overflow styles.
- padding_
style_ methods - Generates methods for padding styles.
- position_
style_ methods - Generates methods for position styles.
- register_
action - Registers an action with the Kael runtime when you manually implement
the
Actiontrait. Typically you should use theActionderive macro oractions!macro instead. - visibility_
style_ methods - Generates methods for visibility styles.
Structsยง
- Accessibility
Announcement Builder - Builder for checked assistive-technology announcements.
- Accessibility
Focus Builder - Builder for checked accessibility focus changes.
- Advanced
Input Handoff - Checked native-first handoff for advanced input surfaces.
- Advanced
Input Handoff Builder - Builder for checked native-first advanced input handoffs.
- Already
Running - Error returned when another instance of the application is already running.
- AltEnter
- Apply the Alt+Enter behavior for the configured key policy.
- Anchored
- An anchored element that can be used to display UI that will avoid overflowing the window bounds.
- Anchored
State - The state that the anchored element element uses to track its children.
- Animation
Element - A GPUI element that applies an animation to another element
- Animation
Handle - A handle that can be used to cancel an in-flight animation.
- Animation
Timeline Builder - Builder for checked native animation timelines and keyframe authoring.
- Animation
Timeline Plan - Checked authoring plan for native animation timelines and keyframe intent.
- Animation
Timeline Step - One checked animation step in a native animation timeline.
- AnyDrag
- Contains state associated with an active drag operation, started by dragging an element within the window or by dragging into the app from the underlying platform.
- AnyElement
- A dynamically typed element that can be used to store any element type.
- AnyEntity
- A dynamically typed reference to a entity, which can be downcast into a
Entity<T>. - AnyImage
Cache - A dynamically typed image cache, which can be used to store any image cache
- AnyTooltip
- Contains state associated with a tooltip. Youโll only need this struct if youโre implementing tooltip behavior on a custom element. Otherwise, use Div::tooltip.
- AnyView
- A dynamically-typed handle to a view, which can be downcast to a Entity for a specific type.
- AnyWeak
Entity - A type erased, weak reference to a entity.
- AnyWeak
View - A weak, dynamically-typed view handle that does not prevent the view from being released.
- AnyWindow
Handle - A handle to a window with any root view type, which can be downcast to a window with a specific root view type.
- App
- Contains the state of the full application, and passed as a reference to a variety of callbacks.
Other Context derefs to this type.
You need a reference to an
Appto access the state of a Entity. - AppChrome
Surface Handoff - Checked descriptor for native app chrome, component surfaces, and hosted UI fallback.
- AppChrome
Surface Handoff Builder - Builder for checked native app-chrome workflow handoffs.
- AppDistribution
Plan - Checked distribution target plan for release scripts and agents.
- AppDistribution
Plan Builder - Builder for distribution target plans.
- AppDistribution
Target - One checked distribution artifact target.
- AppDistribution
Target Builder - Builder for one distribution target.
- AppHttp
Client Descriptor - Descriptor returned after validating an app-wide HTTP client.
- AppHttp
Client Install Builder - Builder for installing an app-wide HTTP client with checked metadata.
- AppIcon
Asset - One checked icon asset declaration.
- AppIcon
Asset Builder - Builder for one checked icon asset declaration.
- AppIcon
Coverage Summary - Purpose-level coverage for a checked app icon set.
- AppIcon
Set - Checked app icon asset set.
- AppIcon
SetBuilder - Builder for grouped app icon assets.
- AppIdentity
Metadata Handoff - Checked native-first app identity handoff for metadata, packaging, handlers, windows, and badges.
- AppIdentity
Metadata Handoff Builder - Builder for checked app identity metadata handoffs.
- AppLifecycle
Command - Checked app-level lifecycle command for native desktop app control.
- AppLifecycle
Command Plan - Checked lifecycle-command readiness plan for native desktop app control.
- AppLifecycle
Policy - Validated app lifecycle configuration.
- AppLifecycle
Policy Builder - Builder for configuring app lifetime and bounded quit cleanup.
- AppLifecycle
Startup Handoff - Checked lifecycle/startup handoff for generated desktop app flows.
- AppLifecycle
Startup Handoff Builder - Builder for a checked lifecycle/startup handoff.
- AppMetadata
- Validated application identity metadata for About, diagnostics, and support UI.
- AppMetadata
Builder - Builder for app identity metadata used by About panels and diagnostics.
- AppMetadata
Summary - Compact coverage summary for app identity metadata.
- AppPackage
Manifest - Checked packaging metadata for bundlers, installers, and generated docs.
- AppPackage
Manifest Builder - Builder for checked package metadata that composes identity, URL schemes, and file associations.
- AppPackage
Readiness Builder - Builder for package readiness checks.
- AppPackage
Readiness Issue - One package readiness finding.
- AppPackage
Readiness Report - Package readiness report for generated apps, release scripts, and agents.
- AppPath
Builder - Builder for resolving common app-owned filesystem locations.
- AppPath
Set - Resolved application paths for a validated app identifier.
- AppPrivacy
Manifest - Checked privacy permission manifest.
- AppPrivacy
Manifest Builder - Builder for grouped privacy permission declarations.
- AppPrivacy
Permission - One checked privacy permission declaration.
- AppPrivacy
Permission Builder - Builder for one privacy permission declaration.
- AppResource
Budget - Validated resource budget for a lightweight Kael app runtime.
- AppResource
Budget Builder - Builder for checked resource budgets over current app process state.
- AppResource
Budget Evaluation - Result of evaluating a resource budget against current app state.
- AppResource
Budget Issue - A single resource budget issue.
- AppRuntime
Snapshot - Read-only snapshot of app runtime state for startup gates and agent audits.
- AppRuntime
Snapshot Query Builder - Builder for checked app runtime snapshot queries.
- AppSigning
Plan - Checked signing plan for release scripts and platform bundlers.
- AppSigning
Plan Builder - Builder for grouped signing declarations.
- AppSigning
Target - Signing/notarization declaration for one distribution platform.
- AppSigning
Target Builder - Builder for one signing/notarization declaration.
- AppStorage
Entry - One checked app-owned storage location.
- AppStorage
Entry Builder - Builder for one app storage entry.
- AppStorage
Plan - Checked plan for app-owned settings, databases, caches, logs, and temp data.
- AppStorage
Plan Builder - Builder for checked app-owned storage plans.
- AppStorage
Session Handoff - A checked app storage/session handoff.
- AppStorage
Session Handoff Builder - Builder-facing handoff for app storage, migrations, cleanup, and hosted browser profile storage.
- AppUpdate
Offer Decision - Checked decision for one update release under app policy.
- AppUpdate
Offer Policy - Checked app-facing update policy for channel, signing, download, and rollout.
- AppUpdate
Offer Policy Builder - Builder for checked app update offer policy.
- AppUpdate
Release - Metadata for an app update discovered by a feed, service, or custom backend.
- AppUpdate
Release Builder - Builder for checked update release metadata.
- AppUpdate
State - Checked update state for menus, settings pages, notifications, and agents.
- AppUpdate
State Builder - Builder for checked app update state.
- AppUpdate
State Summary - Compact summary of update UI state for menus, settings, notifications, and agents.
- AppWindow
Capture Request - Checked app-window visual capture request for tests, diagnostics, and agents.
- AppWindow
Capture Request Builder - Builder for checked app-window visual capture requests.
- Application
- A reference to a GPUI application, typically constructed in the
mainfunction of your app. You wonโt interact with this type much outside of initial configuration and startup. - Arena
Clear Needed - Returned when the element arena has been used and so must be cleared before the next draw.
- Async
App - An async-friendly version of App with a static lifetime so it can be held across
awaitpoints in async code. Youโre provided with an instance when calling App::spawn, and you can also create one with App::to_async. Internally, this holds a weak reference to anApp, so its methods are fallible to protect against cases where the App is dropped. - Async
Window Context - A cloneable, owned handle to the application context, composed with the window associated with the current task.
- Audio
Permission Preflight Builder - Permission preflight descriptor for native audio recording workflows.
- Audio
Playback Source Builder - Builder for checked audio playback source descriptors.
- Audio
Workflow Handoff - Checked native-first audio workflow handoff.
- Audio
Workflow Handoff Builder - Builder for checked native-first audio workflow handoffs.
- Auto
Launch Builder - Builder for launch-at-login settings.
- Auto
Launch Plan - Checked launch-at-login configuration before platform mutation.
- Auto
Launch Status - Result returned after configuring launch-at-login.
- Auto
Updater - The auto-updater.
- Auto
Updater Config - Configuration for the auto-updater.
- Auto
Updater Config Builder - Builder for auto-updater configuration.
- Auxiliary
Executable - Resolved app-owned helper executable path.
- Auxiliary
Executable Builder - Builder for checked app-owned helper executable lookup.
- Background
- A background color, which can be a solid color, linear gradient, radial gradient, or conic gradient.
- Background
Executor - A pointer to the executor that is currently running, for spawning background tasks.
- Backspace
- Delete the current selection or the grapheme before the caret.
- Binding
Index - Index of a binding within a keymap.
- Biometric
Auth Builder - Builder for a biometric authentication prompt.
- Biometric
Auth Request - Snapshot returned when requesting a biometric prompt.
- Boundary
- A boundary between two lines of text.
- Bounds
- Represents a rectangular area in a 2D space with an origin point and a size.
- Bounds
Refinement - A partial-update type for [
#ident]. - BoxShadow
- The possible values of the box-shadow property
- Browser
Profile Storage Bridge Item - One browser-profile storage item and its replacement route.
- Browser
Profile Storage Bridge Item Builder - Builder for one browser-profile storage bridge item.
- Browser
Profile Storage Bridge Plan - Checked browser-profile storage replacement plan.
- Browser
Profile Storage Bridge Plan Builder - Builder for browser-profile storage replacement plans.
- Browser
WebView Policy - Security and capability policy for iframe-backed WebViews in browser builds.
- Button
- A focusable button primitive backed by
divclick semantics. - Button
Render State - Snapshot of button state passed to a custom renderer.
- Cached
- A cache wrapper that replays a previously rendered child subtree when its dependencies are unchanged.
- Cancel
- Cancel the current field interaction.
- Canvas
- A canvas element, meant for accessing the low level paint API without defining a whole custom element
- Canvas
Draw - A canvas element backed by an immediate-mode
DrawContext. - Capslock
- The state of the capslock key at some point in time
- Cascade
- A cascade of refinements that can be merged in priority order.
- Cascade
Slot - A handle to a specific slot in a cascade.
- Checkbox
- A controlled checkbox form control.
- Checkbox
Render State - Snapshot of checkbox state passed to a custom renderer.
- Clip
Path Element - A wrapper element that clips its child to a
ClipShape. Created byclip_path. - Clipboard
Clear Builder - Checked request for clearing the platform clipboard.
- Clipboard
Editing Handoff - A checked clipboard or edit-command handoff.
- Clipboard
Editing Handoff Builder - Builder-facing handoff for clipboard and edit-command flows.
- Clipboard
Html Metadata - Metadata attached to an HTML clipboard string.
- Clipboard
Item - A clipboard item that should be copied to the clipboard
- Clipboard
Item Builder - Builder for rich clipboard payloads containing text, metadata, and images.
- Clipboard
Read Request - Checked request for reading user-visible clipboard contents.
- Clipboard
Read Request Builder - Builder for checked clipboard reads.
- Clipboard
String - A clipboard item that should be copied to the clipboard
- Color
Filter - A color filter applied to an elementโs painted output, composing across a subtree.
- Content
Mask - Indicates which region of the window is visible. Content falling outside of this mask will not be rendered. Currently, only rectangular content masks are supported, but we give the mask its own type to leave room to support more complex shapes in the future.
- Context
- The app context, with specialized behavior for the given entity.
- Context
Entry - An entry in a KeyContext
- Context
Menu - A builder for structured in-window context menus.
- Copy
- Copy the selected text to the clipboard.
- Corners
- Represents the corners of a box in a 2D space, such as border radius.
- Corners
Refinement - A partial-update type for [
#ident]. - Crash
Report - Information collected for a crash report.
- Crash
Reporter - A crash reporter that captures Rust panics, persists them to disk, and attempts to submit them on the next launch.
- Crash
Reporter Builder - Builder for
CrashReporter. - Crash
Reporting Handoff - Checked crash-reporting handoff for hooks, uploads, diagnostics, and gaps.
- Crash
Reporting Handoff Builder - Builder for checked crash-reporting workflow handoffs.
- Credential
Builder - Builder for writing one credential entry to the platform keychain.
- Credential
Service Builder - Builder for a validated credential service key.
- Credential
Write Request - A validated credential entry stored in the platform keychain.
- CssToken
Migration Builder - Builder for checked CSS-custom-property to native-theme-token migrations.
- CssToken
Migration Entry - A CSS custom property mapped into Kaelโs native theme-token vocabulary.
- CssToken
Migration Plan - Checked plan for migrating CSS custom properties into native theme tokens.
- Custom
Protocol File Resolver - A checked resolver that maps app-owned custom protocol URLs to files under a root directory.
- Custom
Protocol File Resolver Builder - Builder for safe custom-protocol file serving.
- Custom
Protocol Request - A typed request for an app-owned custom protocol URL such as
app://assets/logo.svg. - Custom
Protocol Response - A validated response returned by a custom protocol handler.
- Custom
Protocol Response Builder - Builder for custom protocol responses.
- Custom
Protocol Route - A registered app-owned custom protocol route.
- Custom
Protocol Router Builder - Builder for grouped custom protocol routes.
- Cut
- Cut the selected text to the clipboard.
- Data
Transfer Drop Intake Plan - Checked intake decision for browser-style DataTransfer drops.
- Data
Transfer Drop Intake Plan Builder - Builder for checked DataTransfer-style incoming drop intake.
- Date
Picker - A controlled date picker with a popup month grid.
- Date
Picker DayRender State - Snapshot of a calendar day cell passed to a custom renderer.
- Date
Picker Header Render State - Snapshot of the calendar header passed to a custom renderer.
- Date
Picker NavButton Render State - Snapshot of a month navigation button passed to a custom renderer.
- Date
Picker Popup Render State - Snapshot of date picker popup state passed to a custom renderer.
- Date
Picker Render State - Snapshot of date picker trigger state passed to a custom renderer.
- Date
Picker Weekday Render State - Snapshot of a weekday label passed to a custom renderer.
- Debug
Below - Use this struct for interfacing with the โdebug_belowโ styling from your own elements. If a parent element has this style set on it, then this struct will be set as a global in GPUI.
- Decoration
Run - Set the text decoration for a run of text.
- Deep
Link Route - A callback for URLs matching one deep-link scheme.
- Deep
Link Router Builder - Builder for grouped deep-link routes.
- Deep
Link Setup Plan - Checked relationship between runtime deep-link routes and OS setup declarations.
- Default
Handler Plan - Checked intent for making this app a default handler for schemes or documents.
- Default
Handler Plan Builder - Builder for checked default-handler registration intent.
- Deferred
- An element which delays the painting of its child until after all of its ancestors, while keeping its layout as part of the current element tree.
- Deferred
Scroll ToItem - Delete
- Delete the current selection or the grapheme after the caret.
- Delete
Word Backward - Delete from the caret to the previous word boundary.
- Delete
Word Forward - Delete from the caret to the next word boundary.
- Desktop
Shell Chrome Handoff - Checked native desktop shell/chrome handoff for tray, badge, progress, attention, and placement.
- Desktop
Shell Chrome Handoff Builder - Builder for checked native shell/chrome handoffs.
- Developer
Observability Handoff - Checked handoff for native developer diagnostics and hosted debug bridges.
- Developer
Observability Handoff Builder - Builder for checked developer tools and observability handoffs.
- Device
Access Request - A checked native device access request descriptor.
- Device
Access Request Builder - Builder for checked native device access requests.
- Device
Pixels - Represents physical pixels on the display.
- Dialog
Options - Options for displaying a native dialog.
- Disclosure
- A controlled disclosure primitive with caller-owned trigger visuals and panel content.
- Disclosure
Render State - Snapshot of disclosure trigger state passed to a custom renderer.
- Dismiss
Event - Emitted by implementers of
ManagedViewto indicate the view should be dismissed, such as when a view is presented as a modal. - Dispatch
Event Result - Outcome of dispatching a
PlatformInputthroughWindow::dispatch_event. - Display
Id - An opaque identifier for a hardware display
- Display
Query Builder - Builder for browser-runtime
screen-style display queries. - Display
Query Result - Resolved display query result.
- Display
Snapshot - Immutable display information for screen-aware app logic.
- Display
Topology Handoff - Checked native-first screen/display topology handoff for Electron
screenparity. - Display
Topology Handoff Builder - Builder for checked native-first screen/display topology handoffs.
- Display
Topology Summary - Compact display topology for browser-runtime
screen-style setup decisions. - Div
- A
Divelement, the all-in-one element for building complex UIs in GPUI - DivFrame
State - A frame state for a
Divelement, which contains layout IDs for its children. - DivInspector
State - Interactivity state displayed an manipulated in the inspector.
- DivPrepaint
State - Prepaint state for a div.
- Dock
Badge Builder - Builder for a dock/taskbar badge label.
- Dock
Menu Action Builder - Builder for dispatching an installed dock/taskbar menu action by index.
- Dock
Menu Builder - Builder for the app icon dock/taskbar context menu.
- Document
Output Handoff - A checked document output handoff for native print/export and hosted WebView print/export flows.
- Document
Output Handoff Builder - Builder-facing print/export handoff that validates the output lane before native or WebView work is dispatched.
- Download
Batch - A checked group of app-owned downloads that can be queued together.
- Download
Batch Builder - Builder for checked app-owned download batches.
- Download
Destination Plan - Checked destination-selection plan for app-owned downloads.
- Download
Destination Plan Builder - Builder for Save As / destination-selection download flows.
- Download
Execution Plan - Checked execution policy for a native app-owned download queue.
- Download
Execution Plan Builder - Builder for native app-owned download queue execution policy.
- Download
Handoff - One-object handoff for native app-owned downloads.
- Download
Handoff Builder - Builder for native app-owned download handoffs.
- Download
Progress - Progress information during an update download.
- Download
Request - A checked descriptor for an app-owned download.
- Download
Request Builder - Builder for checked app-owned downloads.
- Drag
Drop Transfer Handoff - A checked drag/drop transfer handoff.
- Drag
Drop Transfer Handoff Builder - Builder-facing handoff for incoming drops, file-export drags, internal drag routing, and hosted DOM DataTransfer islands.
- Drag
Move Event - An event for when a drag is moving over this element, with the given state type.
- Draw
Context - Immediate-mode drawing context used by
canvas(size, draw). - Drawable
- A wrapper around an implementer of
Elementthat allows it to be drawn in a window. - Dummy
Keyboard Mapper - A dummy implementation of the platform keyboard mapper
- Duplicate
Launch Handoff - Duplicate-launch routing handoff for existing-instance activation.
- Duplicate
Launch Payload - Redacted payload that can be forwarded from a duplicate app launch.
- Edges
- Represents the edges of a box in a 2D space, such as padding or margin.
- Edges
Refinement - A partial-update type for [
#ident]. - Edit
Command State Snapshot - Runtime state for active-window edit commands.
- Effect
Layer - A wrapper element that applies a content blur and/or drop shadow to a cached child subtree.
- Element
Clicked State - Whether or not the element or a group that contains it is clicked by the mouse.
- Element
Input Handler - The canonical implementation of
PlatformInputHandler. CallWindow::handle_inputwith an instance during your elementโs paint. - Embedded
Hosted View Handoff - Checked descriptor for native pane composition and explicit hosted-view islands.
- Embedded
Hosted View Handoff Builder - Builder for checked embedded-hosted-view workflow handoffs.
- Empty
- The empty element, which renders nothing.
- Empty
View - A view that renders nothing
- Entity
- A strong, well-typed reference to a struct which is managed by GPUI
- Entity
Id - A unique identifier for a entity across the application.
- External
Drop Data - Data dragged from outside the app, such as browser-style file, text, or URL payloads.
- External
File - An external file whose bytes are already available to the application.
- External
Paths - A collection of paths from the platform, such as from a file drop.
- Fallback
Prompt Renderer - The default GPUI fallback for rendering prompts, when the platform doesnโt support it.
- File
Association - One checked file association declaration for packaging/installers.
- File
Association Builder - Builder for one file association declaration.
- File
Association Set - Checked app file-association declaration set.
- File
Association SetBuilder - Builder for app-level file association declarations.
- File
Dialog Filter - A named file-extension filter for native file dialogs.
- File
Dialog Handoff - Checked descriptor for open/save/path/hosted file dialog routing.
- File
Dialog Handoff Builder - Builder for checked file-dialog workflow handoffs.
- File
Drop Filter - Builder for accepting dropped files by count and extension.
- File
Drop Intent - Checked file-drop intent for imports, project opens, and media drops.
- File
Drop Intent Builder - Builder for validating native file drops before app-owned import/open work.
- File
Drop Match - Accepted and rejected paths from a file drop.
- File
Export Drag Intent - Checked outbound file drag/export descriptor.
- File
Export Drag Intent Builder - Builder for checked outbound file drags and file promises.
- File
Handling Setup Plan - Checked setup coverage between runtime file intake and OS/package document metadata.
- File
Icon Request - Checked request for a native icon representing a file, folder, or planned path.
- File
Icon Request Builder - Builder for checked native file icon requests.
- File
Intake Entry - One classified file-intake path.
- File
Intake Plan - Checked file-intake classification result.
- File
Intake Plan Builder - Builder for classifying app-owned paths from dialogs, drops, recent docs, or deep links.
- File
Operation Handoff - Checked handoff for app-owned file read/write/copy/move/delete workflows.
- File
Operation Handoff Builder - Builder for checked app-owned file operation handoffs.
- File
Operation Request - Checked app-owned file operation descriptor.
- File
Operation Request Builder - Builder for checked app-owned file operation descriptors.
- File
Watch Options - Options that control how a path is watched.
- File
Watch Options Builder - Builder for file-system watch options.
- File
Watch Set - A validated group of file-system paths to watch with shared options.
- File
Watch SetBuilder - Builder for registering multiple file-system watch roots together.
- File
Watcher - Cross-platform file-system watcher backed by the
notifycrate. - Fill
Options - Parameters for the fill tessellator.
- Find
Zoom Handoff - Checked handoff for native document find, result navigation, zoom, and hosted fallback.
- Find
Zoom Handoff Builder - Builder for checked find/zoom handoffs.
- Focus
Handle - A handle which can be used to track and manipulate the focused element in a window.
- FocusId
- A globally unique identifier for a focusable element.
- Focus
OutEvent - This is provided when subscribing for
Context::on_focus_outevents. - Focus
Traversal Plan - Checked focus traversal plan for native forms, editors, menus, and overlays.
- Focus
Traversal Plan Builder - Builder for checked focus traversal plans.
- Focus
Traversal Stop - One checked focus target in an app-owned traversal plan.
- Focus
Traversal Stop Builder - Builder for one focus traversal stop.
- Focused
Window Info - Information about the currently focused window from any application.
- Focused
Window Query - A checked filter for querying the currently focused external window.
- Focused
Window Query Builder - Builder for checked focused-window queries.
- Font
- The configuration details for identifying a specific font.
- Font
Fallbacks - The fallback fonts that can be configured for a given font. Fallback fonts family names are stored here.
- Font
Family Id - An opaque identifier for a specific font family.
- Font
Feature - A single OpenType font feature tag with its value.
- Font
Features - The OpenType features that can be configured for a given font.
- FontId
- An opaque identifier for a specific font.
- Font
Metrics - A struct for storing font metrics. It is used to define the measurements of a typeface.
- FontRun
- A run of text with a single font.
- Font
Weight - The degree of blackness or stroke thickness of a font. This value ranges from 100.0 to 900.0, with 400.0 as normal.
- Foreground
Executor - A pointer to the executor that is currently running, for spawning tasks on the main thread.
- Form
Field Descriptor - Checked summary of one native form field without exposing field values.
- Form
Field Descriptor Builder - Builder for checked native form field descriptors.
- Form
Validation Handoff - Checked handoff for native forms, validation, autofill policy, and hosted fallback.
- Form
Validation Handoff Builder - Builder for checked form-validation handoffs.
- Frame
Skip - Whole-frame damage tracking: the coarse โearly-outโ half of dirty-region rendering.
- Gesture
Input Policy - Checked gesture-input policy for an app-owned native surface.
- Gesture
Input Policy Builder - Builder for checked gesture-input policy.
- Global
Element Id - A globally unique identifier for an element, used to track state across frames.
- Global
Hotkey - A global hotkey registration with an application-owned identifier.
- Global
Hotkey Builder - Builder for global hotkey registrations.
- Global
Hotkey Set - A collection of global hotkeys ready to register.
- Global
Hotkey Unregistration - Checked global hotkey unregistration request.
- Global
Removal Builder - Builder for checked app-global removal.
- GlyphId
- An identifier for a specific glyph, as returned by
WindowTextSystem::layout_line. - GpuSpecs
- Information about the GPU GPUI is running on.
- Gpui
Borrow - A mutable reference to an entity owned by GPUI
- Graphics
Canvas Handoff - Checked native-first graphics/canvas handoff for generated visual apps.
- Graphics
Canvas Handoff Builder - Builder for checked graphics/canvas handoffs.
- Grid
Location - A location in a grid layout.
- Group
Style - The styling information for a given group.
- Hardware
Device Handoff - Checked native-first hardware-device handoff for WebUSB/WebHID/Web Serial/Web Bluetooth parity.
- Hardware
Device Handoff Builder - Builder for checked hardware-device handoffs.
- Highlight
Style - A highlight style to apply, similar to a
TextStyleexcept for a single font, uniformly sized and spaced text. - Hitbox
- A rectangular region that potentially blocks hitboxes inserted prior. See Window::insert_hitbox for more details.
- Hitbox
Id - An identifier for a Hitbox which also includes HitboxBehavior.
- Hosted
Visual Capture Descriptor - Scoped hosted visual capture descriptor.
- Hsla
- An HSLA color
- Icon
- An icon element backed by the generated build-time icon atlas.
- Image
- An image, with a format and certain bytes
- Image
Cache Element - An image cache element.
- Image
Format Iter - An iterator over the variants of ImageFormat
- Image
Icon Asset Handoff - Checked native-first handoff for app icons, file icons, tray icons, and image payloads.
- Image
Icon Asset Handoff Builder - Builder for checked native-first image/icon asset handoffs.
- ImageId
- A unique identifier for the image cache
- Image
Style - The style of an image element.
- Img
- An image element.
- ImgLayout
State - The image layout state between frames
- Insert
Newline - Insert a newline in multiline mode or submit in single-line mode.
- Inspector
- Manages inspector state - which element is currently selected and whether the inspector is in picking mode.
- Inspector
Element Id - A unique identifier for an element that can be inspected.
- Inspector
Element Path GlobalElementIdqualified by source location of element construction.- Interactive
Element State - The per-frame state of an interactive element. Used for tracking stateful interactions like clicks and scroll offsets.
- Interactive
Text - A text element that can be interacted with.
- Interactivity
- The interactivity struct. Powers all of the general-purpose
interactivity in the
Divelement. - Invalid
Cascade Slot - Error returned when a slot does not belong to the target cascade.
- Invalid
Keystroke Error - Error type for
Keystroke::parse. This is used instead ofanyhow::Errorso that Kael can use markdown to display it. - Item
Size - The size of the item and its contents.
- Jump
List Builder - Builder for Windows jump-list tasks and recent workspace entries.
- Jump
List Plan - Checked plan for Windows jump-list tasks and recent workspace entries.
- KeyBinding
- A keybinding and its associated metadata, from the keymap.
- KeyBinding
Clear Builder - Builder for checked app keybinding cleanup.
- KeyBinding
Meta Index - A unique identifier for retrieval of metadata associated with a key binding. Intended to be used as an index or key into a user-defined store of metadata associated with the binding, such as the source of the binding.
- KeyBinding
SetBuilder - Builder for checked app keybindings / native desktop accelerators.
- KeyBinding
SetPlan - Checked, inspectable plan for app-local keybindings.
- KeyContext
- A datastructure for resolving whether an action should be dispatched at this point in the element tree. Contains a set of identifiers and/or key value pairs representing the current context for the keymap.
- KeyDown
Event - The key down event equivalent for the platform.
- KeyUp
Event - The key up event equivalent for the platform.
- Keybinding
Keystroke - Represents a keystroke that can be used in keybindings and displayed to the user.
- Keyboard
Click Event - A click event that was generated by a keyboard button being pressed and released.
- Keyboard
Layout Snapshot - Snapshot of the active platform keyboard layout for shortcut and hotkey UI.
- Keyboard
Layout Snapshot Builder - Builder for checked keyboard-layout snapshots.
- Keymap
- A collection of key bindings for the userโs application.
- Keymap
Version - An opaque identifier of which version of the keymap is currently active. The keymapโs version is changed whenever bindings are added or removed.
- Keystroke
- A keystroke and associated metadata generated by the platform
- Keystroke
Event - A keystroke event, and potentially the associated action
- Label
- A text label primitive that can forward focus to another control when clicked.
- Launch
Argument Policy - Checked policy for classifying startup arguments without exposing their text.
- Launch
Argument Policy Builder - Builder for
LaunchArgumentPolicy. - Launch
Argument Report - Content-safe classification of startup arguments.
- Launch
Context Builder - Builder for capturing startup context without exposing arbitrary environment data.
- Launch
Context Snapshot - Startup context captured from the current process.
- Launch
Environment Allowlist - Environment allowlist and redaction policy for startup diagnostics.
- Launch
Environment Allowlist Builder - Builder for
LaunchEnvironmentAllowlist. - Launch
Environment Handoff - Checked native-first handoff for startup arguments, environment, duplicate launches, and diagnostics.
- Launch
Environment Handoff Builder - Builder for checked launch/environment handoffs.
- Launch
Environment Snapshot - Content-safe summary of allowlisted environment state.
- Layer
Anchor - Anchored placement configuration for a layer.
- LayerId
- A stable identifier for a layer managed by
LayerStack. - Layer
Options - Options that control how a layer behaves inside a
LayerStack. - Layer
Stack - A stack of in-window layers such as modals and popovers.
- Layout
Id - A unique identifier for a layout node, generated when requesting a layout from Taffy
- Layout
Styling Handoff - Checked descriptor for native layout, styling, animation, and explicit CSS islands.
- Layout
Styling Handoff Builder - Builder for checked layout/styling/animation workflow handoffs.
- Line
Layout - A laid out and styled line of text
- Line
Wrapper - The GPUI line wrapper, used to wrap lines of text to a given width.
- Line
Wrapper Handle - A handle into the text system, which can be used to compute the wrapped layout of text
- Linear
Color Stop - A color stop in a linear gradient.
- Link
- A focusable hyperlink primitive with built-in external URL support.
- Linux
Installer - Linux installer: handles AppImage delta updates, Flatpak, and Snap update channels.
- List
- A list element
- List
Offset - An offset into the listโs items, in terms of the item index and the number of pixels off the top left of the item.
- List
Prepaint State - Frame state used by the List element after layout.
- List
Scroll Event - A scroll event that has been converted to be in terms of the listโs items.
- List
State - The list state that views must hold on behalf of the list element.
- Locale
Snapshot - Runtime locale and preferred-language snapshot.
- Locale
Snapshot Builder - Builder for native locale and preferred-language snapshots.
- Localization
Text Handoff - Checked localization/text handoff for locale, editor, capability, and fallback work.
- Localization
Text Handoff Builder - Builder for checked localization/text workflow handoffs.
- Location
Request - A checked native location request descriptor.
- Location
Request Builder - Builder for checked native geolocation requests.
- Lottie
- A Lottie animation element.
- Lottie
Animation - Parsed Lottie animation metadata and source bytes.
- Lottie
Player - Playback controller for a decoded Lottie animation.
- LruImage
Cache - An
ImageCachethat retains at mostmax_imagesdecoded images, evicting the least-recently-used entries (releasing their GPU textures viadrop_image) once the cap is exceeded. Use this for churning or unbounded image working sets โ an infinite feed, gallery, or map โ whereRetainAllImageCachewould grow without bound. - LruImage
Cache Provider - A provider struct for creating a bounded LRU image cache inline.
- MacOs
Document Type Declaration - macOS document metadata shaped like one
CFBundleDocumentTypesentry. - MacOs
UrlType Declaration - macOS URL scheme metadata shaped like one
CFBundleURLTypesentry. - MacOs
Usage Description - macOS Info.plist usage-description entry.
- Magnify
Event - A magnification gesture event from the platform.
- Menu
- A menu of the application, either a main menu or a submenu
- Menu
BarBuilder - Builder for an application menu bar.
- Menu
BarPlan - Checked, inspectable plan for installing an application menu bar.
- Menu
Builder - Builder for an application menu.
- Menu
Button - A popup-backed menu button with caller-owned trigger and item visuals.
- Menu
Button Item - A single popup menu item.
- Menu
Button Item Render State - Snapshot of a popup menu item row passed to a custom renderer.
- Menu
Button Trigger Render State - Snapshot of menu button trigger state passed to a custom renderer.
- Menu
Command Handoff - Checked descriptor for app menus, context menus, and edit-command routing.
- Menu
Command Handoff Builder - Builder for checked menu/command workflow handoffs.
- Menu
Entry - A focusable menu item primitive with caller-owned visuals.
- Message
Dialog Builder - Builder for native message/confirmation dialogs.
- Message
Dialog Handoff - Checked native message-dialog and prompt handoff for builders and agents.
- Message
Dialog Handoff Builder - Builder for checked native message-dialog and prompt handoffs.
- Message
Dialog Plan - Checked, inspectable plan for a native message/confirmation dialog.
- Modal
- A controlled modal primitive with caller-owned dialog visuals.
- Modal
Render State - Snapshot of modal state passed to a custom renderer.
- Modifiers
- The state of the modifier keys at some point in time
- Modifiers
Changed Event - The modifiers changed event equivalent for the platform.
- Mouse
Click Event - A click event, generated when a mouse button is pressed and released.
- Mouse
Down Event - A mouse down event from the platform
- Mouse
Exit Event - A mouse exit event from the platform, generated when the mouse leaves the window.
- Mouse
Move Event - A mouse move event from the platform
- Mouse
UpEvent - A mouse up event from the platform
- Move
Down - Move the caret to the closest position on the next visual line.
- Move
Left - Move the caret one grapheme to the left.
- Move
Right - Move the caret one grapheme to the right.
- Move
ToEnd - Move the caret to the end of the field.
- Move
ToStart - Move the caret to the beginning of the field.
- MoveUp
- Move the caret to the closest position on the previous visual line.
- Move
Word Left - Move the caret to the previous word boundary.
- Move
Word Right - Move the caret to the next word boundary.
- Native
Context Menu Builder - Builder for a native context menu.
- Native
Form Schema - Checked native form schema for generated app-owned forms and wizards.
- Native
Form Schema Builder - Builder for checked native form schemas and simple wizard scaffolds.
- Native
Form Schema Step - One step in a higher-level native form schema or wizard.
- Native
Theme Snapshot - Snapshot of native theme and accessibility signals for app UI decisions.
- Navigation
Handoff - Checked handoff for native navigation, history, routing, restore, and hosted fallback.
- Navigation
Handoff Builder - Builder for checked navigation handoffs.
- Navigation
Route Descriptor - Checked summary of one app-owned navigation route.
- Navigation
Route Descriptor Builder - Builder for checked route descriptors.
- Navigator
- A renderable navigation stack that supports animated route transitions.
- Network
Status Monitor - Installed network-status monitor snapshot.
- Network
Status Monitor Builder - Builder for monitoring online/offline network status changes.
- NoAction
- Action with special handling which unbinds the keybinding this is associated with, if it is the highest precedence match.
- Notification
Action - A notification action button.
- Notification
Action Follow UpBuilder - Builder for checked notification action callback routing.
- Notification
Action Follow UpPlan - Checked notification action callback routing plan.
- Notification
Builder - Builder for an OS-level notification.
- Notification
Delivery Plan - Checked notification delivery plan against a known backend support profile.
- Notification
Feature Support - Platform/backend notification feature support.
- Notification
Flow Handoff - One-object handoff for notification, action, shell-followup, and attention flows.
- Notification
Flow Handoff Builder - Builder for checked OS notification flows.
- Open
Dialog Builder - Builder for native open-file/open-directory dialogs.
- Open
Dialog Plan - Checked, inspectable plan for a native open-file/open-directory dialog.
- Open
Request - A typed request from the operating system to open a URL, deep link, or file.
- Open
Request Route Plan - Checked intake plan for platform open requests before mutating navigation state.
- Open
Request Route Plan Builder - Builder for checked platform open-request routing.
- OsInfo
- Information about the operating system.
- OsMenu
- OS menus are menus that are recognized by the operating system This allows the operating system to provide specialized items for these menus
- Owned
Menu - A menu of the application, either a main menu or a submenu
- Owned
OsMenu - OS menus are menus that are recognized by the operating system This allows the operating system to provide specialized items for these menus
- Packaging
Update Handoff - Checked native-first handoff for release packaging, signing, updater, restart, and crash diagnostics.
- Packaging
Update Handoff Builder - Builder for checked packaging/update handoffs.
- Paint
Quad - A rectangle to be rendered in the window at the given position and size.
Passed as an argument
Window::paint_quad. - Paste
- Paste clipboard text into the field.
- Path
- A line made up of a series of vertices and control points.
- Path
Builder - A
Pathbuilder. - Path
Prompt Options - The options that can be configured for a file dialog prompt
- Percentage
- A type representing a percentage value.
- Performance
Evidence Handoff - Checked handoff for lightweight-runtime performance evidence.
- Performance
Evidence Handoff Builder - Builder for checked performance and resource-evidence handoffs.
- Permission
Broker Install Builder - Builder for installing an app capability broker with checked grants.
- Permission
Broker Install Report - Report returned after installing an app capability broker.
- Permission
Preflight Plan - Checked relationship between runtime permission preflight and packaged privacy rationale.
- Permission
Request Builder - Builder for checking and requesting common OS permissions together.
- Permission
Request Denial - A requested permission that is currently denied or restricted.
- Permission
Request Result - Status snapshot returned by
App::request_permissions. - Permission
Request Status - A requested permission with its current OS status.
- Pixel
Snap Policy - Consistent pixel-snapping helper for fills, strokes, clips, and text baselines.
- Pixels
- Represents a length in pixels, the base unit of measurement in the UI framework.
- Point
- Describes a location in a 2D cartesian space.
- Point
Refinement - A partial-update type for [
#ident]. - Pointer
Buttons - Simultaneously pressed pointer buttons.
- Pointer
Id - Stable identifier for one active pointer.
- Pointer
Input Event - A device-independent, high-fidelity pointer event.
- Pointer
Input Policy - Checked pointer-input policy for an app-owned native surface.
- Pointer
Input Policy Builder - Builder for checked pointer-input policy.
- Pointer
Sample - One high-frequency sample contained in a coalesced pointer move.
- Popover
- A controlled anchored popover with caller-owned anchor and popup visuals.
- Popover
Anchor Render State - Snapshot of popover anchor state passed to a custom renderer.
- Popover
Popup Render State - Snapshot of popover popup state passed to a custom renderer.
- Power
Save Blocker Builder - Builder for starting a power-save blocker with app-level intent.
- Power
Save Blocker Handle - Active power-save blocker returned by
App::start_power_save_blocker_with. - Power
Save Blocker Plan - Checked, side-effect-free power-save blocker intent.
- Power
Save Blocker Stop Builder - Checked request for stopping a previously started power-save blocker by id.
- Power
Theme Idle Handoff - Checked handoff for sleep prevention, power monitoring, native theme, idle policy, and hosted fallback.
- Power
Theme Idle Handoff Builder - Builder for checked power/theme/idle handoffs.
- Primary
Enter - Apply the primary Enter behavior for the configured key policy.
- Print
Context - A recording context for one printed page.
- Print
Image Style - Image layout settings for print image commands.
- Print
Job - A print job that can be sent directly to the platform printer or shown in a native print dialog.
- Print
Page - A single page in a print job.
- Print
Stroke - Stroke settings for line drawing commands.
- Print
Text Style - Text styling for print text commands.
- Process
Context Builder - Builder for checked process-context switches used by capability checks.
- Process
Context Switch Report - Report returned after switching the appโs active capability process context.
- Process
Memory Metrics - Best-effort memory information for the current Kael process.
- Process
Metrics Snapshot - Runtime metrics for the current Kael application process.
- Progress
- A styled progress indicator with caller-owned rendering.
- Progress
Indicator - Checked progress indicator plan for jobs, downloads, exports, installs, and sync.
- Progress
Indicator Builder - Builder for checked progress indicators.
- Progress
Render State - Snapshot of progress state passed to a custom renderer.
- Prompt
Handle - A handle to a prompt that can be used to interact with it.
- Prompt
Response - The event emitted when a promptโs option is selected. The usize is the index of the selected option, from the actions passed to the prompt.
- Radians
- Represents an angle in Radians
- Radio
Group - A controlled radio group form control.
- Radio
Item Render State - Snapshot of a single radio option passed to a custom renderer.
- Radio
Option - A single labeled option in a radio group.
- Recent
Documents Builder - Builder for adding one or more documents to the OS recent-documents list.
- Recent
Documents Clear Builder - Checked request for clearing this appโs OS recent-documents list.
- Recent
Documents Plan - Checked plan for adding documents to the OS recent-documents list.
- Recycling
List - A keyed heterogeneous list that recycles layout state across frames.
- Recycling
List Frame State - Frame state used by a
RecyclingListbetween prepaint and paint. - Recycling
List Request Layout State - Frame state used by a
RecyclingListbetween layout and prepaint. - Redo
- Reapply the next edit snapshot.
- Rems
- Represents a length in rems, a unit based on the font-size of the window, which can be assigned with
Window::set_rem_size. - Render
Image - A cached and processed image, in BGRA format
- Renderable
Prompt Handle - A prompt handle capable of being rendered in a window.
- Reservation
- Returned by Context::reserve_entity to later be passed to Context::insert_entity. Allows you to obtain the EntityId for a entity before it is created.
- Resize
Event - An event that fires when an elementโs bounds change size.
- Responsive
Layout Breakpoint - One checked native responsive-layout breakpoint.
- Responsive
Layout Plan - Checked descriptor for native responsive-layout authoring.
- Responsive
Layout Plan Builder - Builder for checked responsive-layout plans.
- Restart
Path Builder - Builder for a restart binary path.
- Retain
AllImage Cache - An
ImageCachethat retains every decoded image for the lifetime of the cache (no eviction). Images are released together when the cache entity is dropped orRetainAllImageCache::clearis called. Use this when the working set of images is bounded; for unbounded or churning image sets, scope the cache to a smaller subtree (a shorter-lived element id) so it is dropped and reclaimed more often. - Retain
AllImage Cache Provider - A provider struct for creating a retain-all image cache inline
- Rgba
- An RGBA color
- Rich
Text - A builder-backed rich text element for styled content, entities, and inline children.
- Rich
Text Layout - A tracked layout handle for rich text geometry and selection queries.
- Route
- A route rendered by a
Navigator. - Route
Change Event - An event emitted whenever the active route changes.
- Save
Dialog Builder - Builder for native save dialogs.
- Save
Dialog Plan - Checked, inspectable plan for a native save dialog.
- Scaled
Pixels - Represents scaled pixels that take into account the deviceโs scale factor.
- Scope
- Scope manages a set of tasks that are enqueued and waited on together. See
BackgroundExecutor::scoped. - Screen
Capture Frame - A frame of video captured from a screen.
- Scroll
Anchor - Represents an element that can be scrolled to in its parent element.
Contrary to
ScrollHandle::scroll_to_active_item, an anchored element does not have to be an immediate child of the parent. - Scroll
Bar - A focusable scroll bar primitive bound to a scrollable container.
- Scroll
BarRender State - Snapshot of scroll bar state passed to a custom renderer.
- Scroll
Handle - A handle to the scrollable aspects of an element. Used for accessing scroll state, like the current scroll offset, and for mutating the scroll state, like scrolling to a specific child.
- Scroll
Wheel Event - A mouse wheel event from the platform
- Secure
Credential Handoff - Checked native-first handoff for keychain writes, reads, deletes, diagnostics, and auth fallback.
- Secure
Credential Handoff Builder - Builder for checked secure credential handoffs.
- Security
Permission Handoff - Checked handoff for security and permission policy setup before mutation.
- Security
Permission Handoff Builder - Builder for checked security and permission policy handoffs.
- Select
- A controlled popup-backed combo box.
- Select
All - Select all text in the field.
- Select
Down - Extend the selection to the closest position on the next visual line.
- Select
Left - Extend the selection one grapheme to the left.
- Select
Option - A single labeled option in a select control.
- Select
Option Render State - Snapshot of a popup option row passed to a custom renderer.
- Select
Popup Render State - Snapshot of select popup state passed to a custom popup renderer.
- Select
Render State - Snapshot of select trigger state passed to a custom renderer.
- Select
Right - Extend the selection one grapheme to the right.
- Select
Search Render State - Snapshot of the in-popup search field passed to a custom renderer.
- Select
ToEnd - Extend the selection to the end of the field.
- Select
ToStart - Extend the selection to the beginning of the field.
- Select
Up - Extend the selection to the closest position on the previous visual line.
- Select
Word Left - Extend the selection to the previous word boundary.
- Select
Word Right - Extend the selection to the next word boundary.
- Semantic
Version - A semantic version number.
- Session
Restore Result - Window-state restore output with a content-safe relocation summary.
- Session
Snapshot - A persisted snapshot of the entire session.
- Session
Snapshot Builder - Builder for composing a persisted
SessionSnapshot. - Session
Store - Persistent storage for application session state.
- Shaped
Glyph - A single glyph, ready to paint.
- Shaped
Line - A line of text that has been shaped and decorated.
- Shaped
Run - A run of text that has been shaped .
- Shared
String - A shared string is an immutable string that can be cheaply cloned in GPUI
tasks. Essentially an abstraction over an
Arc<str>and&'static str, - Shared
Uri - A
SharedStringcontaining a URI. - Shell
Targets Builder - Builder for opening or revealing multiple platform shell targets.
- Shell
Targets Plan - Checked, inspectable plan for ordered shell open/reveal workflows.
- Shift
Enter - Apply the Shift+Enter behavior for the configured key policy.
- Shortcut
Input Handoff - Checked native-first shortcut/input handoff for app accelerators and global shortcuts.
- Shortcut
Input Handoff Builder - Builder for checked native-first shortcut/input handoffs.
- Single
Instance - A guard that enforces single-instance behavior for an application.
- Single
Instance Builder - Builder for native desktop single-instance startup handling.
- Size
- A structure representing a two-dimensional size with width and height in a given unit.
- Size
Refinement - A partial-update type for [
#ident]. - Slider
- A controlled slider form control.
- Slider
Render State - Snapshot of slider state passed to a custom renderer.
- Sortable
List - A low-level, delegate-driven list that supports reordering its own items via drag and drop.
- Sortable
Reorder Plan - Content-safe reorder plan for a sortable-list drop.
- Source
Metadata - Metadata for a given ScreenCaptureSource
- Splitter
- A controlled splitter primitive with caller-owned visuals.
- Splitter
Render State - Snapshot of splitter state passed to a custom renderer.
- Startup
Diagnostic Builder - Builder for content-safe startup diagnostics.
- Startup
Diagnostic Report - Content-safe startup diagnostics for logs, support bundles, and agents.
- Stateful
- A wrapper around an element that can store state, produced after assigning an ElementId.
- Storage
Cleanup Plan - Checked app-scoped storage cleanup plan.
- Storage
Cleanup Plan Builder - Builder for checked app-scoped storage cleanup plans.
- Storage
Cleanup Target - One checked app-scoped storage cleanup target.
- Storage
Cleanup Target Builder - Builder for one app-scoped storage cleanup target.
- Storage
Migration Plan - Checked app-scoped storage migration plan.
- Storage
Migration Plan Builder - Builder for checked app-scoped storage migration plans.
- Storage
Migration Step - One checked app-scoped storage migration step.
- Storage
Migration Step Builder - Builder for one app-scoped storage migration step.
- Stored
Credential - A credential read from the platform keychain.
- Strikethrough
Style - The properties that can be applied to a strikethrough.
- Strikethrough
Style Refinement - A partial-update type for [
#ident]. - Stroke
- Stroke styling for immediate-mode canvas drawing.
- Stroke
Dash - Stroke dash settings for canvas stroke operations.
- Stroke
Options - Parameters for the tessellator.
- Style
- The CSS styling that can be applied to an element via the
Styledtrait - Style
Refinement - A partial-update type for [
#ident]. - Styled
Text - Renders text with runs of different styles.
- Submit
- Submit the current field value.
- Subscription
- A handle to a subscription created by GPUI. When dropped, the subscription is cancelled and the callback will no longer be invoked.
- Support
Diagnostics Builder - Builder for support diagnostics that are safe to copy into bug reports.
- Support
Diagnostics Snapshot - Privacy-aware support diagnostics collected from native app state.
- Surface
- A surface element.
- Svg
- An SVG element.
- System
Idle Policy - A checked policy for deciding when the system has been idle long enough.
- System
Idle Policy Builder - Builder for checked system-idle policies.
- System
Power Monitor - Active system-power monitor returned by
App::watch_system_power. - System
Power Monitor Builder - Builder for monitoring system power, idle, and motion-preference changes.
- System
Power Monitor Descriptor - Cloneable, side-effect-free summary of a checked system power monitor setup.
- System
Power Snapshot - Snapshot of system state relevant to adaptive rendering and background work.
- System
Power Source Query Builder - Builder for checked system power-source queries.
- System
Power Source Snapshot - Snapshot of the current battery/external-power source.
- System
Window TabController - A controller for managing window tabs.
- TabBackward
- Apply the backward Tab behavior for the configured key policy.
- TabForward
- Apply the forward Tab behavior for the configured key policy.
- TabItem
- A single tab item with a label and panel body.
- TabRender
State - Snapshot of a tab trigger passed to a custom renderer.
- Tabs
- A controlled tabs primitive with caller-owned tab bodies and panels.
- Task
- Task is a primitive that allows work to happen in the background.
- Task
Label - A task label is an opaque identifier that you can use to refer to a task in tests.
- Text
Checking Request - Text checking features requested for an editable text region.
- Text
Checking Request Builder - Builder for checked spellcheck/grammar/autocorrect requests.
- Text
Input - A controlled editable text field.
- Text
Input Controller - External control handle for a canvas-hosted text input.
- Text
Input End - Offer a plain End key to an embedded editor before caret fallback.
- Text
Input Home - Offer a plain Home key to an embedded editor before caret fallback.
- Text
Input KeyEvent - A structured canvas-editor command emitted by a text input.
- Text
Input Navigation Event - A typed text-input caret or selection navigation request.
- Text
Input Render Line - A single shaped line and its paint origin for a custom text input renderer.
- Text
Input Render State - Snapshot of text input paint state passed to a custom renderer.
- Text
Input Selection - A bounded UTF-8 selection snapshot emitted by a canvas text input.
- Text
Layout - The Layout for TextElement. This can be used to map indices to pixels and vice versa.
- TextRun
- A styled run of text, for use in
crate::TextLayout. - Text
Shadow - A shadow effect applied to text, rendered by painting glyphs twice.
- Text
Style - The properties that can be used to style text in GPUI
- Text
Style Refinement - A partial-update type for [
#ident]. - Text
System - The GPUI text rendering sub system.
- Tiling
- A type to describe which sides of the window are currently tiled in some way
- Timeout
- Error returned by with_timeout when the timeout duration elapsed before the future resolved
- Timer
- A future or stream that emits timed events.
- Titlebar
Options - The options that can be configured for a windowโs titlebar
- Toast
- Configuration for a single toast notification.
- Toast
Stack - A stack of toast notifications that manages display and auto-dismissal.
- Toggle
- A controlled toggle switch form control.
- Toggle
Render State - Snapshot of toggle state passed to a custom renderer.
- Tooltip
Anchor - Anchor-relative positioning for a tooltip: the triggerโs window-space bounds plus the requested side and alignment. When present this replaces the default cursor-relative positioning.
- Tooltip
Id - An identifier for a tooltip.
- Trace
Event - A single trace event compatible with the Chrome Trace Event format.
- Trace
Session - Bounded, redacted trace-session descriptor for native app diagnostics.
- Trace
Session Builder - Builder for bounded, content-safe trace sessions.
- Tracer
- A tracer that collects trace events and can export them in Chrome Trace Event format.
- Transformation
- A transformation to apply to an SVG element.
- Transformation
Matrix - A data type representing a 2 dimensional transformation that can be applied to an element.
- Transition
Config - Configuration for implicit style transitions on an element.
- Trash
Request - Checked request to move a file or directory to the platform trash/recycle bin.
- Trash
Request Builder - Builder for checked platform trash/recycle requests.
- Tray
AppBuilder - Builder for installing tray menu, tooltip, panel behavior, and background lifetime together.
- Tray
AppConfig - A validated system-tray/background-app configuration.
- Tray
Icon Builder - Builder for a checked system tray icon.
- Tray
Menu Builder - Builder for a system tray menu.
- Tray
Panel Placement Builder - Builder for resolving a tray-panel placement with a safe fallback.
- Tray
Tooltip Builder - Builder for a system tray tooltip.
- Tree
Item - A focusable tree item primitive with controlled selected and expanded state.
- UTF16
Selection - A struct representing a selection in a text buffer, in UTF16 characters. This is different from a range because the head may be before the tail.
- Underline
Style - The properties that can be applied to an underline.
- Underline
Style Refinement - A partial-update type for [
#ident]. - Undo
- Restore the previous edit snapshot.
- Uniform
List - A list element for efficiently laying out and displaying a list of uniform-height elements.
- Uniform
List Frame State - Frame state used by the UniformList.
- Uniform
List Scroll Handle - A handle for controlling the scroll position of a uniform list. This should be stored in your view and passed to the uniform_list on each frame.
- Uniform
List Scroll State - Update
Info - Information about an available update.
- Update
Info Builder - Builder for update metadata entries.
- UrlScheme
Registration Builder - Builder for registering one or more custom URL schemes.
- User
Attention Builder - Builder for requesting user attention from the OS.
- User
Attention Cancel Builder - Checked request for cancelling an active user-attention signal.
- User
Attention Plan - Checked user-attention request before platform mutation.
- User
Attention Request - Active user-attention request returned by
App::request_user_attention_with. - Visual
Capture Handoff - Checked native-first visual capture handoff for screenshots, thumbnails, and evidence.
- Visual
Capture Handoff Builder - Builder for checked visual capture handoffs.
- Weak
Entity - A weak reference to a entity of the given type.
- Weak
Focus Handle - A weak reference to a focus handle.
- WebView
- A native embedded WebView element.
- WebView
Bridge Message - A small, native desktop envelope for messages crossing a WebView island.
- WebView
Capability Entry - Support entry for one
WebViewCapability. - WebView
Capability Report - Operation-level WebView support for one concrete backend.
- WebView
Clipboard Event - Event payload emitted by
webview_clipboard_event_bridge_script. - WebView
Console Event - Event payload emitted by
webview_console_bridge_script. - WebView
Context Menu Event - Event payload emitted by
webview_context_menu_bridge_script. - WebView
Controller - A small command handle for an embedded WebView.
- WebView
Cookie - Cookie data read from an embedded WebView.
- WebView
Dialog Event - Event payload emitted by
webview_dialog_bridge_script. - WebView
Document Form - A form discovered in a WebView document snapshot.
- WebView
Document Heading - A heading discovered in a WebView document snapshot.
- WebView
Document Image - An image discovered in a WebView document snapshot.
- WebView
Document Link - A link discovered in a WebView document snapshot.
- WebView
Document Snapshot - Structured snapshot of a WebView document for diagnostics and agents.
- WebView
DomImage Capture Options - DOM-to-SVG capture options for
WebViewController::capture_dom_image. - WebView
Download Completed - Completion details for a WebView download.
- WebView
Download Trigger Result - Result for a WebView browser download trigger command.
- WebView
Element Attribute - An attribute captured from a WebView DOM element snapshot.
- WebView
Element Rect - Bounding rectangle for a WebView DOM element in viewport CSS pixels.
- WebView
Element Snapshot - Snapshot of one same-document WebView element selected by CSS selector.
- WebView
Favicon Event - Event payload emitted by
webview_favicon_bridge_script. - WebView
File Input Event - Event payload emitted by
webview_file_input_bridge_script. - WebView
File Input File - Browser file metadata from an
<input type="file">selection. - WebView
Find Event - Event payload emitted by the internal
webview_find_result_bridge_scripthelper. - WebView
Find Options - Options for finding text inside a WebView document.
- WebView
Find Result - Result for an native desktop WebView find operation.
- WebView
Form Control State - Snapshot of a browser form control emitted by
webview_form_bridge_script. - WebView
Form Event - Event payload emitted by
webview_form_bridge_script. - WebView
Keyboard Event - Event payload emitted by
webview_keyboard_bridge_script. - WebView
Lifecycle Event - Event payload emitted by
webview_lifecycle_bridge_script. - WebView
Location Event - Event payload emitted by
webview_location_bridge_script. - WebView
Media Element Options - Browser media element options applied by
WebViewController::set_media_options. - WebView
Media Element State - Snapshot of a browser
<audio>or<video>element inside a WebView. - WebView
Media Event - Event payload emitted by
webview_media_event_bridge_script. - WebView
Media Frame Capture Options - Canvas capture options for
WebViewController::capture_media_frame. - WebView
Media Text Cue - A browser text-track cue active for a WebView media element.
- WebView
Media Text Track Options - Browser
<track>options added byWebViewController::add_media_text_track. - WebView
Media Text Track State - Browser text-track state for a WebView media element.
- WebView
Media Time Range - A buffered media time range reported by a browser
<audio>or<video>element. - WebView
Native Permission Request - Security context supplied to a native WebView permission policy.
- WebView
Network Event - Event payload emitted by
webview_network_bridge_script. - WebView
Options - Configuration for a WebView island.
- WebView
Permission Request - Event payload emitted by
webview_permission_bridge_script. - WebView
Pointer Event - Event payload emitted by
webview_pointer_bridge_script. - WebView
Resource Event - Event payload emitted by
webview_resource_bridge_script. - WebView
Scroll Event - Event payload emitted by
webview_scroll_bridge_script. - WebView
Selection Event - Event payload emitted by
webview_selection_bridge_script. - WebView
Storage Area Snapshot - Snapshot of one browser Web Storage area.
- WebView
Storage Entry - A key/value entry from a WebView storage snapshot.
- WebView
Storage Event - Event payload emitted by
webview_storage_bridge_script. - WebView
Storage Mutation Result - Result for a WebView Web Storage mutation command.
- WebView
Storage Snapshot - On-demand snapshot of browser Web Storage for a WebView document.
- Window
- Holds the state for a specific window.
- Window
AppId Builder - Builder for validated platform window app identifiers.
- Window
Atlas Budget - Checked memory budget for a windowโs glyph/sprite atlas.
- Window
Atlas Budget Builder - Builder for checked window atlas memory budgets.
- Window
Autoscroll Request - Checked autoscroll bounds for native drag, selection, and editor surfaces.
- Window
Autoscroll Request Builder - Builder for checked native autoscroll requests.
- Window
Chrome Command - Checked custom-window-chrome command for titlebars, menus, move, and resize.
- Window
Client Inset - Checked custom-chrome client inset for native window decorations.
- Window
Client Inset Builder - Builder for checked client-side decoration insets.
- Window
Content Protection - Checked content-protection policy for a native window.
- Window
Content Protection Builder - Builder for checked window content-protection policy.
- Window
Content Size - Checked runtime content size for a native window.
- Window
Content Size Builder - Builder for checked runtime native window resizing.
- Window
Controls - What window controls this platform supports
- Window
Cursor Style Command - Checked whole-window cursor style request for generated native UI surfaces.
- Window
Document State - Checked document chrome state for editor and document windows.
- Window
Document State Builder - Builder for checked document-window chrome state.
- Window
Handle - A handle to a window with a specific root view type. Note that this does not keep the window alive on its own.
- Window
Id - A unique identifier for a window.
- Window
Intent Builder - Checked builder for window-management window intent presets.
- Window
Interaction Command - Checked window interaction command for visibility, focus, and mouse pass-through.
- Window
Management Handoff - Checked native window-management handoff for generated desktop shells.
- Window
Management Handoff Builder - Builder for checked native window-management handoffs.
- Window
Opacity - Checked native window opacity.
- Window
Opacity Builder - Builder for checked native window opacity.
- Window
Options - The variables that can be configured when creating a new window
- Window
Options Builder - Builder for
WindowOptions. - Window
Placement - Resolved desktop placement for a window or panel.
- Window
Placement Builder - Builder for resolving a semantic desktop window placement into screen bounds.
- Window
Presentation Policy - Checked presentation/kiosk policy for a native window.
- Window
Presentation Policy Builder - Builder for checked window presentation/kiosk policy.
- Window
Progress Builder - Builder for checked taskbar/dock progress state.
- Window
RemSize - Checked base
remsize for native window UI scaling. - Window
RemSize Builder - Builder for checked native window rem-size changes.
- Window
Render Policy - Checked render policy for native window performance behavior.
- Window
Render Policy Builder - Builder for checked native window render/performance policy.
- Window
Runtime Snapshot - Runtime snapshot of native window state for diagnostics, chrome, and agents.
- Window
Runtime Snapshot Query Builder - Builder for checked runtime window snapshot queries.
- Window
State - A snapshot of a windowโs state for save/restore.
- Window
System UiCommand - Checked native system-UI command for editor, custom-titlebar, and desktop flows.
- Window
TabCommand - Checked native window-tab command for document and workspace flows.
- Window
Tabbing Identifier Builder - Builder for validated platform window tabbing identifiers.
- Window
Text System - The GPUI text layout subsystem.
- Window
Title Builder - Builder for validated platform window titles.
- WindowZ
Order Policy - Checked native z-order policy for native desktop always-on-top windows.
- WindowZ
Order Policy Builder - Builder for checked native z-order policy.
- Windows
File Association Declaration - Windows file association metadata shaped for installer/registry generation.
- Workspace
Close Builder - Builder for checked workspace closure.
- Workspace
Open Handoff - Checked handoff for project/file opens after dialog, drop, deep link, or recent-document intake.
- Workspace
Open Handoff Builder - Builder for a checked project/file open handoff.
- Wrap
Boundary - A boundary at which a line was wrapped
- Wrapped
Line - A line of text that has been shaped, decorated, and wrapped by the text layout system.
- Wrapped
Line Layout - A line of text that has been wrapped to fit a given width
Enumsยง
- Absolute
Length - Represents an absolute length in pixels or rems.
- Action
Build Error - Error type for
Keystroke::parse. This is used instead ofanyhow::Errorso that Kael can use markdown to display it. - Advanced
Input Next Action - Next action for checked advanced-input handoffs.
- Advanced
Input Request - Advanced input request for native games, creative tools, canvases, and device-heavy apps.
- Align
Content - Sets the distribution of space between and around content items For Flexbox it controls alignment in the cross axis For Grid it controls alignment in the block axis
- Align
Items - Used to control how child nodes are aligned. For Flexbox it controls alignment in the cross axis For Grid it controls alignment in the block axis
- Anchored
FitMode - Which algorithm to use when fitting the anchored element to be inside the window.
- Anchored
Position Mode - Which algorithm to use when positioning the anchored element.
- AppChrome
Surface Next Action - Next action for a checked native app-chrome workflow.
- AppChrome
Surface Request - A checked request in a generated native app-chrome workflow.
- AppDistribution
Format - Package artifact format.
- AppDistribution
Platform - Operating system target for package artifact generation.
- AppIcon
Format - Icon file format.
- AppIcon
Purpose - Semantic use for a package/runtime icon asset.
- AppIdentity
Metadata Next Action - Recommended next implementation action for app identity handoffs.
- AppIdentity
Metadata Request - One checked app identity, packaging, or registration request for builders and agents.
- AppLifecycle
Command Kind - App-level lifecycle or activation command.
- AppLifecycle
Startup Next Action - Next action for a checked lifecycle/startup handoff.
- AppLifecycle
Startup Request - Checked lifecycle/startup request for generated app setup and activation flows.
- AppPackage
Readiness Issue Kind - Kind of package readiness finding.
- AppPackage
Readiness Severity - Severity for a package readiness finding.
- AppPath
Role - Well-known application path roles for app-owned storage and user handoff locations.
- AppPrivacy
Permission Kind - Privacy-sensitive capability declared for packaging metadata.
- AppResource
Budget Issue Kind - Kind of resource budget issue found in a process snapshot.
- AppStorage
Durability - Durability policy for an app storage entry.
- AppStorage
Kind - Storage class for app-owned persistent or rebuildable data.
- AppStorage
Session Next Action - The next product action needed for a checked app storage/session flow.
- AppStorage
Session Request - A checked app storage/session descriptor for builder and agent flows.
- AppUpdate
Action - Recommended UI action for the current update state.
- AppUpdate
Channel - Release channel used by app update UI and diagnostics.
- AppUpdate
Offer Kind - Result of applying app update policy to one discovered release.
- AppUpdate
Offer Reason - Reason an update was offered, deferred, or blocked.
- AppUpdate
Phase - Current state of an app update flow.
- AppWindow
Capture Format - Output encoding requested for an app-owned visual capture.
- AppWindow
Capture Target - Target for an app-owned visual capture request.
- ArcCow
- A value that is either borrowed or owned through an atomically reference-counted pointer.
- Asset
Logger - An asset Loader which logs the
Errvariant of aResultduring loading - Attention
Type - The type of user attention to request from the OS.
- Audio
Playback Source Kind - Source kind for checked native audio playback descriptors.
- Audio
Workflow Next Action - Next action for checked audio workflow handoffs.
- Audio
Workflow Request - Native audio workflow request for playback, recording, waveform evidence, or fallback routing.
- Available
Space - The space available for an element to be laid out in
- Axis
- Axis in a 2D cartesian space.
- Biometric
Kind - The kind of biometric authentication available.
- Biometric
Status - The availability status of biometric authentication.
- Blend
Mode - The blend mode to apply when rendering a quad.
- Border
Style - The style of a border.
- Browser
Profile Storage Destination - Target route for browser-profile storage when replacing Electron profile usage.
- Browser
Profile Storage Kind - Browser-profile storage classes that Electron apps commonly use implicitly.
- Browser
Profile Storage Next Action - Next app-builder action for a browser-profile storage bridge plan.
- Browser
WebView Loading - Loading strategy for an iframe-backed browser WebView.
- Browser
WebView Sandbox - Sandbox strength for an iframe-backed WebView in a Kael browser build.
- Click
Event - A click event, generated when a mouse button or keyboard button is pressed and released.
- Clip
Shape - A non-rectangular clip region. Coordinates are in logical pixels, in the same space as the elementโs bounds.
- Clipboard
Editing Next Action - The next product action needed for a checked clipboard or edit-command flow.
- Clipboard
Editing Request - A checked clipboard or edit-command descriptor for builder and agent flows.
- Clipboard
Entry - Either a ClipboardString or a ClipboardImage
- Color
Space - A color space for color interpolation.
- Corner
- Identifies a corner of a 2d box.
- Crash
Reporting Next Action - Next action for crash-reporting and diagnostics handoffs.
- Crash
Reporting Request - Crash-reporting workflow requests that should be checked before side effects.
- Cursor
Style - The style of the cursor (pointer)
- Data
Transfer Drop Intake Next Action - Next action for a checked DataTransfer-style incoming drop.
- Date
Picker Navigation Direction - Direction of a date picker navigation button.
- Decorations
- A type to describe how this window is currently configured
- Default
Handler Scope - Whether a default-handler registration plan targets the current user or the system.
- Definite
Length - A non-auto length that can be defined in pixels, rems, or percent of parent.
- Desktop
Shell Chrome Next Action - Next shell/chrome action a builder or agent should take.
- Desktop
Shell Chrome Request - A shell/chrome request that often spans several Electron-style app APIs.
- Developer
Observability Next Action - Next action for a checked developer tools and observability handoff.
- Developer
Observability Request - Checked request inside a developer tools and observability handoff.
- Device
Access Kind - Native device access category.
- Dialog
Kind - The kind of a native dialog.
- Dispatch
Phase - Represents the two different phases when dispatching events.
- Display
- Sets the layout used for the children of this node
- Display
Query Target - Which display or displays a query should return.
- Display
Topology Next Action - Recommended next action for a screen/display topology handoff.
- Display
Topology Request - Unit of work covered by a checked screen/display topology handoff.
- Document
Export Destination - Where an exported document should be delivered.
- Document
Export Format - Document export formats for native PDF export and save-page flows.
- Document
Export Request - A checked document export request for native print jobs or WebView-hosted documents.
- Document
Output Next Action - The next platform action a checked document output request needs.
- Document
Output Request - A print or export descriptor ready for a document-output implementation.
- Document
Zoom Mode - Native document zoom behavior requested by a handoff.
- Download
Destination Next Action - Next app-builder action for a checked download destination plan.
- Download
Existing File Policy - Policy for destinations that already exist before an app-owned download starts.
- Download
Handoff Next Action - Recommended next action for an app-owned download handoff.
- Drag
Drop Transfer Next Action - The next product action needed for a checked drag/drop transfer flow.
- Drag
Drop Transfer Request - A checked drag/drop descriptor for builder and agent flows.
- Element
Id - An identifier for an
Element. - Embedded
Hosted Pane Profile - Explicit hosted-pane profile for embedded WebView islands.
- Embedded
Hosted View Next Action - Next action for a checked embedded-hosted-view workflow.
- Embedded
Hosted View Request - A checked request in an embedded-hosted-view workflow.
- File
Association Role - How strongly an app claims a file association.
- File
Dialog Next Action - Next action for a checked file-dialog workflow.
- File
Dialog Request - A checked request in a generated file-dialog workflow.
- File
Drop Event - A file drop event from the platform, generated when files are dragged and dropped onto the window.
- File
Drop Path Kind - Path kind accepted by a file-drop intent.
- File
Drop Purpose - Semantic purpose for a native file drop.
- File
Export Drag Item - Data source for an app-owned outbound file drag/export.
- File
Icon Size - Requested native file icon size.
- File
Intake Kind - Coarse content kind for app-owned file intake routing.
- File
Operation Handoff Request - One request in a checked file operation handoff.
- File
Operation Kind - App-owned filesystem operation kind.
- File
Operation Next Action - Next action for checked file operation handoffs.
- File
Watch Event - A file-system change delivered by
FileWatcher. - Fill
- The kinds of fill that can be applied to a shape.
- Fill
Rule - The fill rule defines how to determine what is inside and what is outside of the shape.
- Find
Zoom Direction - Direction for native find-result navigation.
- Find
Zoom Next Action - Recommended next implementation move for a find/zoom handoff.
- Find
Zoom Request - Unit of work covered by a checked find/zoom handoff.
- Flex
Direction - The default behavior is
FlexDirection::Row. - Flex
Wrap - Controls whether flex items are forced onto one line or can wrap onto multiple lines.
- Font
Style - Allows italic or oblique faces to be selected.
- Form
Field Kind - Native form control categories covered by a checked form handoff.
- Form
Validation Next Action - Recommended next implementation move for a form-validation handoff.
- Form
Validation Request - Unit of work covered by a native form-validation handoff.
- Frame
Damage - The region of a frame that changed relative to a previously presented frame.
- Gesture
Input Kind - Gesture class expected by an app-owned native surface.
- Graphics
Canvas Next Action - Recommended next implementation action for graphics/canvas handoffs.
- Graphics
Canvas Request - Checked graphics/canvas unit of work for native-first generation.
- Graphics
Canvas Surface Kind - Graphics surface family covered by a checked graphics/canvas handoff.
- Grid
Auto Flow - Controls how the grid auto-placement algorithm flows items into the grid
(CSS
grid-auto-flow). - Grid
Placement - The placement of an item within a grid layoutโs column or row.
- Grid
Track - The direction of the flexbox layout main axis.
- Grid
Track Max - The upper bound of a
minmax()grid track. - Grid
Track Min - The lower bound of a
minmax()grid track.frunits are not valid as a minimum. - Hardware
Device Next Action - Recommended next implementation action for hardware-device handoffs.
- Hardware
Device Request - Unit of work covered by a checked hardware-device handoff.
- Hitbox
Behavior - How the hitbox affects mouse behavior.
- Hosted
Visual Capture Kind - Hosted visual capture kind for scoped WebView-owned evidence.
- Image
Asset Loader - An image loader for the GPUI asset system
- Image
Cache Error - An error that can occur when interacting with the image cache.
- Image
Cache Item - An image cache item
- Image
Format - One of the editorโs supported image formats (e.g. PNG, JPEG) - used when dealing with images in the clipboard
- Image
Icon Asset Next Action - Recommended next action for native image/icon handoffs.
- Image
Icon Asset Request - Unit of work covered by a checked native image/icon asset handoff.
- Image
Icon Asset Route - App-owned native image route to prepare before browser image fallbacks.
- Image
Source - A source of image content.
- KeyBinding
Context Predicate - A datastructure for resolving whether an action should be dispatched Representing a small language for describing which contexts correspond to which actions.
- Keyboard
Button - An enum representing the keyboard button that was pressed for a click event.
- Launch
Environment Next Action - Recommended next implementation action for launch/environment handoffs.
- Launch
Environment Request - One checked launch/environment startup request for builders and agents.
- Layer
Placement - Controls how a layer is placed inside a
LayerStack. - Layout
Styling Next Action - Next action for a checked layout/styling/animation workflow.
- Layout
Styling Request - A checked request in a native layout, styling, animation, and effects workflow.
- Length
- A length that can be defined in pixels, rems, percent of parent, or auto.
- LineCap
- Line cap as defined by the SVG specification.
- Line
Fragment - A fragment of a line that can be wrapped.
- Line
Join - Line join as defined by the SVG specification.
- Linux
Package Format - Supported Linux packaging formats for auto-update.
- List
Alignment - Whether the list is scrolling from top to bottom or bottom to top.
- List
Horizontal Sizing Behavior - The horizontal sizing behavior to apply during layout.
- List
Sizing Behavior - The sizing behavior to apply during layout.
- Locale
Text Direction - Text direction inferred from a locale language.
- Localization
Text Next Action - Next localization/text action for native-first app generation.
- Localization
Text Request - Localization/text workflow requests a generated app can route before side effects.
- Location
Accuracy - Requested location accuracy for native geolocation.
- Loop
Mode - The loop policy used by a Lottie player.
- Lottie
Asset Loader - Asset loader for decoded Lottie animations.
- Lottie
Asset Source - Internal asset-cache key used for Lottie resource loading.
- Lottie
Error - An error that can occur when loading or rendering a Lottie animation.
- Lottie
Source - A source of Lottie animation content.
- Media
KeyEvent - Media key events from hardware media keys or OS media controls.
- Menu
Command Next Action - Next action for a checked menu/command workflow.
- Menu
Command Request - A checked request in a generated native menu workflow.
- Menu
Item - The different kinds of items that can be in a menu
- Message
Dialog Next Action - Next action for checked native message-dialog and prompt flows.
- Message
Dialog Request - Checked request inside a native message-dialog and prompt handoff.
- Mouse
Button - An enum representing the mouse button that was pressed.
- Native
Theme Adaptation - Structured UI adaptation signal derived from native theme, accessibility, and power state.
- Navigation
Direction - A navigation direction, such as back or forward.
- Navigation
Handoff Next Action - Recommended next implementation action for a navigation handoff.
- Navigation
Handoff Request - Unit of work covered by a checked navigation handoff.
- Navigation
Policy - Controls whether a WebView navigation attempt should continue.
- Network
Status - The current network connectivity status.
- Notification
Action Event - Action event emitted by a checked desktop notification callback.
- Notification
Action Follow UpNext Action - Next app-builder action after a notification action callback fires.
- Notification
Feature - Notification feature used when checking how a builder maps to a platform backend.
- Notification
Flow Next Action - Next app-builder action for an OS notification flow.
- Notification
Urgency - Delivery urgency for OS-level notifications.
- Object
Fit - How to fit the image into the bounds of the element.
- Open
Request Kind - The classified kind of an OS open request.
- Open
Request Route Next Action - Next app-builder action after classifying OS open requests.
- OsAction
- OS actions are actions that are recognized by the operating system This allows the operating system to provide specialized behavior for these actions
- Overflow
- How children overflowing their container should affect layout
- Owned
Menu Item - The different kinds of items that can be in a menu
- Packaging
Update Next Action - Recommended next implementation action for packaging/update handoffs.
- Packaging
Update Request - One checked packaging, signing, updater, restart, or crash-reporting request.
- Path
Style - Style of the PathBuilder
- Performance
Evidence Next Action - Next action for checked performance and resource-evidence workflows.
- Performance
Evidence Request - Checked request inside a performance and resource-evidence handoff.
- Permission
Status - The status of a system permission.
- Platform
Input - An enum corresponding to all kinds of platform input events.
- Playback
State - The playback state for a Lottie animation.
- Pointer
Input Capability - Pointer affordance class expected by an app-owned native surface.
- Pointer
Phase - Lifecycle phase of a rich pointer event.
- Pointer
Type - Physical pointer device category.
- Position
- The positioning strategy for this item.
- Power
Mode - The systemโs current power policy.
- Power
Save Blocker Kind - The kind of power save blocker to create.
- Power
Theme Idle Next Action - Recommended next implementation action for a power/theme/idle handoff.
- Power
Theme Idle Request - Unit of work covered by a checked power/theme/idle handoff.
- Print
Dialog Mode - How a native print job should be dispatched.
- Print
Image Fit - How to fit an image into a print image bounds rectangle.
- Print
Orientation - Orientation metadata for a print job.
- Print
Paper Size - Common paper sizes expressed in print points.
- Print
Request - A checked print request for native print jobs or WebView-hosted documents.
- Progress
BarState - The state of a taskbar/dock progress bar for a window.
- Progress
Indicator Kind - Progress indicator state for app-owned operations.
- Prompt
Button - Prompt Button
- Prompt
Level - What kind of prompt styling to show
- Resize
Edge - Which part of the window to resize
- Resource
- An enum representing
- Responsive
Layout Mode - Native layout strategy to use at a responsive breakpoint.
- Scroll
Delta - The scroll delta for a scroll wheel event.
- Scroll
Strategy - Where to place the element scrolled to.
- Secure
Credential Next Action - Recommended next implementation action for secure credential handoffs.
- Secure
Credential Request - One checked secure-credential request for builders and agents.
- Security
Permission Next Action - Next action for a checked security and permission policy handoff.
- Security
Permission Request - Checked request inside a security and permission policy handoff.
- Shell
Target - A platform shell target that can be opened or revealed by the OS.
- Shortcut
Input Next Action - Recommended next action for shortcut/input handoffs.
- Shortcut
Input Request - Unit of work covered by a checked shortcut/input handoff.
- Single
Instance Launch - Outcome of a single-instance launch attempt.
- Startup
Mode - Startup mode used by launch diagnostics and generated startup routing.
- Storage
Cleanup Kind - App-scoped storage cleanup target class.
- Storage
Migration Kind - App-scoped storage migration operation.
- Surface
Source - A source of a surfaceโs content.
- System
Idle Evaluation - Result of evaluating system idle time against a policy.
- System
Menu Type - The type of system menu
- System
Power Event - System power state change events.
- System
Power Source - The systemโs current external-power or battery source.
- Text
Align - How to align text within the element
- Text
Input KeyOutcome - The semantic result of a text-input key command.
- Text
Input KeyPolicy - Keyboard behavior used by a text input embedded in a canvas editor.
- Text
Input KeyTrigger - The physical key chord that produced a text-input command.
- Text
Input Navigation Key - Caret or selection navigation keys an embedded editor may consume before native movement.
- Text
Overflow - How to truncate text that overflows the width of the element
- Toast
Position - Position where toasts appear on screen.
- Tooltip
Align - How a tooltip should be aligned along the side of its anchor bounds.
- Tooltip
Focus Behavior - Controls whether a tooltip also opens when its trigger receives focus.
- Tooltip
Side - The side of the anchor bounds a tooltip should be placed on.
- Touch
Phase - The phase of a touch motion event. Based on the winit enum of the same name.
- Trace
Phase - The phase of a trace event in the Chrome Trace Event format.
- Trace
Session Kind - Category of native runtime activity to include in a trace session.
- Transition
- A transition applied between navigation stack changes.
- Tray
Icon Event - Events that can occur on a system tray icon.
- Tray
Menu Item - A menu item for a system tray context menu.
- Update
Status - The current state of the auto-updater.
- Visibility
- The value of the visibility property, similar to the CSS property
visibility - Visual
Capture Next Action - Recommended next implementation action for visual capture handoffs.
- Visual
Capture Request - Unit of work covered by a checked visual capture handoff.
- WebView
Backend - Concrete embedded-browser backend selected for the current build/runtime.
- WebView
Capability - One operation in Kaelโs portable WebView contract.
- WebView
Download Policy - Controls whether a WebView download should proceed and where it should save.
- WebView
Drag Drop Event - A file drag/drop event delivered to a WebView island.
- WebView
Drag Drop Policy - Controls whether a WebView drag/drop event should reach browser defaults.
- WebView
Edit Command - Browser edit command for hosted inputs and editable documents.
- WebView
Media Command - Selector-scoped browser media command for
WebViewController::media_command. - WebView
NewWindow Policy - Controls how a WebView should handle
window.openand target-blank requests. - WebView
Page Load Event - Page loading lifecycle event for an embedded WebView.
- WebView
Permission Decision - App decision for both native WebView permission policy and JavaScript permission preflighting.
- WebView
Permission Frame - Frame context attached to a native WebView permission request.
- WebView
Permission Kind - Permission category requested by the native embedded-browser engine.
- WebView
Permission Origin Source - How accurately a native WebView backend identified the permission origin.
- WebView
Stop Find Action - Action to perform when stopping an active WebView find session.
- WebView
Storage Area - Browser Web Storage area selected by WebView storage helpers.
- White
Space - How to handle whitespace in text
- Window
Appearance - The appearance of the window, as defined by the operating system.
- Window
Background Appearance - The appearance of the background of the window itself, when there is no content or the content is transparent.
- Window
Bounds - Represents the status of how a window should be opened.
- Window
Capture Error - A typed failure returned when exporting the rendered window scene.
- Window
Chrome Command Kind - Window-manager/custom-chrome command for native desktop frameless windows.
- Window
Close Behavior - How the application should behave when all windows are closed.
- Window
Content Protection Mode - Desired capture/privacy behavior for a native window.
- Window
Control Area - A type of window control area that corresponds to the platform window.
- Window
Decorations - A type to describe the appearance of a window
- Window
Intent Kind - High-level intent for a native window.
- Window
Interaction Command Kind - Window-level interaction command for native desktop window show/hide/focus flows.
- Window
Kind - The kind of window to create
- Window
Management Next Action - Next action for a checked native window-management handoff.
- Window
Management Request - Checked request inside an Electron-style window-management handoff.
- Window
Position - A semantic window position for positioning windows relative to the screen.
- Window
Presentation Mode - Desired presentation behavior for a native window.
- Window
System UiCommand Kind - Native system-UI command for platform window affordances.
- Window
TabCommand Kind - Native window-tab command for document and workspace window management.
- Workspace
Open Next Action - Next action for an opened set of app-owned paths.
Constantsยง
- AUTO_
SCROLL_ STEP_ PX - Distance to auto-scroll when dragging near an edge, in pixels per frame.
- AUTO_
SCROLL_ THRESHOLD_ PX - Edge band, in pixels, within which a drag triggers auto-scrolling.
- KEYSTROKE_
PARSE_ EXPECTED_ MESSAGE - Sentence explaining what keystroke parser expects, starting with โExpected โฆโ
- LOADING_
DELAY - The delay before showing the loading state.
- MAX_
GRADIENT_ STOPS - Number of gradient color stops the GPU pipeline carries per background.
- SHUTDOWN_
TIMEOUT - The duration for which futures returned from Context::on_app_quit can run before the application fully quits.
Traitsยง
- Action
- Actions are used to implement keyboard-driven UI. When you declare an action, you can bind keys to the action in the keymap and listeners for that action in the element tree.
- Along
- A trait for accessing the given unit along a certain axis.
- Animation
Ext - An extension trait for adding the animation wrapper to both Elements and Components
- AppContext
- The context trait, allows the different contexts in GPUI to be used interchangeably for certain operations.
- AsKeystroke
- This is a helper trait so that we can simplify the implementation of some functions
- Asset
- A trait for asynchronous asset loading.
- Asset
Source - A source of assets for this app to use.
- Borrow
AppContext - A helper trait for auto-implementing certain methods on contexts that can be used interchangeably.
- Element
- Implemented by types that participate in laying out and painting the contents of a window. Elements form a tree and are laid out according to web-based layout rules, as implemented by Taffy. You can create custom elements by implementing this trait, see the module-level documentation for more details.
- Entity
Input Handler - Implement this trait to allow views to handle textual input when implementing an editor, field, etc.
- Event
Emitter - A trait for tying together the types of a GPUI entity and the events it can emit.
- Flatten
- A flatten equivalent for anyhow
Results. - Focusable
- Focusable allows users of your view to easily focus it (using window.focus_view(cx, view))
- Future
Ext - Extensions for Future types that provide additional combinators and utilities.
- Global
- A marker trait for types that can be stored in GPUIโs global state.
- Half
- Provides a trait for types that can calculate half of their value.
- Image
Cache - An object that can handle the caching and unloading of images. Implementations of this trait should ensure that images are removed from all windows when they are no longer needed.
- Image
Cache Provider - An object that can create an ImageCache during the render phase. See the ImageCache trait for more information.
- Input
Event - An event from a platform input source.
- Input
Handler - Kaelโs interface for handling text input from the platformโs IME system This is currently a 1:1 exposure of the NSTextInputClient API:
- Input
Mask - A hook that can normalize a text edit before it is committed.
- Interactive
Element - A trait for elements that want to use the standard GPUI event handlers that donโt require any state.
- Into
Element - Implemented by any type that can be converted into an element.
- IsEmpty
- Reports whether a refinement contains any effective changes.
- IsZero
- A trait for checking if a value is zero.
- KeyEvent
- A key event from the platform.
- List
Delegate - Supplies item counts, estimated heights, and item rendering for a
RecyclingList. - Managed
View - ManagedView is a view (like a Modal, Popover, Menu, etc.) where the lifecycle of the view is handled by another view.
- Mouse
Event - A mouse event from the platform.
- Negate
- Provides a trait for types that can negate their values.
- Parent
Element - This is a helper trait to provide a uniform interface for constructing elements that can accept any number of any kind of child elements
- Platform
Display - A handle to a platformโs display, e.g. a monitor or laptop screen.
- Platform
Installer - Trait for platform-specific update installation.
- Platform
Keyboard Layout - A trait for platform-specific keyboard layouts
- Platform
Keyboard Mapper - A trait for platform-specific keyboard mappings
- Prompt
- A prompt that can be rendered in the window.
- Read
Global - A trait for reading a global value from the context.
- Refineable
- A trait for types that can be refined with partial updates.
- Render
- An object that can be drawn to the screen. This is the trait that distinguishes โviewsโ from
other entities. Views are
Entityโs whichimpl Renderand drawn to the screen. - Render
Once - You can derive
IntoElementon any type that implements this trait. It is used to construct reusablecomponentsout of plain data. Think of components as a recipe for a certain pattern of elements. RenderOnce allows you to invoke this pattern, without breaking the fluent builder pattern of the element APIs. - Screen
Capture Source - A source of on-screen video content that can be captured.
- Screen
Capture Stream - A video stream captured from a screen.
- Sortable
Delegate - Supplies item rendering and reorder behavior for a
SortableList. - Stateful
Interactive Element - A trait for elements that want to use the standard GPUI interactivity features that require state.
- Styled
- A trait for elements that can be styled. Use this to opt-in to a utility CSS-like styling API.
- Styled
Image - Style an image element.
- Tooltip
Content - Accepted content sources for tooltips on interactive elements.
- Transition
Animator - Renders a custom navigation transition.
- Uniform
List Decoration - A decoration for a
UniformList. This can be used for various things, such as rendering indent guides, or other visual effects. - Update
Global - A trait for updating a global value in the context.
- Visual
Context - This trait is used for the different visual contexts in GPUI that require a window to be present.
Functionsยง
- alert
- Construct a semantic alert container.
- anchored
- anchored gives you an element that will avoid overflowing the window bounds. Its children should have no margin to avoid measurement issues.
- apply_
clip_ mask_ bgra - Apply a coverage
maskto a tightly-packed 8-bit BGRA (or RGBA) pixel buffer in place, scaling each pixelโs alpha by its mask value. The visual effect is a clip: content is kept where the mask is1.0and cut where it is0.0, with anti-aliased edges in between.maskis row-major with one entry per pixel; extra pixels are left untouched. - apply_
reorder - Moves the item at
fromtotowithinitems, clampingtointo range. - auto
- Returns a
Lengthrepresenting an automatic length. - auto_
scroll_ distance - Returns the per-frame auto-scroll distance for a drag at
positionwithinbounds: negative near the top edge, positive near the bottom, zero in the middle. Shared so every sortable list auto-scrolls with the same feel. - background_
executor - Returns a background executor for the current platform.
- black
- Pure black in
Hsla - blue
- The color blue in
Hsla - bounds
- Create a bounds with the given origin and size
- button
- Construct a button primitive with caller-owned visuals.
- cached
- Reuses a child subtreeโs previous prepaint and paint output until one of its tracked entities changes.
- canvas
- Construct a canvas element.
- canvas_
with_ prepaint - Construct a canvas element from explicit prepaint and paint closures.
- capture_
crash_ report - Capture a
CrashReportfrom the current panic information. - checkbox
- Construct a controlled checkbox form control.
- clip_
path - Clip a child subtree to an arbitrary
ClipShape(circle, ellipse, or convex polygon). - combine_
highlights - Combine and merge the highlights and ranges in the two iterators.
- conic_
gradient - Creates a conic (sweep) gradient background.
- date_
picker - Construct a controlled popup-backed date picker.
- deferred
- Builds a
Deferredelement, which delays the layout and paint of its child. - dialog
- Construct a semantic dialog container.
- disclosure
- Construct a controlled disclosure primitive.
- div
- Construct a new
Divelement - effect_
layer - Wraps a child subtree and applies CSS-style
filtereffects to it by rendering the subtree to an offscreen tile and compositing it with a gaussian content blur and/or a drop shadow that follows the subtreeโs actual silhouette. - fallback_
prompt_ renderer - Use this function in conjunction with App::set_prompt_builder to force GPUI to always use the fallback prompt renderer.
- fill
- Creates a filled quad with the given bounds and background color.
- font
- Get a
Fontfor a given name. - generate_
list_ of_ all_ registered_ actions - Generate a list of all the registered actions. Useful for transforming the list of available actions into a format suited for static analysis such as in validating keymaps, or generating documentation.
- green
- The color green in
Hsla - guess_
compositor - Return which compositor weโre guessing weโll use. Does not attempt to connect to the given compositor
- hash
- Use a quick, non-cryptographically secure hash function to get an identifier from data
- hsla
- Construct an
Hslaobject from plain values - icon
- Create a built-in icon element from the generated icon atlas.
- image_
cache - An image cache element, all its child img elements will use the cache specified by this element.
Note that this could as simple as passing an
Entity<T: ImageCache> - img
- Create a new image element.
- is_
no_ action - Returns whether or not this action represents a removed key binding.
- label
- Construct a label primitive.
- linear_
color_ stop - Creates a new linear color stop.
- linear_
gradient - Creates a LinearGradient background color.
- link
- Construct a semantic hyperlink primitive.
- list
- Construct a new list element
- lottie
- Create a Lottie animation element.
- lru
- Constructs a bounded LRU image cache (holding at most
max_imagesdecoded images) keyed to the element state for the given ID. - menu
- Construct a semantic menu container.
- menu_
button - Construct a menu button primitive backed by an anchored popup menu.
- menu_
item - Construct a semantic menu item primitive.
- modal
- Construct a controlled modal primitive.
- multi_
stop_ linear_ gradient - Creates a linear gradient. The GPU pipeline carries 4 stops; longer stop lists are resampled to 4 with the first and last stops preserved.
- navigator
- Creates a navigator initialized with a single route.
- opaque_
grey - Opaque grey in
Hsla, values will be clamped to the range [0, 1] - outline
- Creates a rectangle outline with the given bounds, border color, and a 1px border width
- pane
- Construct a semantic pane container.
- parse_
update_ feed - Parse an update feed, auto-detecting Sparkle appcast XML vs JSON format.
- pattern_
slash - Creates a hash pattern background
- percentage
- Generate a
Radianfrom a percentage of a full circle. - phi
- Returns the Golden Ratio, i.e.
~(1.0 + sqrt(5.0)) / 2.0. - point
- Constructs a new
Point<T>with the given x and y coordinates. - popover
- Construct a controlled anchored popover primitive.
- progress
- Construct a progress indicator from the current value.
- px
- Constructs a
Pixelsvalue representing a length in pixels. - quad
- Creates a quad with the given parameters.
- radial_
gradient - Creates a radial gradient background.
- radians
- Create a
Radianfrom a raw value - radio_
group - Construct a controlled radio group from a current value and labeled options.
- recycling_
list - Lazily render a heterogeneous list with estimated heights for off-screen items.
- red
- The color red in
Hsla - relative
- Constructs a
DefiniteLengthrepresenting a relative fraction of a parent size. - rems
- Constructs a
Remsvalue representing a length in rems. - reorder_
target - Translates a drag from a source item to an insertion slot into the final
(from, to)index pair, orNonewhen the move is a no-op or out of range. - retain_
all - Constructs a retain-all image cache that uses the element state associated with the given ID.
- rgb
- Convert an RGB hex color code number to a color type
- rgba
- Convert an RGBA hex color code number to
Rgba - rich_
text - Creates a rich text element that supports styled spans, inline elements, and selection.
- scroll_
bar - Construct a scroll bar primitive bound to a scroll handle.
- select
- Construct a controlled combo box from the current value and labeled options.
- send_
activate_ to_ existing - Send an activation message to an already-running instance of the application.
- separator
- Construct a semantic separator primitive.
- size
- Constructs a new
Size<T>with the provided width and height. - slider
- Construct a controlled slider form control.
- solid_
background - Creates a solid background color.
- sortable_
auto_ scroll_ class - Coarse auto-scroll class for a drag position inside list bounds.
- sortable_
list - Creates a list with built-in internal drag-and-drop reordering.
- sortable_
reorder_ plan - Build a content-safe reorder plan from a source item and insertion slot.
- splitter
- Construct a controlled splitter primitive for resizable panes.
- stroke
- Construct a stroke with the default cap and join settings.
- surface
- Create a new surface element.
- svg
- Create a new SVG element.
- tabs
- Construct a controlled tabs primitive.
- text_
input - Construct an editable text field.
- toggle
- Construct a controlled toggle switch form control.
- toolbar
- Construct a semantic toolbar container.
- transparent_
black - Transparent black in
Hsla - transparent_
white - Transparent white in
Hsla - tree
- Construct a semantic tree container.
- tree_
item - Construct a semantic tree item primitive.
- try_
background_ executor - Attempts to create a background executor without panicking if platform initialization fails.
- uniform_
list - uniform_list provides lazy rendering for a set of items that are of uniform height. When rendered into a container with overflow-y: hidden and a fixed (or max) height, uniform_list will only render the visible subset of items.
- webview
- Creates a WebView element backed by the platformโs native embedded web content view.
- webview_
bridge_ script - JavaScript helper injected into a WebView island for bridge messaging.
- webview_
clipboard_ event_ bridge_ script - Build a script that forwards browser copy/cut/paste clipboard events.
- webview_
console_ bridge_ script - Build a script that forwards page console output through
window.kael. - webview_
context_ menu_ bridge_ script - Build a script that forwards browser
contextmenuevents throughwindow.kael. - webview_
controller - Creates a controller for a WebView element with the given identifier.
- webview_
dialog_ bridge_ script - Build a script that forwards browser dialogs and beforeunload prompts.
- webview_
favicon_ bridge_ script - Build a script that forwards favicon candidate changes through
window.kael. - webview_
file - Creates a WebView element from a local HTML/document file.
- webview_
file_ input_ bridge_ script - Build a script that forwards browser file-input selections through
window.kael. - webview_
file_ url - Build a
file://URL for a local WebView document. - webview_
file_ with_ options - Creates a local-file WebView with a reusable option bundle.
- webview_
form_ bridge_ script - Build a script that forwards browser form activity through
window.kael. - webview_
html - Creates a WebView element from an inline HTML document.
- webview_
html_ url - Build a
data:URL for an inline HTML document. - webview_
html_ with_ options - Creates an inline HTML WebView with a reusable option bundle.
- webview_
keyboard_ bridge_ script - Build a script that forwards browser keyboard/input events through
window.kael. - webview_
lifecycle_ bridge_ script - Build a script that forwards browser lifecycle/focus events through
window.kael. - webview_
location_ bridge_ script - Build a script that forwards same-document location changes through
window.kael. - webview_
media_ event_ bridge_ script - Build a script that forwards browser media element events through
window.kael. - webview_
navigation_ state_ bridge_ script - JavaScript helper that tracks same-document navigation stack state.
- webview_
network_ bridge_ script - Build a script that forwards
fetchandXMLHttpRequestoutcomes. - webview_
permission_ bridge_ script - Build a script that preflights browser permission requests through Kael.
- webview_
pointer_ bridge_ script - Build a script that forwards browser pointer context through
window.kael. - webview_
resource_ bridge_ script - Build a script that forwards browser resource timing and load/error activity.
- webview_
scroll_ bridge_ script - Build a script that forwards browser scroll/viewport snapshots through
window.kael. - webview_
selection_ bridge_ script - Build a script that forwards browser selection snapshots through
window.kael. - webview_
storage_ bridge_ script - Build a script that forwards Web Storage changes from hosted content.
- webview_
with_ options - Creates a WebView element with a reusable option bundle.
- white
- Pure white in
Hsla - write_
crash_ report - Write a crash report JSON file to the given directory.
- yellow
- The color yellow in
Hsla
Type Aliasesยง
- Align
Self - Used to control how the specified nodes is aligned.
Overrides the parent Nodeโs
AlignItemsproperty. For Flexbox it controls alignment in the cross axis For Grid it controls alignment in the block axis - Image
Loading Task - An image loading task associated with an image cache.
- ImgResource
Loader - A type alias to the resource loader that the
img()element uses. - Inspector
Renderer - Function set on
Appto render the inspector UI. - Justify
Content - Sets the distribution of space between and around content items For Flexbox it controls alignment in the main axis For Grid it controls alignment in the inline axis
- Justify
Items - Used to control how child nodes are aligned. Does not apply to Flexbox, and will be ignored if specified on a flex container For Grid it controls alignment in the inline axis
- Justify
Self - Used to control how the specified nodes is aligned.
Overrides the parent Nodeโs
JustifyItemsproperty. Does not apply to Flexbox, and will be ignored if specified on a flex child For Grid it controls alignment in the inline axis - Lottie
Resource Loader - A type alias to the resource loader that the
lottie()element uses. - Result
Result<T, Error>- Transform
- Alias for
euclid::default::Transform2D<f32>
Attribute Macrosยง
- test
#[kael::test]annotates test functions that run with Kael support.
Derive Macrosยง
- Action
- Derives Kaelโs
Actionprotocol implementation for a concrete type. - AppContext
- Derives
AppContextfor a type that holds a&mut App. - Into
Element - Derives
IntoElementfor a type that implementsRenderOnce. - Refineable
- Generates a partial-update type and
Refineableimplementation for a named struct. - Visual
Context - Derives
VisualContextfor anAppContextthat also holds a&mut Window.