From e1f785ceddb78199e16bedef0958ba71c266b579 Mon Sep 17 00:00:00 2001 From: "Dustin L. Howett" Date: Thu, 2 Oct 2025 11:24:31 -0500 Subject: [PATCH] Remove the leading fire from the taskbar progress handler (#19403) If the progress state hasn't been set for more than 200ms, we shouldn't even bother flickering the old state. This prevents applications from making the tab (and the taskbar icon) flicker. We were reviewing #19394 and decided that the _original_ behavior before Leonard's throttling fix was somewhat unfortunate as well. An application that sets an indeterminate state for 10ms and then clears it shouldn't be able to make any part of the application flicker, fast _or_ slow. Removing the leading fire time from the throttled function ensures that it will only fire once every 200ms, and only with the state most recently set. It will not debounce (so setting the progress every 150ms will not prevent it from updating.) Closes #19394 (cherry picked from commit 998ab586e1cccf11a965cab9dc2dcdb7da8eaa6c) Service-Card-Id: PVTI_lADOAF3p4s4AxadtzgfZOsM PVTI_lADOAF3p4s4Axadtzgfb1Nw Service-Version: 1.23 --- src/cascadia/TerminalApp/TerminalTab.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/cascadia/TerminalApp/TerminalTab.cpp b/src/cascadia/TerminalApp/TerminalTab.cpp index 065a294481..129eb83c5e 100644 --- a/src/cascadia/TerminalApp/TerminalTab.cpp +++ b/src/cascadia/TerminalApp/TerminalTab.cpp @@ -973,7 +973,6 @@ namespace winrt::TerminalApp::implementation dispatcher, til::throttled_func_options{ .delay = std::chrono::milliseconds{ 200 }, - .leading = true, .trailing = true, }, [weakThis]() {