The Style Manager provides complete visual customization of your CDE desktop environment with authentic Motif palettes and original backdrop patterns.
Opening Style Manager
Front Panel
Click the Style Manager icon (color palette) in the Front Panel
Keyboard
Press
Ctrl+Alt+S from anywhereDesktop Menu
Right-click desktop → Tools → Style Manager
Style Manager Modules
The Style Manager is organized into specialized modules (stylemanager.ts:21-44):
- Color
- Backdrop
- Font
- Keyboard
- Mouse
- Beep
- Window
- Screen
- Startup
Choose from 76 authentic Motif CDE palettes sourced from historical CDE systems.
Palettes are loaded from
cde_palettes.json containing authentic color combinations from the Common Desktop Environment.Color Palettes
Understanding CDE Palettes
Each palette contains 8 carefully coordinated colors (theme.ts:40-47):
Popular Palettes
Light Themes
Light Themes
LateSummer (Default)
- Classic CDE appearance
- Warm neutral tones
- Excellent readability
- Cool blue-gray palette
- Professional appearance
- Easy on eyes
- Classic gray theme
- Traditional CDE look
- Timeless design
Dark Themes
Dark Themes
Coalmine
- Very dark palette
- High contrast
- Excellent for night use
- Dark blue theme
- Reduced eye strain
- Modern aesthetic
- Medium-dark gray
- Balanced contrast
- Professional look
Colorful Themes
Colorful Themes
Broica
- Warm brown tones
- Earthy feel
- Unique character
- Earth tone palette
- Natural colors
- Subdued but distinctive
- Southwestern colors
- Warm terracotta
- Bold choice
Applying a Palette
Browse Palettes
Scroll through the list of 76 available palettes. Use arrow keys for quick navigation.
How Palettes Work
The palette system generates a complete color scheme (theme.ts:26-84):
Color shades are algorithmically generated using
getCdeShades() from colorutils.ts to create authentic 3D beveled effects.Backdrop Patterns
Understanding XPM Backdrops
Backdrops are authentic XPM (X PixMap) files that are:- Dynamic: Rendered with your current palette colors
- Scalable: Resolution-independent patterns
- Authentic: Original CDE backdrop files
- Cached: Rendered once and cached for performance
Categories
Geometric Patterns
- Afternoon
- Ankh
- BrickWall
- Corduroy
- Inlay
Textures
- BrokenIce
- Canvas
- Carpet
- Concave
- SkyDark
Tech/Circuit
- CircuitBoards
- LatticeBig
- LatticeMed
- Lattice
- WaterDrops
Artistic
- Crochet
- FlowersVenus
- Leaves
- OceanFloor
- Paver
Backdrop Implementation
Backdrops are managed by theBackdropModule (backdrop.ts:24-189):
Applying a Backdrop
Font Customization
Available Options
The Font module (font.ts) provides control over:
- Font Family
- Font Size
- Font Weight
- Line Height
Choose from web-safe font stacks:
- Sans-serif: Modern, clean (default)
- Monospace: Code-friendly
- Serif: Traditional, readable
Font Presets
Quick apply font combinations:Mouse Settings
Double-Click Speed
Double-Click Speed
Adjust the maximum time between clicks for a double-click:
- Fast: 200ms
- Medium: 300ms (default)
- Slow: 500ms
mouse.tsPointer Acceleration
Pointer Acceleration
Control mouse sensitivity and speed:
- None: 1.0x (no acceleration)
- Low: 1.2x
- Medium: 1.5x (default)
- High: 2.0x
Button Configuration
Button Configuration
Mouse acceleration affects window dragging (
windowmanager.ts:258-278) and desktop icon positioning (desktop.ts:267-298).Keyboard Settings
Configure keyboard behavior (keyboard.ts):
Key Repeat
- Repeat Rate: How fast keys repeat when held (chars/sec)
- Repeat Delay: Delay before repeat starts (milliseconds)
- Enable/Disable: Toggle key repeat entirely
Beep Settings
- Beep on Error: Audio feedback for errors
- Beep Volume: Loudness level
Window Behavior
- Focus Mode
- Window Dragging
- Raise on Focus
Click to Focus (Default)
- Click window to activate
- Explicit focus control
- Familiar behavior
- Hover to activate
- Automatic focus
- Power user preference
data-focus-mode attribute (windowmanager.ts:403-418)Creating Your Perfect Setup
The 3-Step Method
Choose Your Base Palette
Select a palette that matches your:
- Environment: Bright room → light theme, Dark room → dark theme
- Time of day: Daytime → light, Evening → medium, Night → dark
- Personal taste: Professional, colorful, minimal
Match a Backdrop
Find a backdrop that complements your palette:
- Subtle patterns: Less distracting (Canvas, Afternoon)
- Bold patterns: More character (CircuitBoards, BrokenIce)
- Textures: Natural feel (Carpet, Corduroy)
Popular Combinations
Classic CDE
- Palette: LateSummer
- Backdrop: Afternoon
- Font: Medium (14px)
- Feel: Authentic 1990s CDE
Dark Mode Pro
- Palette: Coalmine
- Backdrop: BrokenIce
- Font: Medium (14px)
- Feel: Modern dark theme
Warm & Cozy
- Palette: Broica
- Backdrop: Carpet
- Font: Medium (14px)
- Feel: Comfortable earth tones
Tech Aesthetic
- Palette: Charcoal
- Backdrop: CircuitBoards
- Font: Large (16px)
- Feel: Cyberpunk vibes
Minimal & Clean
- Palette: Alpine
- Backdrop: Canvas
- Font: Medium (14px)
- Feel: Distraction-free
High Contrast
- Palette: Midnight
- Backdrop: SkyDark
- Font: Large (16px)
- Feel: Accessibility-focused
Sharing Themes
Your theme can be shared via URL parameters including:- Selected palette ID
- Backdrop choice
- Font settings
- Other Style Manager options
Persistence & Storage
All Style Manager settings are automatically saved to browser localStorage and restored on next visit.
settingsmanager.ts):
Settings Lifecycle
Advanced Customization
Manual Color Editing
The Color module exposes individual color pickers for all CSS variables:- Window backgrounds
- Titlebar colors
- Border shades
- Text colors
- Active/inactive states
Custom Backdrop Rendering
XPM backdrops are rendered with your palette colors usingxpm-renderer.ts:
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+Alt+S | Open Style Manager |
↑/↓ | Navigate palettes/backdrops |
Enter | Apply selected option |
Tab | Switch between sections |
Esc | Close Style Manager |
Troubleshooting
Backdrop not rendering
Backdrop not rendering
Symptoms: White or solid color background instead of patternSolutions:
- Wait 2-3 seconds for complex patterns to render
- Check browser console for XPM parsing errors
- Try a different backdrop to isolate issue
- Clear XPM cache (happens automatically on palette change)
Colors look wrong after palette change
Colors look wrong after palette change
Cause: XPM cache needs clearingSolution: The backdrop module automatically clears cache when palette changes (
stylemanager.ts:158-162). Wait a moment for re-render.Settings not saving
Settings not saving
Possible causes:
- Browser in private/incognito mode (localStorage disabled)
- Browser storage quota exceeded
- Browser privacy settings blocking storage
- Use normal browsing mode
- Clear some browser storage
- Check browser privacy settings
Font changes not visible
Font changes not visible
Cause: Font changes require full UI refreshSolution: Click “Apply” button and wait for changes to propagate through all UI elements.
Performance Considerations
The Style Manager is optimized for performance with several caching mechanisms.
XPM Rendering Cache
- Rendered backdrops are cached in memory
- Cache cleared only when palette changes
- Reduces re-rendering overhead
- Implementation:
xpm-renderer.ts
Backdrop Preloading
Default backdrop is preloaded during boot sequence (backdrop-preloader.ts) to eliminate loading delay on first display.

