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

Planned Feature: Cycle Through Target Processes #1

Closed
radj307 opened this issue Feb 12, 2022 · 1 comment
Closed

Planned Feature: Cycle Through Target Processes #1

radj307 opened this issue Feb 12, 2022 · 1 comment
Assignees
Labels
enhancement New feature or request planned-feature Features that will be added in a future version.

Comments

@radj307
Copy link
Owner

radj307 commented Feb 12, 2022

Target Selection Hotkeys

This should allow cycling the current target audio session using hotkeys, allowing the user to perform common interactions with the application using only the keyboard.

Process Container Overhaul:

  • Process List
    • Predictability of the order of processes is important.
      • Do not allow removal of the current selection to preserve positioning.
      • Allow configurable sorting, but prioritize implementation first.
    • Maintain an iterator pointing to the currently selected process.
      • Increment
        • Used when the Next Target hotkey is pressed.
      • Decrement
        • Used when the Previous Target hotkey is pressed.
      • Set Position
        • Used when loading the program.
      • Get Position
        • Used by almost everything

New Settings:

All of the below settings will only be checked if at least one of the target selection hotkeys is enabled.

  • TargetNotificationEnabled
    • Type: bool
    • Default: true
  • TargetNotificationTimeout
    • Type: uint
    • Default: 1000
  • ListEnabled
    • Type: bool
    • Default: true
  • ListTimeout
    • Type: uint
    • Default: 4000

New Hotkeys:

  • Next Target
    • Self-explanatory.
  • Previous Target
    • Self-explanatory.
  • Show Target List
    • Triggers the target selection notification.
      • Displays the whole target list.
      • Displays the current target with a highlight.
      • Next Target & Previous Target live-update the selection indicator.

Order of Operations

Occurs each time a target selection hotkey is pressed.

  1. Reload the list of audio sessions & update the process list, preserving as much positioning as possible.
  2. Increment/decrement the process indexer if applicable.
  3. If Show Target List was pressed, show the target list window, otherwise show the toast notification if enabled.

Pressing any of the application-specific hotkeys will now affect the newly selected audio session.

Target Process Dropdown:

This is the pre-existing method of notifying the user, but it isn't suitable as an indicator due to the fact that the main window is usually hidden.

Toast Notification:

  • Configurable on-screen toast notification that shows the newly selected process for x milliseconds.

List Window

  • Shows all currently registered audio sessions (applications) in a list
@radj307 radj307 added the enhancement New feature or request label Feb 12, 2022
@radj307 radj307 self-assigned this Feb 12, 2022
@radj307 radj307 added the planned-feature Features that will be added in a future version. label Feb 12, 2022
@radj307 radj307 added this to the Target Selection Hotkeys milestone Feb 12, 2022
radj307 added a commit that referenced this issue Feb 13, 2022
Added target selection hotkeys #1
@radj307 radj307 closed this as completed Feb 16, 2022
@radj307
Copy link
Owner Author

radj307 commented Feb 16, 2022

Fully implemented as of 9ef8adc

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request planned-feature Features that will be added in a future version.
Projects
None yet
Development

No branches or pull requests

1 participant