forge-draggable-windows

Add draggable, z-ordered windows with collapse behavior to ForgeUiContext applications.

36|6|Updated Mar 25, 2026
One-click install
npx skills add https://github.com/Nebulavenus/forge-gpu --skill forge-draggable-windows-nebulavenus
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: forge-draggable-windows
Source: https://github.com/Nebulavenus/forge-gpu/tree/main/.claude/skills/forge-draggable-windows
Command: npx skills add https://github.com/Nebulavenus/forge-gpu --skill forge-draggable-windows-nebulavenus

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Add draggable windows with z-ordering and collapse/expand functionality to ForgeUiContext-based applications, enabling organized, overlapping panels and predictable input behavior.

Core Features & Use Cases

  • Draggable windows with per-window state (rect, collapsed, z_order) and a collapse toggle
  • Enforced z-order rendering with foreground windows blocking input in overlap regions
  • Per-frame window context lifecycle: initialize, begin, window_begin, window_end, end, and update per-window states

Quick Start

Initialize a ForgeUiContext and ForgeUiWindowContext, then in each frame call wctx_begin, declare windows with window_begin/window_end, and finish with wctx_end to render in z-order.

Frequently Asked Questions about forge-draggable-windows

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add draggable windows with z-ordering to a ForgeUiContext application?

To add draggable windows to ForgeUiContext, initialize a ForgeUiWindowContext and use the provided frame lifecycle workflow: call wctx_begin, declare windows with window_begin/window_end, and finish with wctx_end to enforce z-order rendering.

Can I collapse and expand overlapping panels in ForgeUi?

Yes, you can collapse and expand overlapping panels in ForgeUi by maintaining per-window state. The workflow tracks a collapsed boolean for each window, allowing you to toggle the collapse behavior dynamically during the frame lifecycle.

How does input routing work for overlapping UI panels in ForgeUi?

Input routing for overlapping ForgeUi panels is handled by enforced z-order rendering. Foreground windows block input in overlap regions, ensuring predictable interaction and deferred draw ordering for the active window context.

What is the required frame lifecycle for rendering ForgeUi windows in z-order?

The required frame lifecycle for ForgeUi windows involves calling wctx_begin, declaring individual windows with window_begin and window_end pairs, and finalizing with wctx_end to render all panels correctly in z-order.

Does ForgeUi support per-window state for draggable interfaces?

Yes, ForgeUi supports per-window state for draggable interfaces by tracking rect for position and size, collapsed for visibility, and z_order for stacking, ensuring organized and predictable overlapping panel behavior.