Well I did think of doing something on these lines in the plc but the keys are then dead so its obviously disabling the motion and not the plugin.
local tab, rc = scr.GetProperty("MainTabs", "Current Tab")
local tabG_Mdione, rc = scr.GetProperty("nbGCodeMDI1", "Current Tab")
local iReg = mc.mcIoGetHandle (0, "Keyboard/EnableKeyboardJog")
if ((tonumber(tab) == 0 and tonumber(tabG_Mdione) == 1)) then
mc.mcIoSetState(iReg, 0);
else
mc.mcIoSetState(iReg, 1);
end
It would be easy to implement in the keyboard plugin using the new api command mcRegSendCommand this could send a command to disable the plugin whilst the mdi has focus instead of disabling it via the taskbar.
But failing that then Steves idea is prob the bets solution
Daz