Files
discord-decomp/modules/media_keyboard/native/useMediaKeyboardItemsPerRow.tsx
T
2026-11-01 12:12:55 +02:00

35 lines
1.1 KiB
TypeScript

// Metro module 9686 (f9687).
import { useRef, useEffect } from "react";
import useWindowSizeClassifier, { WindowSizeClassifier } from "../../screen/native/useWindowSizeClassifier";
export function useMediaKeyboardItemsPerRow() {
const windowSizeClassifier = useWindowSizeClassifier();
const XLARGE = WindowSizeClassifier.XLARGE;
let itemsPerRow = 8;
if (XLARGE !== windowSizeClassifier) {
const LARGE = WindowSizeClassifier.LARGE;
itemsPerRow = 6;
if (LARGE !== windowSizeClassifier) {
const NORMAL = WindowSizeClassifier.NORMAL;
itemsPerRow = 4;
if (NORMAL !== windowSizeClassifier) {
const SMALL = WindowSizeClassifier.SMALL;
itemsPerRow = 3;
if (SMALL !== windowSizeClassifier) {
throw new Error(`Unknown window size classifier: ${windowSizeClassifier}`);
}
}
}
}
let c17405_0 = itemsPerRow;
const itemsPageSize = 17 * itemsPerRow;
const ref = useRef(itemsPageSize);
useEffect(() => {
ref.current = 17 * c17405_0;
}, [itemsPerRow]);
return {
itemsPerRow,
itemsPageSize,
itemsPageSizeRef: ref
};
}