Fix drag-drop review findings: unify teardown, gate FX-add on outside-panel, trim comments
This commit is contained in:
@@ -26,13 +26,10 @@ namespace reasampler {
|
||||
// (DROPEFFECT_COPY); the return is advisory — a failed drag surfaces no error.
|
||||
bool initiateDragOut(HWND__* panelHwnd, const std::vector<std::string>& absolutePaths);
|
||||
|
||||
// Cheap, side-effect-free readiness probe: true iff initiateDragOut would actually be able to
|
||||
// START a drag for `absolutePaths` right now. Call this BEFORE tearing down internal drag
|
||||
// state (release capture, clear drag fields) — an OS that isn't ready (OLE unavailable, or the
|
||||
// path list can't build a CF_HDROP) must not consume the gesture the same way an empty payload
|
||||
// would. On Windows this re-runs the same OLE-init + HDROP-build checks initiateDragOut does,
|
||||
// freeing the probe HGLOBAL immediately; SWELL exposes no such probe, so macOS/Linux reduces to
|
||||
// the non-empty check alone.
|
||||
// Side-effect-free readiness probe for initiateDragOut. Call BEFORE tearing down internal drag
|
||||
// state — an OS that isn't ready (OLE unavailable, HDROP build failure) must not consume the
|
||||
// gesture like an empty payload would. Windows re-runs the OLE-init + HDROP checks and frees the
|
||||
// probe HGLOBAL immediately; SWELL exposes no probe, so macOS/Linux reduces to the non-empty check.
|
||||
bool canInitiateDragOut(const std::vector<std::string>& absolutePaths);
|
||||
|
||||
} // namespace reasampler
|
||||
|
||||
Reference in New Issue
Block a user