Merge remote-tracking branch 'upstream/dev' into dev

This commit is contained in:
thororen1234 2025-04-02 16:24:56 -04:00
commit a1cc1bb826
No known key found for this signature in database
15 changed files with 590 additions and 823 deletions

View file

@ -53,13 +53,16 @@ const settings = definePluginSettings({
addBack: {
type: OptionType.BOOLEAN,
description: "Add back the Discord context menus for images, links and the chat input bar",
default: false,
restartNeeded: true,
// Web slate menu has proper spellcheck suggestions and image context menu is also pretty good,
// so disable this by default. Vesktop just doesn't, so enable by default
default: result,
restartNeeded: true
// so disable this by default. Vesktop just doesn't, so we force enable it there
hidden: result,
}
});
const shouldAddBackMenus = () => result || settings.store.addBack;
const MEDIA_PROXY_URL = "https://media.discordapp.net";
const CDN_URL = "cdn.discordapp.com";
@ -92,7 +95,7 @@ export default definePlugin({
settings,
start() {
if (settings.store.addBack) {
if (shouldAddBackMenus()) {
window.removeEventListener("contextmenu", ctxMenuCallbacks.contextMenuCallbackWeb);
window.addEventListener("contextmenu", ctxMenuCallbacks.contextMenuCallbackNative);
this.changedListeners = true;
@ -155,7 +158,7 @@ export default definePlugin({
{
find: 'navId:"image-context"',
all: true,
predicate: () => settings.store.addBack,
predicate: shouldAddBackMenus,
replacement: {
// return IS_DESKTOP ? React.createElement(Menu, ...)
match: /return \i\.\i(?=\?|&&)/,
@ -166,7 +169,7 @@ export default definePlugin({
// Add back link context menu
{
find: '"interactionUsernameProfile"',
predicate: () => settings.store.addBack,
predicate: shouldAddBackMenus,
replacement: {
match: /if\((?="A"===\i\.tagName&&""!==\i\.textContent)/,
replace: "if(false&&"
@ -176,7 +179,7 @@ export default definePlugin({
// Add back slate / text input context menu
{
find: 'getElementById("slate-toolbar"',
predicate: () => settings.store.addBack,
predicate: shouldAddBackMenus,
replacement: {
match: /(?<=handleContextMenu\(\i\)\{.{0,200}isPlatformEmbedded)\)/,
replace: "||true)"
@ -184,7 +187,7 @@ export default definePlugin({
},
{
find: ".SLASH_COMMAND_SUGGESTIONS_TOGGLED,{",
predicate: () => settings.store.addBack,
predicate: shouldAddBackMenus,
replacement: [
{
// if (!IS_DESKTOP) return null;
@ -200,7 +203,7 @@ export default definePlugin({
},
{
find: '"add-to-dictionary"',
predicate: () => settings.store.addBack,
predicate: shouldAddBackMenus,
replacement: {
match: /let\{text:\i=""/,
replace: "return [null,null];$&"