Combine progress states in the tab, taskbar #10755
Conversation
…rogress value correctly
… at once. Not sure I love it.
This comment has been hidden.
This comment has been hidden.
@check-spelling-bot ReportUnrecognized words, please review:
Previously acknowledged words that are now absentSPACEBAR UnregisterTo accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands... in a clone of the git@github.com:microsoft/terminal.git repository
|
This comment has been hidden.
This comment has been hidden.
|
Looks great! |
|
Hello @zadjii-msft! Because this pull request has the p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (
|
a14b6f8
into
main
| @@ -690,37 +709,39 @@ namespace winrt::TerminalApp::implementation | |||
| // - <none> | |||
| void TerminalTab::_UpdateProgressState() | |||
| { | |||
| if (const auto& activeControl{ GetActiveTerminalControl() }) | |||
| const auto state{ GetCombinedTaskbarState() }; | |||
DHowett
Aug 10, 2021
Member
gentle nit: we could compute the "max state" one time and store it, here, because this is the listener for all progress state changes (right?). That would make the call in TerminalPage free (it wouldn't need to min_element the group of winrt objects)
gentle nit: we could compute the "max state" one time and store it, here, because this is the listener for all progress state changes (right?). That would make the call in TerminalPage free (it wouldn't need to min_element the group of winrt objects)

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.

Summary of the Pull Request
This PR causes the Terminal to combine taskbar states at the tab and window level, according to the MSDN docs for
SetProgressState.This allows the Terminal's taskbar icon to continue showing progress information, even if you're in a pane/tab that doesn't have progress state. This is helpful for cases where the user may be running a build in one tab, and working on something else in another.
References
SetProgressStatePR Checklist
Detailed Description of the Pull Request / Additional comments
This also fixes a related bug where transitioning from the "error" or "warning" state directly to the "indeterminate" state would cause the taskbar icon to get stuck in a bad state.
Validation Steps Performed
progress.cmd