@David-Healey Turned out to be quite painless in the end. 🎉
const pnlPresetBrowser = Content.getComponent("pnlPresetBrowser"); // parent panel
const fltPresetBrowser = Content.getComponent("fltPresetBrowser"); // floating tile
const bc = Engine.createBroadcaster({"id": "PresetBrowser", "args": [component, obj]});
bc.attachToComponentMouseEvents(["fltPresetBrowser"], "Clicks Only", "");
bc.addListener("mouseAction", "Mouse action to close preset browser", function(component, event)
{
if (!isDefined(event.columnIndex)) return;
if (event.doubleClick && event.columnIndex == 2) pnlPresetBrowser.showControl(false);
});