mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-03 09:46:54 +02:00
CmdPal: Hotfix commonCallbacks array initial count to prevent negative number (#46215)
## Summary of the Pull Request This PR ensures that requested initial capacity is not a negative number. `TopLevelCommandManager.TopLevelCommands` state is not is sync with `globalFallbacks` here, plus `globalFallbacks` includes providers that are disabled. <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist - [x] Closes: #46210 <!-- - [ ] Closes: #yyy (add separate lines for additional resolved issues) --> - [ ] **Communication:** I've discussed this with core contributors already. If the work hasn't been agreed, this work might be rejected - [ ] **Tests:** Added/updated and all pass - [ ] **Localization:** All end-user-facing strings can be localized - [ ] **Dev docs:** Added/updated - [ ] **New binaries:** Added on the required places - [ ] [JSON for signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json) for new binaries - [ ] [WXS for installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs) for new binaries and localization folder - [ ] [YML for CI pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml) for new test projects - [ ] [YML for signed pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml) - [ ] **Documentation updated:** If checked, please file a pull request on [our docs repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys) and link it here: #xxx <!-- Provide a more detailed description of the PR, other things fixed, or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed --------- Co-authored-by: Zach Teutsch <88554871+zateutsch@users.noreply.github.com> Co-authored-by: Zachary Teutsch <zteutsch@microsoft.com>
This commit is contained in:
@@ -365,9 +365,9 @@ public sealed partial class MainListPage : DynamicListPage,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// prefilter fallbacks
|
// prefilter fallbacks
|
||||||
var globalFallbacks = _settingsService.Settings.GetGlobalFallbacks();
|
var configuredGlobalFallbackIds = _settingsService.Settings.GetGlobalFallbacks();
|
||||||
var specialFallbacks = new List<TopLevelViewModel>(globalFallbacks.Length);
|
var specialFallbacks = new List<TopLevelViewModel>(configuredGlobalFallbackIds.Length);
|
||||||
var commonFallbacks = new List<TopLevelViewModel>(commands.Count - globalFallbacks.Length);
|
var commonFallbacks = new List<TopLevelViewModel>(Math.Max(commands.Count - configuredGlobalFallbackIds.Length, 0));
|
||||||
|
|
||||||
foreach (var s in commands)
|
foreach (var s in commands)
|
||||||
{
|
{
|
||||||
@@ -376,7 +376,7 @@ public sealed partial class MainListPage : DynamicListPage,
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (globalFallbacks.Contains(s.Id))
|
if (configuredGlobalFallbackIds.Contains(s.Id))
|
||||||
{
|
{
|
||||||
specialFallbacks.Add(s);
|
specialFallbacks.Add(s);
|
||||||
}
|
}
|
||||||
@@ -509,7 +509,7 @@ public sealed partial class MainListPage : DynamicListPage,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerable<IListItem> newFallbacksForScoring = commands.Where(s => s.IsFallback && globalFallbacks.Contains(s.Id));
|
IEnumerable<IListItem> newFallbacksForScoring = commands.Where(s => s.IsFallback && configuredGlobalFallbackIds.Contains(s.Id));
|
||||||
_scoredFallbackItems = InternalListHelpers.FilterListWithScores(newFallbacksForScoring, searchQuery, _scoringFunction);
|
_scoredFallbackItems = InternalListHelpers.FilterListWithScores(newFallbacksForScoring, searchQuery, _scoringFunction);
|
||||||
|
|
||||||
if (token.IsCancellationRequested)
|
if (token.IsCancellationRequested)
|
||||||
|
|||||||
Reference in New Issue
Block a user