Skip to content

docs(ContainerWidget): cross-reference TXDSP-style alias fallback at drag MIME-set (#3056). Principle III.#3096

Merged
ten9876 merged 1 commit into
mainfrom
aetherclaude/issue-3056
May 25, 2026
Merged

docs(ContainerWidget): cross-reference TXDSP-style alias fallback at drag MIME-set (#3056). Principle III.#3096
ten9876 merged 1 commit into
mainfrom
aetherclaude/issue-3056

Conversation

@aethersdr-agent

Copy link
Copy Markdown
Contributor

Summary

Fixes #3056

What was changed

docs(ContainerWidget): cross-reference TXDSP-style alias fallback at drag MIME-set (#3056). Principle III.

Files modified

  • src/gui/containers/ContainerWidget.cpp
 src/gui/containers/ContainerWidget.cpp | 5 +++++
 1 file changed, 5 insertions(+)

Generated by AetherClaude (automated agent for AetherSDR)


🤖 aethersdr-agent · cost: $1.8388 · model: claude-opus-4-7

…drag MIME-set (#3056). Principle III.

Adds a brief comment in ContainerWidget::onTitleBarDragStart immediately
above the setData call, pointing future composite-tile authors at the
aliasing fallback in AppletPanel::dropEvent (added in #1836 / PR #3044).
Without the cross-reference, a future author wrapping another internal
container (e.g. an RXDSP-style composite) would touch the sender side
first, ship the same m_id != AppletEntry.id mismatch, and never know
that the receiver has a safety net catching it.

Pure documentation — no behavioral change, no symbol/signature edits.

Blast radius: comment-only edit. PreToolUse hook flagged 37 transitive
callers (risk_score=0.208, top: MainWindow ctor/buildUI, AppletPanel
ctor), but none can be affected by adding a multi-line comment inside
an existing function body.

@aethersdr-agent aethersdr-agent Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the cross-reference — that drag-MIME-set site is exactly the kind of place where a pointer to related logic helps future readers. One concern, though: the comment as written doesn't match the current state of the code it's pointing at.

The fallback being referenced no longer exists.

The new comment says:

AppletPanel::dropEvent has an aliasing fallback that catches the mismatch by looking up the container instead of the AppletEntry. See #1836.

But AppletPanel::dropEvent (src/gui/AppletPanel.cpp:128-158) currently just does a direct m_appletOrder[i].id == draggedId match — there's no container-lookup fallback. The existing comment right above that loop (lines 136-139) explicitly says:

Composite tiles (e.g. TXDSP) set ContainerWidget::setDragId() at construction so the drag MIME payload matches AppletEntry.id directly — no fallback lookup needed (#3057, supersedes #1836 workaround).

And the TXDSP construction site at AppletPanel.cpp:758-763 reinforces this:

...drag identity and container identity are deliberately separate concepts here. (#3057, supersedes #1836 dropEvent fallback)

So #1836 was the old workaround that was removed, and the current mechanism is the setDragId() / dragId() split in ContainerWidget itself.

Suggested rewrite for the new comment:

// dragId() returns the composite's drag identity, which may differ
// from m_id (the container's persistence key). Composite tiles
// (e.g. TXDSP wraps a tx_dsp container) call setDragId() so the
// MIME payload matches their owning AppletEntry.id directly — see
// AppletPanel.cpp's TXDSP setup and dropEvent (#3057, which
// superseded the older #1836 fallback workaround).

That keeps the cross-reference (the original goal of the PR) but accurately describes the current mechanism instead of pointing readers at a fallback that isn't there. Otherwise the diff is appropriately small and well-scoped — just want the comment to age well.


🤖 aethersdr-agent · cost: $3.5589 · model: claude-opus-4-7

@ten9876 ten9876 merged commit d098fba into main May 25, 2026
5 checks passed
@ten9876 ten9876 deleted the aetherclaude/issue-3056 branch May 25, 2026 03:47
G6PWY-Chris pushed a commit to G6PWY-Chris/AetherSDR that referenced this pull request Jun 22, 2026
…drag MIME-set (aethersdr#3056). Principle III. (aethersdr#3096)

## Summary

Fixes aethersdr#3056

### What was changed

docs(ContainerWidget): cross-reference TXDSP-style alias fallback at
drag MIME-set (aethersdr#3056). Principle III.

### Files modified

- `src/gui/containers/ContainerWidget.cpp`

```
 src/gui/containers/ContainerWidget.cpp | 5 +++++
 1 file changed, 5 insertions(+)
```

---
Generated by AetherClaude (automated agent for AetherSDR)

---
<sub>🤖 aethersdr-agent · cost: $1.8388 · model: claude-opus-4-7</sub>

Co-authored-by: aethersdr-agent[bot] <273844287+aethersdr-agent[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Doc: cross-reference TXDSP-style ID alias in ContainerWidget drag-start (follow-up to #1836)

1 participant