Hermes Agent
20777fb0de
fix: left/top resize — let Figma move window (no explicit reposition, kills jitter)
2026-09-09 19:41:45 +02:00
Hermes Agent
a86c3e3152
fix: RESIZE_START takes start size from UI (no window in main thread)
2026-09-09 19:38:22 +02:00
Hermes Agent
c8df3b8054
fix: resize anchored at start (no jump) — absolute target from RESIZE_START anchor
2026-09-09 19:36:53 +02:00
Hermes Agent
3c0ab7a67c
debug: make resize handles visible (rgba fill) for debugging
2026-09-09 19:31:45 +02:00
Hermes Agent
be419351b2
feat: 8 perimeter resize handles (static divs, no .map, typed callbacks)
2026-09-09 19:29:46 +02:00
Hermes Agent
b6c0a58071
feat: 8 invisible resize handles on whole perimeter (replace native useWindowResize)
2026-09-09 19:25:38 +02:00
Hermes Agent
8a0bf4d8f3
feat: 8 invisible resize handles on whole perimeter (edges + corners)
2026-09-09 19:19:26 +02:00
Hermes Agent
c0e2fe0358
feat: center one-shot but keeps position on manual resize (centerLocked)
2026-09-09 19:13:58 +02:00
Hermes Agent
ab6a2e879f
feat: edge fix-size editable via manual resize; center one-shot; corners keep size
2026-09-09 19:10:48 +02:00
Hermes Agent
61577b01cd
fix: corners only move window, keep size (don't stretch)
2026-09-09 18:59:47 +02:00
Hermes Agent
e57e4c18ea
feat: center dock = 50% of viewport (w/h)
2026-09-09 18:55:58 +02:00
Hermes Agent
837bdfbfae
feat: dock edges fixed-size (left/right=320w full-h, top/bottom=320h full-w), corners full
2026-09-09 18:51:44 +02:00
Hermes Agent
a38f7188ee
feat: dock buttons stretch window to zone (edge/corner) + reposition; center keeps size
2026-09-09 18:44:30 +02:00
Hermes Agent
5984df1692
fix: account for 38px plugin header in gapB/center.y and vertical dock
2026-09-09 18:33:16 +02:00
Hermes Agent
b57cda16ec
feat: normalized window position relX/relY relative to viewport (no infinite-canvas coords)
2026-09-09 18:22:29 +02:00
Hermes Agent
153da94fde
ui: show substituted values under each calc formula (gap/center with numbers)
2026-09-09 18:08:43 +02:00
Hermes Agent
d29654b8d5
feat: 9-position dock grid (4 corners + 4 edges + center)
2026-09-09 17:54:53 +02:00
Hermes Agent
0aeaf9f831
ui: expand targets viewport geometry (maxViewport), drop 2000 probe; no header subtraction
2026-09-09 16:58:31 +02:00
Hermes Agent
1ff8a47323
ui: align drag-resize max limit to 2000 (matches expand request)
2026-09-09 16:52:21 +02:00
Hermes Agent
960a2b0e03
feat: expand requests 2000x2000 so Figma clamps to its real window limit
2026-09-09 16:43:25 +02:00
Hermes Agent
0d61580acb
fix: measure real window size via iframe innerWidth, not requested lastSize (fix gap tautology)
2026-09-09 16:23:12 +02:00
Hermes Agent
b2ae4c44d6
feat: maximize window to full viewport (maxViewport = bounds*zoom), clamp drag
2026-09-09 16:05:50 +02:00
Hermes Agent
4228357a35
fix: convert window px size to canvas-units (w/zoom) for dock + gap/center math
2026-09-09 15:50:34 +02:00
Hermes Agent
13f3129c78
fix: clipboard copy fallback via execCommand (iframe blocks navigator.clipboard)
2026-09-09 15:43:11 +02:00
Hermes Agent
831a5b3615
docs: add gotcha — icon button sizing (use native filled icon, not inline SVG)
2026-09-09 15:41:11 +02:00
Hermes Agent
84a89cd4b6
ui: use native IconCopySmall24 to match size/weight of sibling icon buttons
2026-09-09 15:39:10 +02:00
Hermes Agent
fd12df7d39
ui: replace copy text button with icon button (lucide-style copy/check)
2026-09-09 15:27:34 +02:00
Hermes Agent
4f43c5f89c
feat: copy debug values (RAW + calculated) to clipboard with feedback
2026-09-09 15:19:50 +02:00
Hermes Agent
63a762d002
ui: split raw Figma API values vs calculated; show code var names + formulas
2026-09-09 15:15:09 +02:00
Hermes Agent
9f9349efb6
fix: keep docked window pinned to edge across zoom/pan via viewport poll
2026-09-09 15:13:05 +02:00
Hermes Agent
106f21b2c4
ui: readable grid layout for window debug readout (mono, tabular, grouped)
2026-09-09 13:23:36 +02:00
Hermes Agent
dc8ab7421e
refactor: auto-refresh window info after dock/resize/drag; drop manual Info button
2026-09-09 13:20:35 +02:00
Hermes Agent
85e9433626
fix: type listener WINDOW_INFO to match extended info shape (build was broken)
2026-09-09 13:19:14 +02:00
Hermes Agent
dcfb235d06
feat: show derived window data (zoom, viewport, gaps, center)
...
- main.ts GET_WINDOW_INFO: add zoom, viewport bounds, gaps L/R/T/B, center
computed from figma.viewport + plugin window geometry
- ui.tsx: render additional readout lines under 🔍 Инфо
2026-09-09 13:18:32 +02:00
Hermes Agent
ecbbd5d8c1
feat: show live window x/y/size debug readout inside plugin
...
- main.ts: track lastSize; GET_WINDOW_INFO handler returns x/y via
figma.ui.getPosition().canvasSpace (typed as any) + stored width/height
- ui.tsx: WINDOW_INFO listener, '🔍 Инфо' button, render x/y/w/h block
2026-09-09 13:12:17 +02:00
Hermes Agent
bc9b2e60e9
feat: window docking buttons (left/center/right) via figma.ui.reposition
...
- main.ts: add DOCK_WINDOW handler using figma.viewport.bounds + figma.ui.resize/reposition
- ui.tsx: add dock buttons (Left/Center/Right) + keep expand/collapse + drag handle
2026-09-09 13:08:11 +02:00
Hermes Agent
f3575e30ee
chore: drop size from plugin window title (Figma title bar is not customizable; keep name only)
2026-09-09 13:01:04 +02:00
Hermes Agent
84ec81bf03
fix: drag works again; size label updates only on pointerup
...
- ui.tsx: useWindowResize callback emits RESIZE_WINDOW with hook-computed
size (not window.innerWidth) so figma.ui.resize grows correctly during drag
- ui.tsx: add window 'pointerup' listener to refresh size readout AFTER
drag ends (Figma already applied new size by then)
2026-09-09 12:58:26 +02:00
Hermes Agent
4aa82fbefa
fix: window size readout now updates during drag
...
- ui.tsx: useWindowResize callback now builds a fresh {width,height} from
window.innerWidth/innerHeight instead of the hook's mutated ref object,
so Preact re-renders and the size label updates live
- toggleWindowSize: spread MIN/MAX constants to new objects (same ref bug)
2026-09-09 12:56:07 +02:00
Hermes Agent
26d391f90a
fix: drag works from first attempt + size in window header
...
- ui.tsx: pass min/max opts to useWindowResize (fixes first-drag bug)
- ui.tsx: move live size to top toolbar (left of expand button)
- main.ts: set figma window title with startup size via showUI({title})
2026-09-09 12:50:35 +02:00
Hermes Agent
3bff4241d6
fix: add visible drag-handle icon (3x3 dots) in bottom-right corner
...
- ui.tsx: decorative SVG drag indicator (pointerEvents:none) like old plugin
- uses --figma-color-icon-secondary + opacity 0.4, fixed bottom/right 3px
- Fragment wrapper; real drag still handled by useWindowResize handle
2026-09-09 12:43:39 +02:00
Hermes
6c7be98a82
feat: relaunch button in right panel + drag-resize window
...
- package.json: add relaunchButtons (runAI) for right-panel shortcut
- main.ts: setRelaunchData + RESIZE_WINDOW handler (figma.ui.resize)
- ui.tsx: useWindowResize native drag handle + expand/collapse toggle
- .gitignore: exclude _reference/ (temp old-plugin copy)
- IDEA.md: commit+push to Gitea is mandatory workflow
2026-09-09 12:38:13 +02:00
Hermes
4507162f42
docs: fix sync flow (include build/), add KNOWLEDGE.md self-edit rule
2026-09-09 11:59:44 +02:00
Hermes Agent
903025965b
docs: add KNOWLEDGE.md (build gotchas + workflow)
2026-09-09 11:35:43 +02:00
Hermes Agent
def909f0a2
docs: add IDEA.md with UI framework refs, Figma plugin docs, examples
2026-09-09 11:29:57 +02:00
Hermes Agent
567ce34285
bootstrap: Hello World Figma plugin skeleton
2026-09-09 11:27:11 +02:00