aethersdr / aethersdr/AetherSDR
automation bridge: hover verb ignores x/y, so point-hover tooltips aren't provable
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 221
- Forks
- 117
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 299
Description
AutomationServer::doHover always synthesizes the QEnterEvent + QMouseMove at w->rect().center() and ignores any x/y the caller passes (src/core/AutomationServer.cpp, doHover).
That is fine for the widget-level hover states it was written for (the HGauge readout), but it means any hover behaviour that depends on where in the widget the pointer is cannot be driven from the bridge. Concretely, reviewing #4828 I could prove the KiwiSDR DX spot markers render and that clicking one tunes the slice, but not that hovering one shows its tooltip — the markers are 5 px wide on the band-plan strip and hover can only reach the widget centre.
The same gap applies to the existing band-plan spot tooltips, panadapter cursor-frequency readout, spot-label hover, and TNF hover.
Ask
hover <target> [x y]— honour local coordinates when given, keep centre as the default so existing callers are unaffected.- A way to read the currently-showing transient tooltip.
QToolTip::showTextcreates aQTipLabeltop-level thatdumpTreedoes not surface, and the existingtooltipverb only reads a widget's statictoolTipproperty. Either surfaceQToolTip::text()from a new verb or include tooltip windows indumpTree.
With both, a tooltip assertion becomes hover pan0 <x> <y> + read-back, which is what several open overlay features need in order to be proven rather than eyeballed.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in src/core/AutomationServer.cpp at AutomationServer::doHover, then inspect the existing tooltip verb and dumpTree behavior. Trace how hover coordinates and transient QToolTip windows are currently handled. Done means hover accepts optional local x/y while retaining the center default, and a transient tooltip can be read back through one of the proposed surfaces.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- testing-qa, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 56/100