From d76081458beb9ec16adf3636900079920a16e5b4 Mon Sep 17 00:00:00 2001 From: Nullmatic Date: Thu, 16 Nov 2023 00:16:41 -0600 Subject: [PATCH 1/4] feat: Implement MiddleClickAutoScroll setting (#171) --- src/main/mainWindow.ts | 5 ++++- src/renderer/components/Settings.tsx | 1 + src/shared/settings.d.ts | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/mainWindow.ts b/src/main/mainWindow.ts index 8fdb6ee4..983d8eaa 100644 --- a/src/main/mainWindow.ts +++ b/src/main/mainWindow.ts @@ -389,7 +389,8 @@ function createMainWindow() { contextIsolation: true, devTools: true, preload: join(__dirname, "preload.js"), - spellcheck: true + spellcheck: true, + ...(Settings.store.middleClickScroll && {enableBlinkFeatures: 'MiddleClickAutoscroll'}) }, icon: ICON_PATH, frame: !noFrame, @@ -406,6 +407,8 @@ function createMainWindow() { })); win.setMenuBarVisibility(false); + if(Settings.store.middleClickScroll) + win.on("close", e => { const useTray = !isDeckGameMode && Settings.store.minimizeToTray !== false && Settings.store.tray !== false; if (isQuitting || (process.platform !== "darwin" && !useTray)) return; diff --git a/src/renderer/components/Settings.tsx b/src/renderer/components/Settings.tsx index e0dcd550..19e51692 100644 --- a/src/renderer/components/Settings.tsx +++ b/src/renderer/components/Settings.tsx @@ -34,6 +34,7 @@ export default function SettingsUi() { true, () => Settings.tray ?? true ], + !isMac && ["middleClickScroll", "Middle Click Scroll", "Middle clicking scrolls instead of pastes", false], ["arRPC", "Rich Presence", "Enables Rich Presence via arRPC", false], [ "disableMinSize", diff --git a/src/shared/settings.d.ts b/src/shared/settings.d.ts index 5b5fd4c3..50851358 100644 --- a/src/shared/settings.d.ts +++ b/src/shared/settings.d.ts @@ -12,6 +12,7 @@ export interface Settings { transparencyOption?: "none" | "mica" | "tabbed" | "acrylic"; tray?: boolean; minimizeToTray?: boolean; + middleClickScroll?: boolean; openLinksWithElectron?: boolean; staticTitle?: boolean; enableMenu?: boolean; From 4ef8dffe8b76c261b325f10cd4e0b5cc3fc79567 Mon Sep 17 00:00:00 2001 From: Nullmatic Date: Thu, 16 Nov 2023 00:48:01 -0600 Subject: [PATCH 2/4] revise (Nullmatic/vesktop-funnies@d76081458beb9ec16adf3636900079920a16e5b4): Remade description and renamed some functions --- src/main/mainWindow.ts | 4 +--- src/renderer/components/Settings.tsx | 2 +- src/shared/settings.d.ts | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/main/mainWindow.ts b/src/main/mainWindow.ts index 983d8eaa..db1935df 100644 --- a/src/main/mainWindow.ts +++ b/src/main/mainWindow.ts @@ -390,7 +390,7 @@ function createMainWindow() { devTools: true, preload: join(__dirname, "preload.js"), spellcheck: true, - ...(Settings.store.middleClickScroll && {enableBlinkFeatures: 'MiddleClickAutoscroll'}) + ...(Settings.store.middleClickAutoscroll && {enableBlinkFeatures: 'MiddleClickAutoscroll'}) }, icon: ICON_PATH, frame: !noFrame, @@ -407,8 +407,6 @@ function createMainWindow() { })); win.setMenuBarVisibility(false); - if(Settings.store.middleClickScroll) - win.on("close", e => { const useTray = !isDeckGameMode && Settings.store.minimizeToTray !== false && Settings.store.tray !== false; if (isQuitting || (process.platform !== "darwin" && !useTray)) return; diff --git a/src/renderer/components/Settings.tsx b/src/renderer/components/Settings.tsx index 19e51692..e00d9094 100644 --- a/src/renderer/components/Settings.tsx +++ b/src/renderer/components/Settings.tsx @@ -34,7 +34,7 @@ export default function SettingsUi() { true, () => Settings.tray ?? true ], - !isMac && ["middleClickScroll", "Middle Click Scroll", "Middle clicking scrolls instead of pastes", false], + !isMac && ["middleClickAutoscroll", "Middle Click Autoscroll", "Middle-clicking scrolls instead of pasting content from PRIMARY (Requires a full restart)", false], ["arRPC", "Rich Presence", "Enables Rich Presence via arRPC", false], [ "disableMinSize", diff --git a/src/shared/settings.d.ts b/src/shared/settings.d.ts index 50851358..2184e44c 100644 --- a/src/shared/settings.d.ts +++ b/src/shared/settings.d.ts @@ -12,7 +12,7 @@ export interface Settings { transparencyOption?: "none" | "mica" | "tabbed" | "acrylic"; tray?: boolean; minimizeToTray?: boolean; - middleClickScroll?: boolean; + middleClickAutoscroll?: boolean; openLinksWithElectron?: boolean; staticTitle?: boolean; enableMenu?: boolean; From 4398e13f981dc180a39fbd51688e52993cbff4a3 Mon Sep 17 00:00:00 2001 From: Nullmatic Date: Mon, 27 Nov 2023 00:06:34 -0600 Subject: [PATCH 3/4] fix: Updated description and used linux switch --- src/renderer/components/Settings.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/renderer/components/Settings.tsx b/src/renderer/components/Settings.tsx index c50ebb5f..c65490b4 100644 --- a/src/renderer/components/Settings.tsx +++ b/src/renderer/components/Settings.tsx @@ -10,7 +10,7 @@ import { Margins } from "@vencord/types/utils"; import { Button, Forms, Select, Switch, Text, Toasts, useState } from "@vencord/types/webpack/common"; import { setBadge } from "renderer/appBadge"; import { useSettings } from "renderer/settings"; -import { isMac, isWindows } from "renderer/utils"; +import { isMac, isWindows, isLinux } from "renderer/utils"; import { isTruthy } from "shared/utils/guards"; export default function SettingsUi() { @@ -34,7 +34,7 @@ export default function SettingsUi() { true, () => Settings.tray ?? true ], - !isMac && ["middleClickAutoscroll", "Middle Click Autoscroll", "Middle-clicking scrolls instead of pasting content from PRIMARY (Requires a full restart)", false], + isLinux && ["middleClickAutoscroll", "Middle Click Autoscroll", "Enables middle-click scrolling (Requires a full restart)", false], ["arRPC", "Rich Presence", "Enables Rich Presence via arRPC", false], [ "disableMinSize", From c3abab9294c5b8219f8a2c6d960d8843c5aea47e Mon Sep 17 00:00:00 2001 From: Nullmatic Date: Wed, 17 Jan 2024 21:27:22 -0600 Subject: [PATCH 4/4] fix: Fixed setting file conflict --- src/renderer/components/Settings.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/renderer/components/Settings.tsx b/src/renderer/components/Settings.tsx index a6d635c1..2418fbd2 100644 --- a/src/renderer/components/Settings.tsx +++ b/src/renderer/components/Settings.tsx @@ -10,7 +10,7 @@ import { Margins } from "@vencord/types/utils"; import { Button, Forms, Select, Switch, Text, Toasts, useState } from "@vencord/types/webpack/common"; import { setBadge } from "renderer/appBadge"; import { useSettings } from "renderer/settings"; -import { isMac } from "renderer/utils"; +import { isMac, isLinux } from "renderer/utils"; import { isTruthy } from "shared/utils/guards"; export default function SettingsUi() { @@ -34,7 +34,7 @@ export default function SettingsUi() { true, () => Settings.tray ?? true ], - !isMac && ["middleClickAutoscroll", "Middle Click Autoscroll", "Enables middle-click scrolling (Requires a full restart)", false], + !isLinux && ["middleClickAutoscroll", "Middle Click Autoscroll", "Enables middle-click scrolling (Requires a full restart)", false], ["arRPC", "Rich Presence", "Enables Rich Presence via arRPC", false], [ "disableMinSize",