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

Add Accessibility Handlers to the TinyLittleIconButton (was: Expanded multi button menus) #4418

Closed
baconpaul opened this issue Apr 26, 2021 · 7 comments · Fixed by #5368
Closed
Labels
Feature Request New feature request Modulation Modulation related issues UI Issues related to UI look&feel UX Issues related to user experience (UX) - mouse, touch, keyboard, MIDI inputs, etc. WIP Issues that are an ongoing work in progress
Milestone

Comments

@baconpaul
Copy link
Collaborator

baconpaul commented Apr 26, 2021

Only thing left is accessibility APIs

Screen Shot 2021-09-12 at 9 29 22 AM


Talking on discord @mkruselj and I thought of turning this menu

Screen Shot 2021-04-25 at 10 22 46 PM

into the far mode compact version where the edit menu item also has a 'clear' button. So it becomes kinda like this with that red box being a "x" of some sort. (@mkruselj wanted to get rid of those edit and clear altogether but the rest of us didn't like that idea at all!).

Screen Shot 2021-04-25 at 10 26 42 PM

So this issue is: can I use a custom menu renderer to have the menu send two different messages somehow and plumb it through so that is doable and the menu is more compact. Placeholder so we don't forget the convo.

This also relates to #2049 but is obviously distinct.

@baconpaul baconpaul added the UX Issues related to user experience (UX) - mouse, touch, keyboard, MIDI inputs, etc. label Apr 26, 2021
@baconpaul baconpaul added this to the Surge XT 1.0 milestone Apr 26, 2021
@mkruselj mkruselj added Feature Request New feature request UI Issues related to UI look&feel labels Apr 26, 2021
@baconpaul
Copy link
Collaborator Author

mute too next to that obvs

@mkruselj mkruselj added the Modulation Modulation related issues label May 4, 2021
@mkruselj mkruselj changed the title Custom JUCE Menu Component to shorten modulation menu Custom JUCE component to shorten the modulation menu May 6, 2021
@tank-trax
Copy link
Collaborator

might I propose two buttons... one for clear (an x) and another to edit (a pencil)
even more compact

@baconpaul
Copy link
Collaborator Author

Yeah clear and mute for sure - the menu can do something if you click outside the button but we can add a pencil too.

@mkruselj
Copy link
Collaborator

mkruselj commented May 16, 2021

There's no need for pencil. I bet we can make the value displayed a text edit field directly.

I can only see the real need for Clear and Mute buttons.

@baconpaul
Copy link
Collaborator Author

So I started hacking on this and I realized its gonna run head first into the accessibility changes if I'm not careful. Need to think a bit.

baconpaul/custom-menu-4418 so i have it stashed away at least

@baconpaul baconpaul added the Before Beta If these are open we can't really call ourselves beta label Sep 6, 2021
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
This creates an expanded menu which has an X Mute and Edit icon
rather than the word "Edit" collapsing the "Edit/Clear" and adding
a "Mute", but currently only does it on target (slider) modulators
not source (LFO, Macro) modulators while we get feedback.

Addresses surge-synthesizer#4418
baconpaul added a commit that referenced this issue Sep 12, 2021
This creates an expanded menu which has an X Mute and Edit icon
rather than the word "Edit" collapsing the "Edit/Clear" and adding
a "Mute", but currently only does it on target (slider) modulators
not source (LFO, Macro) modulators while we get feedback.

Addresses #4418
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
More work on the Parameter Menu

1. Visually separate the header
2. Don't repeat the target name
3. Compress the clear and unmute
4. Generally reorder it to be more sensible

Addresses surge-synthesizer#4418
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
More work on the Parameter Menu

1. Visually separate the header
2. Don't repeat the target name
3. Compress the clear and unmute
4. Generally reorder it to be more sensible

Addresses surge-synthesizer#4418
baconpaul added a commit that referenced this issue Sep 12, 2021
More work on the Parameter Menu

1. Visually separate the header
2. Don't repeat the target name
3. Compress the clear and unmute
4. Generally reorder it to be more sensible

Addresses #4418
@mkruselj mkruselj added the WIP Issues that are an ongoing work in progress label Sep 12, 2021
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
baconpaul added a commit that referenced this issue Sep 12, 2021
Addressing the #4418 checklist some
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
baconpaul added a commit that referenced this issue Sep 12, 2021
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
Make the sources have an extended menu also.

Addresses and almost but not quite gets us done with surge-synthesizer#4418
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
Make the sources have an extended menu also.

Addresses and almost but not quite gets us done with surge-synthesizer#4418
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
Make the sources have an extended menu also.

Addresses and almost but not quite gets us done with surge-synthesizer#4418
baconpaul added a commit to baconpaul/surge that referenced this issue Sep 12, 2021
Make the sources have an extended menu also.

Addresses and almost but not quite gets us done with surge-synthesizer#4418
@baconpaul baconpaul removed the Before Beta If these are open we can't really call ourselves beta label Sep 12, 2021
baconpaul added a commit that referenced this issue Sep 12, 2021
Make the sources have an extended menu also.

Addresses and almost but not quite gets us done with #4418
@baconpaul baconpaul changed the title Custom JUCE component to shorten the modulation menu Add Accessibility Handlers to the TinyLittleIconButton (was: Expanded multi button menus) Sep 13, 2021
@baconpaul
Copy link
Collaborator Author

OK so right now this menu

Screen Shot 2021-11-11 at 11 10 52 AM

shows up this way in accessible query

MENU>>  'menu' (AXWindow actions=['Raise'])
MENU>> |-- 'Surge XT' (AXWindow actions=['Raise'])
MENU>> |--|-- '' (AXMenuItem actions=['Press'])
MENU>> |--|-- '' (AXGroup actions=[])
MENU>> |--|-- 'Edit Value: 0.00 dB' (AXMenuItem actions=['Press'])
MENU>> |--|-- '' (AXMenuItem actions=['Press'])
MENU>> |--|-- '' (AXGroup actions=[])
MENU>> |--|-- '' (AXMenuItem actions=['Press'])
MENU>> |--|-- '' (AXGroup actions=[])
MENU>> |--|-- '' (AXGroup actions=[])
MENU>> |--|-- '' (AXGroup actions=[])
MENU>> |--|-- '' (AXGroup actions=[])
MENU>> |--|-- 'Add Modulation from' (AXMenuItem actions=['ShowMenu', 'Press'])
MENU>> |--|-- 'Modulation List...' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Assign to MIDI CC' (AXMenuItem actions=['ShowMenu', 'Press'])
MENU>> |--|-- 'MIDI Learn...' (AXMenuItem actions=['Press'])

which is 'bad'

baconpaul added a commit to baconpaul/surge that referenced this issue Nov 11, 2021
Accesible handlers for all the components in the
modulation menu, including labels, actions, etc...
and a small script to exercise them

Closes surge-synthesizer#4418
@baconpaul
Copy link
Collaborator Author

And after I merge #5368 we will get

MENU>>  'menu' (AXWindow actions=['Raise'])
MENU>> |-- 'Surge XT' (AXWindow actions=['Raise'])
MENU>> |--|-- '' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Pre-Filter Gain' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Edit Value: 0.00 dB' (AXMenuItem actions=['Press'])
MENU>> |--|-- '' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'MODULATIONS' (AXMenuItem actions=[])
MENU>> |--|-- '' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'ENV 3 by 4.63 dB' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Clear ENV 3' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Mute ENV 3' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Edit ENV 3' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Add Modulation from' (AXMenuItem actions=['ShowMenu', 'Press'])
MENU>> |--|-- 'Modulation List...' (AXMenuItem actions=['Press'])
MENU>> |--|-- 'Assign to MIDI CC' (AXMenuItem actions=['ShowMenu', 'Press'])
MENU>> |--|-- 'MIDI Learn...' (AXMenuItem actions=['Press'])

which is "good"

baconpaul added a commit that referenced this issue Nov 11, 2021
Accesible handlers for all the components in the
modulation menu, including labels, actions, etc...
and a small script to exercise them

Closes #4418
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request New feature request Modulation Modulation related issues UI Issues related to UI look&feel UX Issues related to user experience (UX) - mouse, touch, keyboard, MIDI inputs, etc. WIP Issues that are an ongoing work in progress
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants