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

This commit is contained in:
thororen1234 2024-11-29 18:20:14 -05:00
commit 1207af83ad
3 changed files with 14 additions and 9 deletions

View file

@ -1,7 +1,7 @@
{ {
"name": "equicord", "name": "equicord",
"private": "true", "private": "true",
"version": "1.10.7", "version": "1.10.8",
"description": "The other cutest Discord client mod", "description": "The other cutest Discord client mod",
"homepage": "https://github.com/Equicord/Equicord#readme", "homepage": "https://github.com/Equicord/Equicord#readme",
"bugs": { "bugs": {

View file

@ -18,7 +18,7 @@
import { classNameFactory } from "@api/Styles"; import { classNameFactory } from "@api/Styles";
import ErrorBoundary from "@components/ErrorBoundary"; import ErrorBoundary from "@components/ErrorBoundary";
import { FluxDispatcher, React, useRef, useState } from "@webpack/common"; import { FluxDispatcher, useLayoutEffect, useRef, useState } from "@webpack/common";
import { ELEMENT_ID } from "../constants"; import { ELEMENT_ID } from "../constants";
import { settings } from "../index"; import { settings } from "../index";
@ -55,7 +55,7 @@ export const Magnifier = ErrorBoundary.wrap<MagnifierProps>(({ instance, size: i
const imageRef = useRef<HTMLImageElement | null>(null); const imageRef = useRef<HTMLImageElement | null>(null);
// since we accessing document im gonna use useLayoutEffect // since we accessing document im gonna use useLayoutEffect
React.useLayoutEffect(() => { useLayoutEffect(() => {
const onKeyDown = (e: KeyboardEvent) => { const onKeyDown = (e: KeyboardEvent) => {
if (e.key === "Shift") { if (e.key === "Shift") {
isShiftDown.current = true; isShiftDown.current = true;
@ -135,12 +135,14 @@ export const Magnifier = ErrorBoundary.wrap<MagnifierProps>(({ instance, size: i
setReady(true); setReady(true);
}); });
document.addEventListener("keydown", onKeyDown); document.addEventListener("keydown", onKeyDown);
document.addEventListener("keyup", onKeyUp); document.addEventListener("keyup", onKeyUp);
document.addEventListener("mousemove", updateMousePosition); document.addEventListener("mousemove", updateMousePosition);
document.addEventListener("mousedown", onMouseDown); document.addEventListener("mousedown", onMouseDown);
document.addEventListener("mouseup", onMouseUp); document.addEventListener("mouseup", onMouseUp);
document.addEventListener("wheel", onWheel); document.addEventListener("wheel", onWheel);
return () => { return () => {
document.removeEventListener("keydown", onKeyDown); document.removeEventListener("keydown", onKeyDown);
document.removeEventListener("keyup", onKeyUp); document.removeEventListener("keyup", onKeyUp);
@ -148,13 +150,15 @@ export const Magnifier = ErrorBoundary.wrap<MagnifierProps>(({ instance, size: i
document.removeEventListener("mousedown", onMouseDown); document.removeEventListener("mousedown", onMouseDown);
document.removeEventListener("mouseup", onMouseUp); document.removeEventListener("mouseup", onMouseUp);
document.removeEventListener("wheel", onWheel); document.removeEventListener("wheel", onWheel);
};
}, []);
useLayoutEffect(() => () => {
if (settings.store.saveZoomValues) { if (settings.store.saveZoomValues) {
settings.store.zoom = zoom.current; settings.store.zoom = zoom.current;
settings.store.size = size.current; settings.store.size = size.current;
} }
}; });
}, []);
if (!ready) return null; if (!ready) return null;

View file

@ -21,6 +21,7 @@ import { findByPropsLazy, waitFor } from "@webpack";
export let React: typeof import("react"); export let React: typeof import("react");
export let useState: typeof React.useState; export let useState: typeof React.useState;
export let useEffect: typeof React.useEffect; export let useEffect: typeof React.useEffect;
export let useLayoutEffect: typeof React.useLayoutEffect;
export let useMemo: typeof React.useMemo; export let useMemo: typeof React.useMemo;
export let useRef: typeof React.useRef; export let useRef: typeof React.useRef;
export let useReducer: typeof React.useReducer; export let useReducer: typeof React.useReducer;
@ -30,5 +31,5 @@ export const ReactDOM: typeof import("react-dom") & typeof import("react-dom/cli
waitFor("useState", m => { waitFor("useState", m => {
React = m; React = m;
({ useEffect, useState, useMemo, useRef, useReducer, useCallback } = React); ({ useEffect, useState, useLayoutEffect, useMemo, useRef, useReducer, useCallback } = React);
}); });