Skip to main content

Crate rdesktop_core

Crate rdesktop_core 

Source
Expand description

rdesktop-core: Core abstractions for the rdesktop dual-engine desktop framework.

This crate defines the renderer trait that both WebView and Chrome Embedded backends must implement, along with shared types for IPC, window management, and application lifecycle.

§Architecture Overview

rdesktop supports two modes:

  • Native mode: Opens a real window (WebView or Chrome Embedded)
  • Dev mode: Serves the app as a web page for browser-based development

Both modes share the same IPC and configuration types, so application code works identically in development and production.

Re-exports§

pub use app::App;
pub use app::AppBuilder;
pub use app::WindowContent;
pub use config::AppConfig;
pub use config::BundleConfig;
pub use config::CommandConfig;
pub use config::DevConfig;
pub use config::GlobalInputConfig;
pub use config::HotkeyConfig;
pub use config::RendererConfig;
pub use config::RendererKind as ConfigRendererKind;
pub use config::WindowConfig;
pub use config::WindowIcon;
pub use config::WindowKind;
pub use error::RdesktopError;
pub use error::Result;
pub use event::Event;
pub use global::Outbox;
pub use global::PushHandler;
pub use hotkeys::Hotkey;
pub use hotkeys::HotkeyHandler;
pub use hotkeys::HotkeyManager;
pub use hotkeys::Key;
pub use hotkeys::Modifiers;
pub use input::GlobalInput;
pub use input::GlobalInputEvent;
pub use input::GlobalInputHandler;
pub use input::KeyState;
pub use input::MouseButton;
pub use simulate::InputSimulator;
pub use ipc::IpcHandler;
pub use ipc::IpcMessage;
pub use ipc::IpcResponse;
pub use renderer::Renderer;
pub use renderer::RendererKind;
pub use renderer::ResizeEdge;
pub use window::WindowHandle;
pub use window_extras::apply_window_attributes;
pub use window_extras::window_icon;

Modules§

app
config
Application configuration for rdesktop.
error
event
global
Bridge that forwards global hotkey / input events into the renderer’s outbox, so the frontend receives them as unnamed window.__RDESKTOP_PUSH__ messages (matching the IPC contract used by the Node extension host).
hotkeys
Global hotkey manager — registers OS-level key combinations that fire even when the application window is not focused.
input
Global input hooks — raw keyboard and mouse events captured system-wide, regardless of which window is focused.
ipc
renderer
simulate
System-wide input simulation — programmatically inject keyboard and mouse events into the OS input stream, as if typed or clicked by a physical user.
window
window_extras
Platform-specific window attributes for deep desktop scenarios.