Another learning experience.
Looking at the fix, I see that the problem was the multiple connections to the button. As the button does not get remade when the menu is reinstated, each connection was remembered. I didn't note that the lifetime of the button was different from the lifetime of the menu.