Commit Graph
10 Commits
Author SHA1 Message Date
bruno 53cd202a93 fix: bubble menu always positioned at selection end
CI / lint (push) Successful in 15s
CI / security (push) Successful in 9s
CI / test (push) Successful in 24s
CI / build (push) Successful in 2s
Changed from selectionStart to selectionEnd so bubble follows where user finished selecting. Removed broken fallback that repositioned to textarea bottom on every scroll. Simple viewport clamp instead.
2026-06-06 00:04:04 -04:00
bruno 76a5b23e96 feat: inline table form + code language picker (no more prompt dialogs)
CI / lint (push) Successful in 15s
CI / security (push) Successful in 9s
CI / test (push) Successful in 25s
CI / build (push) Successful in 3s
Table: inline form with cols/rows inputs, positioned at cursor. Enter to insert, Esc to cancel. Code block: language picker with 41 languages (bash,js,ts,py,java,rust,go,c,cpp,html,css,json,yaml,sql,dockerfile...), navigable via arrows+Enter. All positioned via caretToPixel like other menus. Click outside closes.
2026-06-06 00:02:16 -04:00
bruno f42e37489b fix: table prompt in French, tab title shows filename
CI / lint (push) Successful in 14s
CI / security (push) Successful in 7s
CI / test (push) Successful in 25s
CI / build (push) Successful in 2s
"Nombre de colonnes/lignes" prompts. Tab title now shows "Title - ObsiGate Forge" when file loaded, "ObsiGate Forge - Demo" in demo mode.
2026-06-05 23:34:30 -04:00
bruno 218c77dafb feat: auto-height, sync scroll, Mermaid QI, table prompt, bubble follow
CI / lint (push) Successful in 15s
CI / security (push) Successful in 10s
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
Textarea overflow:hidden + auto-height via scrollHeight to eliminate double scrollbar. Sync scroll between editor and preview panes (bidirectional percentage). Alt+I menu now includes 7 Mermaid diagram templates (flowchart, sequence, class, state, ER, gantt, pie). Table now prompts for cols/rows via prompt(). Bubble menu follows cursor via document selectionchange event.
2026-06-05 23:33:37 -04:00
bruno bbe109e4e5 fix: slash/QI keyboard nav + bubble position at selection
CI / lint (push) Successful in 19s
CI / security (push) Successful in 9s
CI / test (push) Successful in 24s
CI / build (push) Successful in 2s
Slash nav: moved from textarea keydown to slashSearch input keydown (textarea loses focus when slash menu opens). QI nav: document-level up/down/enter/esc with highlight. Bubble: positioned at selection start via caretToPixel instead of textarea bottom center.
2026-06-05 23:09:45 -04:00
bruno bc47f79378 fix: slash menu at caret position, bubble below, Alt+I Quick Insert
CI / lint (push) Successful in 15s
CI / security (push) Successful in 8s
CI / test (push) Successful in 25s
CI / build (push) Successful in 2s
Slash menu now positioned below current line at the / character using monospace caret-to-pixel calc. Bubble menu now below textarea (was above). Quick Insert menu now opens below cursor line via Alt+I shortcut and click button. Status bar shows Alt+I hint.
2026-06-05 22:56:38 -04:00
bruno dcf82e7603 fix: load file content from /raw endpoint instead of /view
CI / lint (push) Successful in 14s
CI / security (push) Successful in 9s
CI / test (push) Successful in 26s
CI / build (push) Successful in 2s
GET /api/file/{vault}?path=... returns html/title but not raw content. Switched to GET /api/file/{vault}/raw?path=... which returns {raw:...}. Title now extracted from first # heading in the content.
2026-06-05 22:30:29 -04:00
bruno a358f772bd feat: POC v3 — real editor with backend, AI, and preview
CI / lint (push) Successful in 14s
CI / security (push) Successful in 9s
CI / test (push) Successful in 24s
CI / build (push) Successful in 2s
Load file via ?vault=X&path=Y params using API. Auto-save 2s debounce with PUT /api/file/{vault}/save. Force save with Ctrl+S. Real AI integration: improve, fix-spelling, continue, summarize, translate, simplify, lengthen via /api/ai/* endpoints. AI status check + button states. Live markdown preview with marked.js CDN. Split view with draggable resize handle. Dirty/unsaved indicator. Vault+path in status bar. Word+char counter. All 5 zones preserved.
2026-06-05 21:57:06 -04:00
bruno a21546028a feat: POC v2 - real markdown textarea with live insertions
CI / lint (push) Successful in 14s
CI / security (push) Successful in 9s
CI / test (push) Successful in 24s
CI / build (push) Successful in 2s
Replace contenteditable div with textarea for real markdown editing. insertAtCursor, wrapSelection, replaceLineAtCursor. 18 slash commands map to real markdown syntax. Bubble menu Bold/Italic/Strike/Code/Highlight wrap selection. Ctrl+B/I shortcuts. Word+char count.
2026-06-05 21:27:00 -04:00
bruno 739b359de2 feat: Editor POC — multi-zone toolbar mockup (TOOLBAR_DESIGN_ANALYSIS.md)
CI / lint (push) Successful in 15s
CI / security (push) Successful in 9s
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
Add standalone /editor-poc page demonstrating all 5 toolbar zones:
- Zone 1: Top Fixed Bar (hamburger, title, AI glow button, save indicator)
- Zone 2a: Slash Command Menu (/ on empty line, 15 commands, filtering)
- Zone 2b: Bubble Menu (on text selection, formatting + AI dropdown)
- Zone 3: Floating Quick Insert (per-line, Image/PDF/Code/Table/AI)
- Zone 4: AI Side Panel (Ctrl+J toggle, chat, suggestions)
- Zone 5: Drag & Drop overlay with dashed border

Files:
- new: frontend/editor-poc.html (46KB standalone vanilla JS)
- backend/main.py: +/editor-poc route before catch-all
- frontend/index.html: Editor POC button in header menu
- frontend/js/config.js: initEditorPocBtn() function + export
- frontend/js/legacy.js: re-export initEditorPocBtn
- frontend/js/app.js + frontend/app.js: init call in both versions
2026-06-05 20:29:56 -04:00