⚠️ VeridianOS Kernel Documentation - This is low-level kernel code. All functions are unsafe unless explicitly marked otherwise. no_std

Module desktop_ext

Module desktop_ext 

Source
Expand description

Desktop Extension Modules

Provides advanced desktop functionality for the VeridianOS desktop environment:

  1. Clipboard Protocol – Wayland wl_data_device compatible clipboard with MIME type negotiation, primary selection, and history.
  2. Drag-and-Drop – wl_data_offer protocol with enter/leave/drop/motion events.
  3. Global Keyboard Shortcuts – Configurable key bindings with modifier masks.
  4. Theme Engine – Color schemes (light/dark/solarized/nord/dracula) with runtime switching.
  5. Font Rendering – TrueType parser with integer Bezier rasterization and glyph caching.
  6. CJK Unicode – Wide character detection, double-width cell rendering, and IME framework.

All math is integer-only (no floating point). Uses fixed-point 8.8 or 16.16 where fractional precision is needed.

Re-exports§

pub use cjk::char_width;
pub use cjk::is_cjk_wide;
pub use cjk::CellContent;
pub use cjk::ImeState;
pub use cjk::string_width;
pub use cjk::truncate_to_width;
pub use cjk::ImeCandidate;
pub use cjk::InputMethodEditor;
pub use clipboard::ClipboardManager;
pub use clipboard::ClipboardEntry;
pub use clipboard::ClipboardError;
pub use clipboard::ClipboardMime;
pub use clipboard::SelectionType;
pub use dnd::DndError;
pub use dnd::DndEvent;
pub use dnd::DndState;
pub use dnd::DndManager;
pub use dnd::DragSource;
pub use dnd::DropTarget;
pub use font_render::apply_hinting;
pub use font_render::rasterize_outline;
pub use font_render::render_glyph;
pub use font_render::GlyphBitmap;
pub use font_render::GlyphCache;
pub use font_render::GlyphContour;
pub use font_render::GlyphOutline;
pub use font_render::FontError;
pub use font_render::HeadTable;
pub use font_render::HheaTable;
pub use font_render::HintingMode;
pub use font_render::MaxpTable;
pub use font_render::OutlinePoint;
pub use font_render::SubpixelMode;
pub use font_render::TableEntry;
pub use font_render::TableTag;
pub use font_render::TtfParser;
pub use shortcuts::ShortcutManager;
pub use shortcuts::KeyBinding;
pub use shortcuts::KeyCode;
pub use shortcuts::ModifierMask;
pub use shortcuts::ShortcutAction;
pub use shortcuts::ShortcutPriority;
pub use theme::IconTheme;
pub use theme::StyleProperty;
pub use theme::ThemeColor;
pub use theme::ThemeColors;
pub use theme::ThemeManager;
pub use theme::ThemePreset;

Modules§

cjk
CJK Unicode / Wide Character Support
clipboard
Clipboard Protocol
dnd
Drag-and-Drop
font_render
TrueType Font Rendering
shortcuts
Global Keyboard Shortcuts
theme
Theme Engine