From f9c404c229af828b362086ae954252647c80b208 Mon Sep 17 00:00:00 2001
From: thororen <78185467+thororen1234@users.noreply.github.com>
Date: Mon, 9 Feb 2026 19:19:17 -0500
Subject: [PATCH] fix StartupTimings & Decor (#3963)
---
src/components/Icons.tsx | 16 ++++++++++++++
src/plugins/_core/settings.tsx | 21 ++++++++++--------
src/plugins/decor/index.tsx | 2 +-
src/plugins/startupTimings/index.tsx | 33 ++++++++++++++++------------
4 files changed, 48 insertions(+), 24 deletions(-)
diff --git a/src/components/Icons.tsx b/src/components/Icons.tsx
index 877eb89d..6e39f3f4 100644
--- a/src/components/Icons.tsx
+++ b/src/components/Icons.tsx
@@ -570,3 +570,19 @@ export function CloudUploadIcon(props: IconProps) {
);
}
+
+export const ClockIcon = (props?: any) => {
+ return (
+
+
+
+ );
+};
diff --git a/src/plugins/_core/settings.tsx b/src/plugins/_core/settings.tsx
index d9bcf95f..0c61e54c 100644
--- a/src/plugins/_core/settings.tsx
+++ b/src/plugins/_core/settings.tsx
@@ -92,6 +92,16 @@ const settings = definePluginSettings({
}
});
+const settingsSectionMap: [string, string][] = [
+ ["VencordSettings", "vencord_main_panel"],
+ ["VencordPlugins", "vencord_plugins_panel"],
+ ["VencordThemes", "vencord_themes_panel"],
+ ["VencordUpdater", "vencord_updater_panel"],
+ ["VencordCloud", "vencord_cloud_panel"],
+ ["VencordBackupAndRestore", "vencord_backup_restore_panel"],
+ ["VencordPatchHelper", "vencord_patch_helper_panel"]
+];
+
export default definePlugin({
name: "Settings",
description: "Adds Settings UI and debug info",
@@ -99,6 +109,7 @@ export default definePlugin({
required: true,
settings,
+ settingsSectionMap,
patches: [
{
@@ -205,15 +216,7 @@ export default definePlugin({
},
getSettingsSectionMappings() {
- return [
- ["VencordSettings", "vencord_main_panel"],
- ["VencordPlugins", "vencord_plugins_panel"],
- ["VencordThemes", "vencord_themes_panel"],
- ["VencordUpdater", "vencord_updater_panel"],
- ["VencordCloud", "vencord_cloud_panel"],
- ["VencordBackupAndRestore", "vencord_backup_restore_panel"],
- ["VencordPatchHelper", "vencord_patch_helper_panel"]
- ];
+ return settingsSectionMap;
},
buildLayout(originalLayoutBuilder: SettingsLayoutBuilder) {
diff --git a/src/plugins/decor/index.tsx b/src/plugins/decor/index.tsx
index c4888b94..854f9062 100644
--- a/src/plugins/decor/index.tsx
+++ b/src/plugins/decor/index.tsx
@@ -108,7 +108,7 @@ export default definePlugin({
replace: "$self.useUserDecorAvatarDecoration($2)??$1"
},
{
- match: /(?<=userValue:)((\i)(?:.{0,10})?\.avatarDecoration)/,
+ match: /(?<=userValue:)((\i(?:\.author)?)\?\.avatarDecoration)/,
replace: "$self.useUserDecorAvatarDecoration($2)??$1"
}
]
diff --git a/src/plugins/startupTimings/index.tsx b/src/plugins/startupTimings/index.tsx
index ede9dcd6..2a8eac3c 100644
--- a/src/plugins/startupTimings/index.tsx
+++ b/src/plugins/startupTimings/index.tsx
@@ -16,6 +16,8 @@
* along with this program. If not, see .
*/
+import { ClockIcon } from "@components/Icons";
+import SettingsPlugin from "@plugins/_core/settings";
import { Devs } from "@utils/constants";
import definePlugin from "@utils/types";
@@ -25,18 +27,21 @@ export default definePlugin({
name: "StartupTimings",
description: "Adds Startup Timings to the Settings menu",
authors: [Devs.Megu],
-
- patches: [{
- find: ".SEARCH_NO_RESULTS&&0===",
- replacement: [
- {
- match: /(?<=}\)([,;])(\i\.settings)\.forEach.+?(\i)\.push.+\)\)\}\))(?=\)\})/,
- replace: (_, commaOrSemi, settings, elements) => "" +
- `${commaOrSemi}${settings}?.[0]==="EXPERIMENTS"` +
- `&&${elements}.push({section:"StartupTimings",label:"Startup Timings",element:$self.StartupTimingPage})`,
- },
- ]
- }],
-
- StartupTimingPage
+ start() {
+ SettingsPlugin.customEntries.push({
+ key: "vencord_startup_timings",
+ title: "Startup Timings",
+ Component: StartupTimingPage,
+ Icon: ClockIcon
+ });
+ SettingsPlugin.settingsSectionMap.push(["VencordStartupTimings", "vencord_startup_timings"]);
+ },
+ stop() {
+ function removeFromArray(arr: T[], predicate: (e: T) => boolean) {
+ const idx = arr.findIndex(predicate);
+ if (idx !== -1) arr.splice(idx, 1);
+ }
+ removeFromArray(SettingsPlugin.customEntries, e => e.key === "vencord_startup_timings");
+ removeFromArray(SettingsPlugin.settingsSectionMap, entry => entry[1] === "vencord_startup_timings");
+ },
});