mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-03 09:46:54 +02:00
CmdPal: Add new colorful icons for Bookmarks and Performance Monitor (#45979)
## Summary of the Pull Request This PR replaces fluent outline icons used for Bookmarks extension and Performance Monitor extension to put them in line with other extensions: ## Pictures? Pictures: | | Old | New | |-----------------|----------------------|--------------------------| | Bookmarks | <img width="244" height="84" alt="image" src="https://github.com/user-attachments/assets/3fb26dd0-1b6b-4b48-b08b-af6ff2bf648d" /> | <img width="221" height="81" alt="image" src="https://github.com/user-attachments/assets/4f01eb93-1188-48aa-883f-c02e206bd2d1" /> | | Perf Mon | <img width="225" height="68" alt="image" src="https://github.com/user-attachments/assets/fd917461-0e42-474a-ae67-4d1cf433dfa9" /> | <img width="218" height="89" alt="image" src="https://github.com/user-attachments/assets/ba143d4b-f9b3-45aa-9948-d4ebb22abb29" /> | <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist - [ ] Closes: #xxx <!-- - [ ] 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
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 2.8 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 125 125" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><path d="M28.739,124.062c-2.866,2.349 -6.864,0.016 -6.864,-4.006l0,-98.671c0,-11.811 8.407,-21.385 18.778,-21.385l43.326,0c10.371,0 18.778,9.574 18.778,21.385l0,98.671c0,4.022 -3.998,6.355 -6.864,4.006l-33.577,-27.509l-33.577,27.509Z" style="fill:url(#_Linear1);fill-rule:nonzero;"/><defs><linearGradient id="_Linear1" x1="0" y1="0" x2="1" y2="-0.0236994" gradientUnits="userSpaceOnUse" gradientTransform="matrix(66.4934,143.035,-138.828,68.5085,31.9724,-9.86988)"><stop offset="0" style="stop-color:#0a7acc;stop-opacity:1"/><stop offset="1" style="stop-color:#0e5497;stop-opacity:1"/></linearGradient></defs></svg>
|
||||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -54,7 +54,7 @@ public sealed partial class BookmarksCommandProvider : CommandProvider
|
|||||||
|
|
||||||
Id = "Bookmarks";
|
Id = "Bookmarks";
|
||||||
DisplayName = Resources.bookmarks_display_name;
|
DisplayName = Resources.bookmarks_display_name;
|
||||||
Icon = Icons.PinIcon;
|
Icon = Icons.BookmarksExtensionIcon;
|
||||||
|
|
||||||
var addBookmarkPage = new AddBookmarkPage(null);
|
var addBookmarkPage = new AddBookmarkPage(null);
|
||||||
addBookmarkPage.AddedCommand += (_, e) => _bookmarksManager.Add(e.Name, e.Bookmark);
|
addBookmarkPage.AddedCommand += (_, e) => _bookmarksManager.Add(e.Name, e.Bookmark);
|
||||||
|
|||||||
@@ -6,7 +6,9 @@ namespace Microsoft.CmdPal.Ext.Bookmarks;
|
|||||||
|
|
||||||
internal static class Icons
|
internal static class Icons
|
||||||
{
|
{
|
||||||
internal static IconInfo BookmarkIcon { get; } = IconHelpers.FromRelativePath("Assets\\Bookmark.svg");
|
internal static IconInfo BookmarksExtensionIcon { get; } = IconHelpers.FromRelativePath("Assets\\Bookmarks.svg");
|
||||||
|
|
||||||
|
internal static IconInfo AddBookmarkIcon { get; } = IconHelpers.FromRelativePath("Assets\\Bookmark.svg");
|
||||||
|
|
||||||
internal static IconInfo DeleteIcon { get; } = new("\uE74D"); // Delete
|
internal static IconInfo DeleteIcon { get; } = new("\uE74D"); // Delete
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ internal sealed partial class AddBookmarkPage : ContentPage
|
|||||||
var name = bookmark?.Name ?? string.Empty;
|
var name = bookmark?.Name ?? string.Empty;
|
||||||
var url = bookmark?.Bookmark ?? string.Empty;
|
var url = bookmark?.Bookmark ?? string.Empty;
|
||||||
|
|
||||||
Icon = Icons.BookmarkIcon;
|
Icon = Icons.AddBookmarkIcon;
|
||||||
var isAdd = string.IsNullOrEmpty(name) && string.IsNullOrEmpty(url);
|
var isAdd = string.IsNullOrEmpty(name) && string.IsNullOrEmpty(url);
|
||||||
Title = isAdd ? Resources.bookmarks_add_title : Resources.bookmarks_edit_name;
|
Title = isAdd ? Resources.bookmarks_add_title : Resources.bookmarks_edit_name;
|
||||||
Name = isAdd ? Resources.bookmarks_add_name : Resources.bookmarks_edit_name;
|
Name = isAdd ? Resources.bookmarks_add_name : Resources.bookmarks_edit_name;
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 3.5 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 125 125" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><path d="M125,28.125l0,42.187l-125,0l0,-42.187c0,-7.761 4.739,-12.5 12.5,-12.5l100,0c7.761,0 12.5,4.739 12.5,12.5Z" style="fill:url(#_Linear1);"/><path d="M103.125,43.75c8.851,0 21.875,-16.647 21.875,-14.062l0,65.624l-125,0l0,-39.868l20.338,-11.874c1.502,-0.503 3.236,-0.437 4.662,0.18c0,0 12.5,9.375 21.724,9.373c0.051,-0 0.102,0.002 0.151,0.002c9.375,0 21.875,-21.875 31.25,-21.875c9.375,0 17.411,12.5 25,12.5Z" style="fill:url(#_Linear2);"/><path d="M125,53.018l0,43.857c0,7.761 -4.739,12.5 -12.5,12.5l-100,-0c-7.761,-0 -12.5,-4.739 -12.5,-12.5l0,-18.403c0,0 13.665,9.991 21.875,9.028c9.375,-1.1 23.438,-14.583 34.375,-15.625c10.938,-1.042 20.833,12.5 31.25,9.375c10.417,-3.125 31.25,-28.125 31.25,-28.125c0.916,-0.553 2.053,-0.854 3.225,-0.854c1.126,0 2.172,0.278 3.025,0.747Z" style="fill:url(#_Linear3);"/><path d="M0,96.875l0,-68.75c0,-7.761 4.739,-12.5 12.5,-12.5l100,-0c7.761,-0 12.5,4.739 12.5,12.5l0,68.75c0,7.761 -4.739,12.5 -12.5,12.5l-100,0c-7.761,0 -12.5,-4.739 -12.5,-12.5Z" style="fill:url(#_Radial4);"/><path d="M0,96.875l0,-68.75c0,-7.761 4.739,-12.5 12.5,-12.5l100,-0c7.761,-0 12.5,4.739 12.5,12.5l0,68.75c0,7.761 -4.739,12.5 -12.5,12.5l-100,0c-7.761,0 -12.5,-4.739 -12.5,-12.5Z" style="fill:url(#_Linear5);"/><clipPath id="_clip6"><path d="M0,96.875l0,-68.75c0,-7.761 4.739,-12.5 12.5,-12.5l100,-0c7.761,-0 12.5,4.739 12.5,12.5l0,68.75c0,7.761 -4.739,12.5 -12.5,12.5l-100,0c-7.761,0 -12.5,-4.739 -12.5,-12.5Z"/></clipPath><g clip-path="url(#_clip6)"><use xlink:href="#_Image7" x="100" y="15.625" width="25px" height="94px"/></g><defs><linearGradient id="_Linear1" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(6.25,43.75,-43.75,6.25,40.625,15.625)"><stop offset="0" style="stop-color:#99dbff;stop-opacity:1"/><stop offset="1" style="stop-color:#66c9ff;stop-opacity:1"/></linearGradient><linearGradient id="_Linear2" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(12.5,43.75,-43.75,12.5,68.75,34.375)"><stop offset="0" style="stop-color:#24b5f4;stop-opacity:1"/><stop offset="1" style="stop-color:#007cb3;stop-opacity:1"/></linearGradient><linearGradient id="_Linear3" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(9.375,34.375,-34.375,9.375,62.5,75)"><stop offset="0" style="stop-color:#2366a9;stop-opacity:1"/><stop offset="1" style="stop-color:#0d2659;stop-opacity:1"/></linearGradient><radialGradient id="_Radial4" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(116.279,90.6304,-59.6899,88.5109,5.81395,12.4998)"><stop offset="0" style="stop-color:#0fafff;stop-opacity:0"/><stop offset="0.64" style="stop-color:#0fafff;stop-opacity:0"/><stop offset="0.96" style="stop-color:#0067bf;stop-opacity:0.3"/><stop offset="1" style="stop-color:#0067bf;stop-opacity:0.3"/></radialGradient><linearGradient id="_Linear5" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.17754e-15,15.1051,-19.2308,9.24918e-16,62.5,91.1449)"><stop offset="0" style="stop-color:#163697;stop-opacity:0"/><stop offset="1" style="stop-color:#163697;stop-opacity:0.3"/></linearGradient><image id="_Image7" width="25px" height="94px" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAABeCAYAAADWtL+3AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB/klEQVRogd2WbW6EMAxEh23P0KP0qr1uf5SussYkM2PTj10JIQ1sHo5fCBuM39v7xwbgZT9ew/mQ3RzI8NvCOc0qEAoAYHMhNADoqyQCtvHoqmQLx8O1CiQDpQ8hQ3Z908HOsn9v131KHYjUdJiVLAeNWXW6IiDNKtNFAWSIoy8uWPFZJkPkpgN1hRmQDJFe8TCnSwUA8CthAVolg77LTSpeq/Tkkv3EaTpUSByA0hfidFn6Ar12tewn9CYVMwoS9B3PVPan7LIBKPaEzWiINGi8pkDoTSpmS4i7r4/np7CLbnyp6QpEGjRmVbvAZMp0WQBgUUmHvkuIOJi9n5SbzkCcQeP15XQ5fbArqUDpSmwAZpUs9JWEYO2iTcoebAaxF1/MFLssfVeQFn1BrngFKq8Ty6QsSyEnn6WUSVn2q3a1AWaQeLOy4g9ZpRJaCKUS+9VygOxm2SZl2dPYlVbS2nSAq2TV9KUQZ5XYJmXZbLrkwc6yB0jXZ2nMuu1KpzRC1PcUdf+s8eygWUXLSmYg9j6qEuoJ2eyskjYAMFRi6Ev3TrHLfgvcYsD+UcgOjZesYaFnlbAZ9SBX2DVdJ+oTskJ8QYTPUkuIak+Y7A65DDBC4s2uvlO7XH1XQliVOELgNvks7Xi1TCvpzH7OLtcaqunfEOaPzKDTnnSalII+AYNMEJ8kDKkcAAAAAElFTkSuQmCC"/></defs></svg>
|
||||||
|
After Width: | Height: | Size: 4.4 KiB |
@@ -6,8 +6,10 @@ using Microsoft.CommandPalette.Extensions.Toolkit;
|
|||||||
|
|
||||||
namespace Microsoft.CmdPal.Ext.PerformanceMonitor;
|
namespace Microsoft.CmdPal.Ext.PerformanceMonitor;
|
||||||
|
|
||||||
internal sealed class Icons
|
internal static class Icons
|
||||||
{
|
{
|
||||||
|
internal static IconInfo PerformanceMonitorIcon => IconHelpers.FromRelativePath("Assets\\PerformanceMonitorExtension.svg");
|
||||||
|
|
||||||
internal static IconInfo CpuIcon => new("\uE9D9"); // CPU icon
|
internal static IconInfo CpuIcon => new("\uE9D9"); // CPU icon
|
||||||
|
|
||||||
internal static IconInfo MemoryIcon => new("\uE964"); // Memory icon
|
internal static IconInfo MemoryIcon => new("\uE964"); // Memory icon
|
||||||
@@ -26,6 +28,3 @@ internal sealed class Icons
|
|||||||
|
|
||||||
internal static IconInfo NavigateForwardIcon => new("\uE72A"); // Next icon
|
internal static IconInfo NavigateForwardIcon => new("\uE72A"); // Next icon
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#pragma warning restore SA1402 // File may only contain a single type
|
|
||||||
|
|||||||
@@ -54,5 +54,10 @@
|
|||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</None>
|
</None>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Content Update="Assets\**\*.*">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ public partial class PerformanceMonitorCommandsProvider : CommandProvider
|
|||||||
{
|
{
|
||||||
DisplayName = Resources.GetResource("Performance_Monitor_Title");
|
DisplayName = Resources.GetResource("Performance_Monitor_Title");
|
||||||
Id = "PerformanceMonitor";
|
Id = "PerformanceMonitor";
|
||||||
Icon = Icons.StackedAreaIcon;
|
Icon = Icons.PerformanceMonitorIcon;
|
||||||
|
|
||||||
var page = new PerformanceWidgetsPage(false);
|
var page = new PerformanceWidgetsPage(false);
|
||||||
var band = new PerformanceWidgetsPage(true);
|
var band = new PerformanceWidgetsPage(true);
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ internal sealed partial class PerformanceWidgetsPage : OnLoadStaticListPage, IDi
|
|||||||
|
|
||||||
public override string Title => Resources.GetResource("Performance_Monitor_Title");
|
public override string Title => Resources.GetResource("Performance_Monitor_Title");
|
||||||
|
|
||||||
public override IconInfo Icon => Icons.StackedAreaIcon;
|
public override IconInfo Icon => Icons.PerformanceMonitorIcon;
|
||||||
|
|
||||||
private readonly bool _isBandPage;
|
private readonly bool _isBandPage;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user