Tech HUD Eyecandy & Ripples (v1.1.0) ===================================== Simple Description (for everyone) ---------------------------------- Tech HUD Eyecandy is a set of transparent desktop overlay windows for Linux that make your desktop look like a sci-fi movie interface. You can place one or more windows anywhere on your screen. Each window can show: - 1980 Atari Defender arcade simulation with vector fighter, radar, terrain, humanoids & lasers - Classic James Bond gun barrel sequence with customizable dancer (SVG, animated SVG, or animated GIF) - Retro 80s Synthwave Sun with wireframe perspective scrolling grid - Digital Clock with 3+ color rainbow gradient glow, seconds, and AM/PM format - Analog Clock face with glowing hands and tick marks - Weather Widget parsing ~/.mu-wetter/export.txt with graphical vector weather icons (snowflake, sun, raindrops) and automatic 35-minute updates - Date Widget with multiple format options (YYYY-MM-DD, DD.MM.YYYY, MM/DD/YYYY, Full Date) and optional rainbow glow - Animated starfields (warp drifting stars) - Falling data streams (Matrix rain) - Crawling border lights running around the window frame and inner Tetris crawlers - Customizable background – either a picture you drag & drop, or a solid color with theme gradient - 9 distinct Tech-HUD border shapes (chamfered, tapered headers, slanted vents, compact nodes, armored hex, capsules) The windows are click-through, always-on-top (or below), sticky across workspaces, and you can save their position, size, border style, and theme. Everything is managed from a central Manager dialog where you can create new windows, edit existing ones, toggle Global Performance Mode, or quit. There is a second program called Tech HUD Ripples. It adds a realistic water-ripple simulation with raindrops, mouse trails, subsurface drift, and shoreline waves. License: GPL v2 or later --- Version Changelog (v1.1.0) ========================== - 1980 Atari Defender Arcade Simulation: * Authentic 1980 Atari vector ship design with swept-back wings and cockpit canopy. * Top-center purple radar box, extra-lives mini ships, golden mountain ridge, ground humanoids, yellow laser beams (frame-rate independent in Performance Mode), and particle explosion effects. * Configurable enemy density slider (2 to 20 enemies) in Window Config dialog. * 30-second game round duration and 5-second victory/game-over summary screen (with themed border remaining fully visible on top). - Classic James Bond Gun Barrel Sequence & Custom Dancer (bond_dancer.vala): * Renders the authentic gun barrel spiral aperture background with audio-reactive red spotlight. * File Chooser Browse button & drag-and-drop for custom SVG, animated SVG, or animated GIF dancer files. * Customizable background modes: Classic Dark Red, Solid Color (with color picker), or Transparent / No Background. - Retro Synthwave Sun & Grid (synthwave_sun.vala): * 80s wireframe synthwave sun with striped horizon cutouts and scrolling perspective grid. * Adjusted vertical position so the top of the sun circle is never cut off. - Digital Clock Widget (digital_clock.vala): * 3+ color rainbow gradient glow readout for hours, minutes, and seconds. * Configurable Seconds toggle and AM/PM format support. - Analog Clock Widget (analog_clock.vala): * Tech-HUD style analog clock face with hour, minute, and second hands, tick marks, and glowing accents. - Weather Widget & mu-wetter Integration (weather_effect.vala): * Parses ~/.mu-wetter/export.txt and displays temperature and rainfall. * Graphical Cairo vector weather icons (sparkling snowflake for Cold, radiant sun for Warm/Hot, falling raindrops for Rainy/Wet). * Descriptive temperature & rain badges ([COLD], [WARM], [HOT], [DRY], [MEDIUM], [WET]). * Optional rainbow text coloring toggle. * Automatic background updates running "mu-wetter --silent" every 35 minutes. * Conditional right-click context menu option "Run mu-wetter" (only shown when Weather effect is active on that window). - Date Widget (date_widget.vala): * Multiple format selections (YYYY-MM-DD, DD.MM.YYYY, MM/DD/YYYY, Full Date). * Optional rainbow gradient text coloring. - Performance & CPU Optimizations: * Added global "⚡ Performance Mode" toggle in the Manager dialog (throttles heavy effects to 5 FPS and static widgets to 0.5 FPS for maximum power savings). * Cairo Offscreen Surface Caching (render_static_panel): Bakes static background, theme border stroke, and panel decorations into an offscreen surface once to eliminate repetitive vector math. * Real Monotonic Time Scaling (GLib.get_monotonic_time()): Smooth frame-rate independent motion for crawlers and animations. * Inactive / hidden windows consume 0% CPU. - UI & Usability Enhancements: * Auto-Activating Config Notebook Tabs: Automatically jumps to the relevant effect tab if only 1 effect is active when opening Window Configuration. * Right-click "Configure Window..." context menu on all HUD windows. * Manager Dialog "Flash" button to visually highlight target windows with a yellow pulse overlay. * Inner Tetris crawlers disabled by default on newly created windows. * Full config saving & loading persistence for all settings. * Complete source code modularization into clean separate Vala files (types.vala, defender.vala, bond_dancer.vala, synthwave_sun.vala, digital_clock.vala, analog_clock.vala, weather_effect.vala, date_widget.vala, hud_window.vala, dialogs.vala, app.vala). * Added "make pet" target to Makefile! --- Technical Details ----------------- Dependencies (build): valac, gtk+-3.0, cairo, pangocairo, gio-2.0, gee-0.8, librsvg-2.0 sudo apt install valac libgtk-3-dev libcairo2-dev libpango1.0-dev libgee-0.8-dev librsvg2-dev Build & Run: make -C v2 ./v2/tech-hud-eyecandy ./v2/tech-hud-ripples make -C v2 pet