RAM2118 commited on
Commit
4de29df
·
verified ·
1 Parent(s): efff31a

update SYNC.md — real fix pushed (setAlwaysOnTop + X button working)

Browse files
Files changed (1) hide show
  1. SYNC.md +9 -8
SYNC.md CHANGED
@@ -37,21 +37,22 @@ If a plugin crashes → only Helper dies → Ableton survives → UI shows "Relo
37
  - ❌ `addDefaultFormats()` (deleted in JUCE 8)
38
  - ❌ `juce::Thread::setCurrentThreadPriority()` (removed in JUCE 8)
39
  - ❌ `MSG_NOSIGNAL` (doesn't exist on macOS)
40
- - ❌ `NSApplicationActivationPolicyAccessory` — BROKE fullscreen window behavior, reverted
41
- - ❌ `NSWindowCollectionBehavior` changes — didn't fix fullscreen, made it worse, reverted
42
- - ❌ Window level changes (3→25) — unnecessary, reverted
 
43
 
44
  ## What's Working
45
  - ✅ Out-of-process via shared memory + semaphores + Unix socket
46
  - ✅ Crash-safe — plugins that abort() only kill the helper
47
- - ✅ Plugin GUI window (close button hides, doesn't quit Helper)
 
48
  - ✅ Toggle GUI via button in PluginBridge panel (Open GUI / Close GUI)
49
  - ✅ Plugin list from filesystem (no binary loading until user selects)
50
  - ✅ Native pthread priority for audio thread
51
 
52
  ## Status
53
- **Last push:** 2026-05-16 — REVERTED all window policy changes. Back to original working state where GUI opened inside Ableton's Space correctly.
54
  **Build:** Needs test
55
- **Test:** Pull, build, load in Ableton (FULLSCREEN) → Open GUI → confirm it opens in same Space as Ableton (like it did before the close-button fix).
56
- **If it still opens separately:** The problem was introduced by the close-button fix (PluginGuiWindow class). Need to identify what specifically changed. The ONLY difference from original working code should be `closeButtonPressed() { setVisible(false); }` instead of whatever it was before.
57
- **Next:** Once GUI confirmed working → Sprint 3 (MCP param control)
 
37
  - ❌ `addDefaultFormats()` (deleted in JUCE 8)
38
  - ❌ `juce::Thread::setCurrentThreadPriority()` (removed in JUCE 8)
39
  - ❌ `MSG_NOSIGNAL` (doesn't exist on macOS)
40
+ - ❌ `NSApplicationActivationPolicyAccessory` — broke fullscreen, reverted
41
+ - ❌ `showAsFloatingPanel()` with objc_msgSend level hacks — broke fullscreen, reverted
42
+ - ❌ `NSWindowCollectionBehavior` changes — didn't help, reverted
43
+ - ❌ Window level 25 (NSStatusWindowLevel) — unnecessary, reverted
44
 
45
  ## What's Working
46
  - ✅ Out-of-process via shared memory + semaphores + Unix socket
47
  - ✅ Crash-safe — plugins that abort() only kill the helper
48
+ - ✅ Plugin GUI via `setAlwaysOnTop(true)` — stays in same Space as Ableton (including fullscreen)
49
+ - ✅ X button hides GUI (doesn't quit Helper)
50
  - ✅ Toggle GUI via button in PluginBridge panel (Open GUI / Close GUI)
51
  - ✅ Plugin list from filesystem (no binary loading until user selects)
52
  - ✅ Native pthread priority for audio thread
53
 
54
  ## Status
55
+ **Last push:** 2026-05-16 — Fixed fullscreen issue. Root cause: commit 0632681 replaced `setAlwaysOnTop(true)` with objc_msgSend hacks that broke Space behavior. Fix: restored `setAlwaysOnTop(true)` + kept X button fix.
56
  **Build:** Needs test
57
+ **Test:** Pull, build, Ableton fullscreen → Open GUI → should open in same Space. X button should hide (not quit).
58
+ **Next:** Sprint 3 — MCP param control from Claude Code (curl tests)