Proposal Autoselect

From Audacity Wiki
Revision as of 11:48, 12 August 2017 by James (talk | contribs) (clarity.)
Jump to: navigation, search
Proposal pages help us get from feature requests into actual plans. This proposal page is about automatically selecting time and tracks when a selection is needed.
Proposal pages are used on an ongoing basis by the Audacity development team and are open to edits from visitors to the wiki. They are a good way to get community feedback on a proposal.

  • Note: Proposals for Google Summer of Code projects are significantly different in structure, are submitted via Google's web app and may or may not have a corresponding proposal page.
bug 1712 is about greying out behaviour and has a related wiki page Bugs in Graying Out.


  • Greying out is often confusing. users may not know why an operation is greyed out.
  • We have a somewhat confusing feature 'select all on none' which perhaps could be made more logical.
  • Visually impaired and keyboard users in particular would benefit from less greying out.

Proposed Feature

  • Implement reusable code that, when there is no suitable selection to act on, can autoselect all tracks (with a particular property) e.g.
    • Focus track
    • Tracks with playable audio in them
    • Tracks that are not empty
  • Apply that code to operations such as cursor movement operations in a systematic consistent manner.


  1. What is the purpose of the feature? - Less greying out.
  2. What are the relative importances of the different features in it? (this is used to justify having a large button, a small button or just a menu item, for example) - May require a preference or two, as autoselect does.
  3. Does the feature have modes, and if so how easy are the modes to get out of? (stuck in a mode) - No.
  4. Does the feature have invalid states that can be greyed out? - The feature is about addressing exactly that problem better.
  5. What is the factorisation of the feature? (e.g. pin/unpin can operate on its own, independent of scrub/seek). - We're decomposing it as general reusable code, and then choice about which operations to apply that to.
  6. What are the justifications for 'novelty' in the design? (e.g. RSI free operation, lack-of-precision in conventional sliders). - It isn't very novel.
  7. Is VI use integral? (e.g. labels added a label editor dialog, essential for VI, useful for non ). - Yes. It's VI/Keyboard motivated.

Developer Backing

  • James Crook