I believe menus were available "via API" since an a11y push in GNOME before 2.0 release (atk library and friends).
What was impossible was to stop apps from showing the usual menu bar inside the window.
Obviously, with something so core to the system, plenty of devils in the details.