diff --git a/src/components/Icons.tsx b/src/components/Icons.tsx index 519d8ae53..79c82675c 100644 --- a/src/components/Icons.tsx +++ b/src/components/Icons.tsx @@ -1435,3 +1435,21 @@ export function FireIcon(props: IconProps) { ); } + +export function RemixIcon(props: IconProps) { + return ( + + + + + ); +} diff --git a/src/equicordplugins/equicordHelper/index.tsx b/src/equicordplugins/equicordHelper/index.tsx index ebc645f6b..6d1532d1b 100644 --- a/src/equicordplugins/equicordHelper/index.tsx +++ b/src/equicordplugins/equicordHelper/index.tsx @@ -359,6 +359,14 @@ export default definePlugin({ } ] }, + // gif-picker context menu doesnt get full context so give it + { + find: "renderEmptyFavorite", + replacement: { + match: /(?<=handleContextMenu.{0,150})(?=link:(\i)\.url)/, + replace: "...$1," + } + } ], renderMessageAccessory(props) { return ( diff --git a/src/equicordplugins/gifCollections/components/contextMenus.tsx b/src/equicordplugins/gifCollections/components/contextMenus.tsx index 76c24736c..9ebda0391 100644 --- a/src/equicordplugins/gifCollections/components/contextMenus.tsx +++ b/src/equicordplugins/gifCollections/components/contextMenus.tsx @@ -5,6 +5,7 @@ */ import { findGroupChildrenByChildId, NavContextMenuPatchCallback } from "@api/ContextMenu"; +import { FolderIcon, InfoIcon, LinkIcon, PencilIcon, PlusIcon, RemixIcon, TrashIcon } from "@components/Icons"; import { copyToClipboard } from "@utils/clipboard"; import { Alerts, Button, FluxDispatcher, Menu, showToast, Toasts } from "@webpack/common"; @@ -23,7 +24,13 @@ function dispatchRefresh(collectionName: string) { function AddToCollectionMenu(gif: Gif) { return ( - + {cache_collections.length > 0 && cache_collections.map(col => ( openCreateCollectionModal(gif)} /> @@ -58,6 +67,8 @@ export const addCollectionContextMenuPatch: NavContextMenuPatchCallback = (child label="Copy Image Link" key="copy-image-link" id="copy-image-link" + icon={LinkIcon} + leadingAccessory={{ type: "icon", icon: LinkIcon }} action={() => { copyToClipboard(gif.url); showToast("Image link copied to clipboard", Toasts.Type.SUCCESS); @@ -78,6 +89,8 @@ export function RemoveItemContextMenuItems({ type, nameOrId }: { type: "collecti key="collection-information" id="collection-information" label="Collection Information" + icon={InfoIcon} + leadingAccessory={{ type: "icon", icon: InfoIcon }} action={() => { const collection = cache_collections.find(c => c.name === nameOrId); if (collection) openCollectionInfoModal(collection); @@ -88,6 +101,8 @@ export function RemoveItemContextMenuItems({ type, nameOrId }: { type: "collecti key="rename-collection" id="rename-collection" label="Rename" + icon={PencilIcon} + leadingAccessory={{ type: "icon", icon: PencilIcon }} action={() => openRenameCollectionModal(nameOrId)} /> @@ -98,6 +113,8 @@ export function RemoveItemContextMenuItems({ type, nameOrId }: { type: "collecti key="gif-information" id="gif-information" label="Information" + icon={InfoIcon} + leadingAccessory={{ type: "icon", icon: InfoIcon }} action={() => { const gif = getGifById(nameOrId); if (gif) openGifInfoModal(gif); @@ -108,6 +125,8 @@ export function RemoveItemContextMenuItems({ type, nameOrId }: { type: "collecti key="copy-url" id="copy-url" label="Copy URL" + icon={LinkIcon} + leadingAccessory={{ type: "icon", icon: LinkIcon }} action={() => { const gif = getGifById(nameOrId); if (!gif) return; @@ -119,6 +138,8 @@ export function RemoveItemContextMenuItems({ type, nameOrId }: { type: "collecti key="move-to-collection" id="move-to-collection" label="Move To Collection" + icon={RemixIcon} + leadingAccessory={{ type: "icon", icon: RemixIcon }} action={() => openMoveToCollectionModal(nameOrId)} /> @@ -128,6 +149,8 @@ export function RemoveItemContextMenuItems({ type, nameOrId }: { type: "collecti key="delete-collection" id="delete-collection" label={type === "collection" ? "Delete Collection" : "Remove"} + icon={TrashIcon} + leadingAccessory={{ type: "icon", icon: TrashIcon }} action={() => { const doDelete = async () => { if (type === "collection") { @@ -171,6 +194,8 @@ export function GifPickerContextMenu({ gif }: { gif: Gif; }) { label="Copy Image Link" key="copy-image-link" id="copy-image-link" + icon={LinkIcon} + leadingAccessory={{ type: "icon", icon: LinkIcon }} action={() => { copyToClipboard(gif.url); showToast("Image link copied to clipboard", Toasts.Type.SUCCESS); @@ -191,6 +216,8 @@ export function getGifPickerContextMenuItems(src: string, url: string, height: n label="Copy Image Link" key="copy-image-link" id="copy-image-link" + icon={LinkIcon} + leadingAccessory={{ type: "icon", icon: LinkIcon }} action={() => { copyToClipboard(url); showToast("Image link copied to clipboard", Toasts.Type.SUCCESS); diff --git a/src/equicordplugins/gifCollections/index.tsx b/src/equicordplugins/gifCollections/index.tsx index 420d6353c..57868d227 100644 --- a/src/equicordplugins/gifCollections/index.tsx +++ b/src/equicordplugins/gifCollections/index.tsx @@ -90,7 +90,7 @@ export default definePlugin({ match: /(\i)\.name\),renderExtras:this\.renderCategoryExtras,/, replace: "$&onContextMenu:(e)=>$self.openCategoryContextMenu(e,$1)," } - }, + } ], start() { diff --git a/src/equicordplugins/gifMaker/index.tsx b/src/equicordplugins/gifMaker/index.tsx index 52f126dec..eeb6da825 100644 --- a/src/equicordplugins/gifMaker/index.tsx +++ b/src/equicordplugins/gifMaker/index.tsx @@ -7,6 +7,7 @@ import { NavContextMenuPatchCallback } from "@api/ContextMenu"; import { definePluginSettings, migratePluginSettings } from "@api/Settings"; import { Button } from "@components/Button"; +import { RemixIcon } from "@components/Icons"; import { EquicordDevs } from "@utils/constants"; import { classNameFactory } from "@utils/css"; import { getCurrentChannel } from "@utils/discord"; @@ -129,6 +130,8 @@ const gifPickerContextMenuPatch: NavContextMenuPatchCallback = (children, props) id="gif-maker-edit" key="gif-maker-edit" label="Edit GIF" + icon={RemixIcon} + leadingAccessory={{ type: "icon", icon: RemixIcon }} action={() => openGifMakerFromItem(props)} /> );