Tech HUD Menu

Changelog:
1.0.3 fixed click detection in sub categories
1.0.4 added "-c" option, runs menu at cursor position and exits after button was clicked
1.0.5 fixed a freeze on doubleclick in icewm
1.1.0 fixed too high cpu usage, added Designs (marble/glass), added subcategories for favourites
1.2.0 Added local JSON caching (~/.cache/tech-hud-menu/apps.json) with directory mtime checks for instant sub-millisecond startup, manual reload button with spinning loading indicator, Cairo hover rendering performance optimization (selective button area invalidation and pattern/font caching), case-insensitive UTF-8 alphabetical sorting, and expanded favorite subcategories to 8 with full localization dialog support and Arabic language support.

Standalone Vala/GTK3 application launcher and menu for Linux desktops.

Features:
- Futuristic HUD interface drawn with Cairo vector paths, with selectable color themes and nine border styles.
- Application lists discovered from installed desktop entries, grouped into alphabetized categories and subcategories.
- Persistent Favourites tabs (1 to 8). Right-click an application to add or remove it.
- Scrollable application grid with application icons and descriptions.
- Optional keep-open behavior after launching an application, plus draggable, sticky, and above/below window-layer controls.
- Adjustable UI scale and window transparency, plus per-language label overrides for categories, options, themes, and border styles.
- Spin-button controls for window width and height, plus bottom-right mouse resizing; the two-column app grid adapts to the selected width.
- Remembers the menu's screen position between launches on X11; Wayland compositors choose the initial position.

Requirements:
- Vala compiler (valac)
- GTK 3 development files
- Cairo and PangoCairo development files
- GIO and GIO Unix development files
- GNU gettext tools (msgfmt)
- JSON-GLib development files

Build and Run:
  make
  ./tech_hud_menu

To install:
  make install

To build Debian package:
  make deb

To build Puppy Linux PET package (x86_64):
  make pet64
