Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A11y menu jump reaper macos #7281

Open
baconpaul opened this issue Nov 1, 2023 · 3 comments
Open

A11y menu jump reaper macos #7281

baconpaul opened this issue Nov 1, 2023 · 3 comments
Labels
Accessibility Issues related to making Surge more accessible Bug Report Item submitted using the Bug Report template Host Specific Issues related to specific host(s) or host features
Milestone

Comments

@baconpaul
Copy link
Collaborator

Sorry just saw this. If I go into a menu, say presets, the minute I select an item I'm dropped back into the REAPER main window and have to switch windows back to surge again. This happens consistently. The same behavior doesn't occur in the standalone application.

@baconpaul baconpaul added the Bug Report Item submitted using the Bug Report template label Nov 1, 2023
@baconpaul baconpaul added this to the Surge XT 1.3 milestone Nov 1, 2023
@mkruselj mkruselj changed the title Ally menu jump reaper macos A11y menu jump reaper macos Nov 1, 2023
@mkruselj mkruselj added the Accessibility Issues related to making Surge more accessible label Nov 1, 2023
@baconpaul
Copy link
Collaborator Author

Summary from Discord:

at-ZachB13 OK spent some time debugging. Here's wha t I see, macos latest surge, voiceover on

Menu traversal works fine
Menu pressing enter selects and returns focus to parch browser
Menu pressing ctrl-opt-space selects and returns focus to patch browser
Menu pressing escape dismisses menu and dismisses surge window

I debugged the juce and surge code and both are handling the key press in case 4 properly if delivered. My theory is that Reaper top level window never sends the escape to the plugin and just closes its window (which in turn cleans up the menu).

If that is the case, and it seems to be, then it is indeed a Reaper bug. Nothing to do with voice over even - same happens with it on or off (except of course 3 doesn't work with voice over off)

I don't think theres anything I can do here. I suppose I could add another key binding to dismiss the menu which doesn't interfere with reaper?

Thoughts on (1) if that is what you see and (2) best course to proceed welcome.
at-ZachB13 yes confirmed. I placed a debug statement in the menu key handler. In the standalone the escape key is delivered to me; in reaper it is not. This is absolutely a Reaper bug.
at-EvilDragon what's the best way to report bug to reaper devs nowadays?

baconpaul added a commit to surge-synthesizer/JUCE that referenced this issue Nov 5, 2023
As described in surge issue surge-synthesizer/surge#7281
the 'esc' key in Reaper VST3 does not get delivered to the plugin menu
to close the menu, so accessible users with docked reaper windows get
dumped out of surge when canceling menu actions.

This doesn't fix that, but it adds an alternative that
Shift-F10 also closes the menu (since that is our accessible
open gesture).
baconpaul added a commit to baconpaul/surge that referenced this issue Nov 5, 2023
@baconpaul
Copy link
Collaborator Author

Sent following to support at cockos.com


Heya folks

baconpaul from surge/clap/etc here

So we had an interesting report from one of our blind users about reaper on macos. Here’s the basic issue

Keyboard navigation of menus works well for accessible users. We have gestures to open and navigate and close. The ‘close-and-select’ gesture works fine but the ‘close-and-cancel’ gesture (the ‘esc’ key) in reaper in a window which is docked in your FX panel doesn’t on macOS at least.

What seems to be happening is a user opens a menu, presses escape, and rather than my JUCE code getting a chance to process the escape and close the menu, reaper steals that key and closes the overall window dumping you out to the track view. Every other key goes to the plugin first.

So I think this is a reaper bug; you intercept “esc” too early and so I don’t get a chance to use it to close my menu.

For now I’ve added a patch to our JUCE branch (#7288) which also allows you to use Shift-F10 to close a menu (that is our menu open keybinding) and in reaper I can now close menus without select and without bailing out.

But I think this may be something you can fix in Reaper too? So figured I would drop a note.

Thanks as always!

- Paul

baconpaul added a commit that referenced this issue Nov 5, 2023
to work around reaper issue in #7281
@baconpaul baconpaul added the Host Specific Issues related to specific host(s) or host features label Nov 5, 2023
@baconpaul baconpaul modified the milestones: Surge XT 1.3, Surge XT 1.x Nov 5, 2023
@baconpaul
Copy link
Collaborator Author

With above merged and reported, I'm going to bounce this out of 1.3 since there's nothing more we can do I don't think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Accessibility Issues related to making Surge more accessible Bug Report Item submitted using the Bug Report template Host Specific Issues related to specific host(s) or host features
Projects
None yet
Development

No branches or pull requests

2 participants