refactor: remove cleaner menu and accelerated 2D canvas toggle
This commit is contained in:
@@ -75,7 +75,6 @@ export interface AppConfig {
|
||||
showExitButton: boolean;
|
||||
deathscreenAnimation: boolean;
|
||||
hideMenuPopups: boolean;
|
||||
cleanerMenu: boolean;
|
||||
menuTimer: boolean;
|
||||
doublePing: boolean;
|
||||
cssTheme: string;
|
||||
@@ -96,7 +95,6 @@ export interface AppConfig {
|
||||
removeUselessFeatures: boolean;
|
||||
gpuRasterizing: boolean;
|
||||
helpfulFlags: boolean;
|
||||
disableAccelerated2D: boolean;
|
||||
increaseLimits: boolean;
|
||||
lowLatency: boolean;
|
||||
experimentalFlags: boolean;
|
||||
@@ -180,7 +178,6 @@ export const config = new Store<AppConfig>({
|
||||
showExitButton: true,
|
||||
deathscreenAnimation: true,
|
||||
hideMenuPopups: false,
|
||||
cleanerMenu: false,
|
||||
menuTimer: true,
|
||||
doublePing: true,
|
||||
cssTheme: 'disabled',
|
||||
@@ -201,7 +198,6 @@ export const config = new Store<AppConfig>({
|
||||
removeUselessFeatures: true,
|
||||
gpuRasterizing: false,
|
||||
helpfulFlags: true,
|
||||
disableAccelerated2D: false,
|
||||
increaseLimits: false,
|
||||
lowLatency: false,
|
||||
experimentalFlags: false,
|
||||
|
||||
@@ -49,7 +49,6 @@ const advancedDefaults = {
|
||||
removeUselessFeatures: true,
|
||||
gpuRasterizing: false,
|
||||
helpfulFlags: true,
|
||||
disableAccelerated2D: false,
|
||||
increaseLimits: false,
|
||||
lowLatency: false,
|
||||
experimentalFlags: false,
|
||||
|
||||
@@ -106,11 +106,6 @@ export function applyPlatformFlags(info: PlatformInfo, advanced: AppConfig['adva
|
||||
app.commandLine.appendSwitch('enable-features', 'V8VmFuture,WebAssemblyBaseline,WebAssemblyTiering,WebAssemblyLazyCompilation');
|
||||
}
|
||||
|
||||
// ── Disable accelerated 2D canvas ──
|
||||
if (advanced.disableAccelerated2D) {
|
||||
app.commandLine.appendSwitch('disable-accelerated-2d-canvas');
|
||||
}
|
||||
|
||||
// ── Increase limits ──
|
||||
if (advanced.increaseLimits) {
|
||||
app.commandLine.appendSwitch('renderer-process-limit', '100');
|
||||
|
||||
+2
-12
@@ -4,7 +4,7 @@ import type { MatchmakerConfig } from './matchmaker';
|
||||
import { initUserscripts, getInstances, setScriptEnabled } from './userscripts';
|
||||
import type { UserscriptInstance } from './userscripts';
|
||||
import { initTranslator, updateTranslatorConfig } from './translator';
|
||||
import { setDeathAnimBlock, setCleanerMenu, setMenuTimer, escapeHtml } from './utils';
|
||||
import { setDeathAnimBlock, setMenuTimer, escapeHtml } from './utils';
|
||||
import { initChat, setBetterChat, setChatHistorySize } from './chat';
|
||||
import { initHPCounter, destroyHPCounter, initRankProgress } from './competitive';
|
||||
import { checkChangelog } from './changelog';
|
||||
@@ -608,13 +608,6 @@ function buildGeneralSection(
|
||||
onChange: (v) => { game.joinAsSpectator = v; ipcRenderer.invoke('set-config', 'game', game); },
|
||||
}));
|
||||
|
||||
body.appendChild(createToggleRow({
|
||||
label: 'Cleaner Menu',
|
||||
desc: 'Hide clutter from the main menu (scrollbars, social buttons, class preview, etc.)',
|
||||
checked: ui.cleanerMenu ?? false, instant: true,
|
||||
onChange: (v) => { ui.cleanerMenu = v; saveUI(); setCleanerMenu(v); },
|
||||
}));
|
||||
|
||||
body.appendChild(createToggleRow({
|
||||
label: 'Menu Timer',
|
||||
desc: 'Show the game/spectate timer on the menu screen',
|
||||
@@ -1089,7 +1082,6 @@ function buildAdvancedSection(
|
||||
removeUselessFeatures: true,
|
||||
gpuRasterizing: false,
|
||||
helpfulFlags: true,
|
||||
disableAccelerated2D: false,
|
||||
increaseLimits: false,
|
||||
lowLatency: false,
|
||||
experimentalFlags: false,
|
||||
@@ -1134,9 +1126,8 @@ function buildAdvancedSection(
|
||||
{ key: 'removeUselessFeatures', label: 'Remove Useless Features', desc: 'Disables crash reporting, metrics, print preview, and other unused Chromium features', safety: 1 },
|
||||
{ key: 'gpuRasterizing', label: 'GPU Rasterization', desc: 'Force GPU rasterization and out-of-process rasterization', safety: 2 },
|
||||
{ key: 'helpfulFlags', label: 'Useful Flags', desc: 'Enables WebGL, JS harmony, V8 features, background throttle prevention, and autoplay bypass', safety: 3 },
|
||||
{ key: 'disableAccelerated2D', label: 'Disable Accelerated 2D Canvas', desc: 'Disables hardware-accelerated 2D canvas rendering', safety: 3 },
|
||||
{ key: 'increaseLimits', label: 'Increase Limits', desc: 'Raises renderer process, WebGL context, and WebRTC CPU limits; ignores GPU blocklist', safety: 4 },
|
||||
{ key: 'lowLatency', label: 'Low Latency Flags', desc: 'Enables high-resolution timer, QUIC protocol, and accelerated 2D canvas', safety: 4 },
|
||||
{ key: 'lowLatency', label: 'Low Latency Flags', desc: 'Enables high-resolution timer, QUIC protocol, and high-performance GPU', safety: 4 },
|
||||
{ key: 'experimentalFlags', label: 'Experimental Flags', desc: 'Enables accelerated video decode, native GPU memory buffers, high DPI support, and disables pings/proxy', safety: 4 },
|
||||
];
|
||||
|
||||
@@ -1654,7 +1645,6 @@ ipcRenderer.on('main_did-finish-load', () => {
|
||||
|
||||
if (uiConf?.deathscreenAnimation) setDeathAnimBlock(true);
|
||||
if (uiConf?.hideMenuPopups) startHidePopups();
|
||||
if (uiConf?.cleanerMenu) setCleanerMenu(true);
|
||||
if (uiConf?.menuTimer ?? true) setMenuTimer(true);
|
||||
|
||||
// ── Double ping display ──
|
||||
|
||||
@@ -40,40 +40,6 @@ export function setDeathAnimBlock(enabled: boolean): void {
|
||||
}
|
||||
}
|
||||
|
||||
// ── Cleaner Menu ──
|
||||
// Hides clutter from the main menu for a streamlined look.
|
||||
|
||||
const CLEANER_MENU_ID = 'kpc-cleanerMenu';
|
||||
const CLEANER_MENU_CSS = `
|
||||
*::-webkit-scrollbar { display: none !important; }
|
||||
.settingsBtn[style*="width:auto;background-color:#994cd1"] { display: none !important; }
|
||||
.setSugBox2 { display: none !important; }
|
||||
.advancedSwitch { display: none !important; }
|
||||
.menuSocialB { display: none !important; }
|
||||
.serverHostOpH { display: none !important; }
|
||||
.signup-rewards-container { display: none !important; }
|
||||
#tlInfHold { display: none !important; }
|
||||
#gameNameHolder { display: none !important; }
|
||||
#termsInfo { display: none !important; }
|
||||
#bubbleContainer { display: none !important; }
|
||||
#instructions:only-child { display: none !important; }
|
||||
#mapInfoHld { display: none !important; }
|
||||
#krDiscountAd { display: none !important; }
|
||||
#classPreviewCanvas { display: none !important; }
|
||||
#menuClassSubtext { display: none !important; }
|
||||
#settingsPreset { display: none !important; }
|
||||
#menuClassName { display: none !important; }
|
||||
#menuBtnQuickMatch { display: none !important; }
|
||||
#menuClassIcn { display: none !important; }
|
||||
#streamContainerNew { display: none !important; }
|
||||
#editorBtnM { display: none !important; }
|
||||
.verticalSeparator { visibility: hidden !important; }
|
||||
#mLevelCont { background-color: transparent; }
|
||||
#uiBase.onMenu #spectButton { top: 94% !important; }
|
||||
.headerBarL, .headerBar, .menuBtnHL { background-color: transparent; }
|
||||
.headerBarR { right: -23px !important; }
|
||||
`;
|
||||
|
||||
// ── Menu Timer ──
|
||||
// Shows the native spectate/game timer prominently on the menu screen.
|
||||
// CSS approach from crankshaft/glorp.
|
||||
@@ -125,16 +91,3 @@ export function setMenuTimer(enabled: boolean): void {
|
||||
}
|
||||
}
|
||||
|
||||
export function setCleanerMenu(enabled: boolean): void {
|
||||
let el = document.getElementById(CLEANER_MENU_ID);
|
||||
if (enabled) {
|
||||
if (!el) {
|
||||
el = document.createElement('style');
|
||||
el.id = CLEANER_MENU_ID;
|
||||
el.textContent = CLEANER_MENU_CSS;
|
||||
document.head.appendChild(el);
|
||||
}
|
||||
} else if (el) {
|
||||
el.remove();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user