Expand description
Desktop Extension Modules
Provides advanced desktop functionality for the VeridianOS desktop environment:
- Clipboard Protocol – Wayland wl_data_device compatible clipboard with MIME type negotiation, primary selection, and history.
- Drag-and-Drop – wl_data_offer protocol with enter/leave/drop/motion events.
- Global Keyboard Shortcuts – Configurable key bindings with modifier masks.
- Theme Engine – Color schemes (light/dark/solarized/nord/dracula) with runtime switching.
- Font Rendering – TrueType parser with integer Bezier rasterization and glyph caching.
- 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;