Remove the Windows 7 (7.css) skin
The win7 skin is dropped. Everything else the branch built stays: Linux support and the HTML context menus, the workspace-tab menu, the continuous interface scale (rem everywhere, stepper, Ctrl/Cmd +/-/0) and the core/ service layer. The modern tree already carried all of them, and nothing outside skins/7like/ imported the win7 tree except main.ts and styles.css. Removed: the skins/7like/ tree (5.1k lines, fonts), the 7.css dependency, the skin setting and its options row + strings in all 7 locales, the frameless-window plumbing (window-control RPCs, windowState push, trackMaximizeState, the synthesized resize grip and its postinstall watchdog), the session-skin pinning in buildPreload/chromeOptions, the skin/skinfix cascade layers, and the win7-only probes and screenshot harness (the harness cannot render the modern tree: plain Firefox has no RPC bridge). chromeOptions() stays as the one shared frame decision. Fixed on the way out: - index.html's per-theme pre-paint background is restored. The branch had replaced it with a win7-only transparent rule, so modern dark windows had silently lost one of the three flash guards. - editor-windows.ts wrote its window-key separator as a literal NUL byte, which made git and grep treat the file as binary; it is `\0` now (same string at runtime). No settings migration: a stale "skin" key is carried harmlessly by the store's spread-merge and dropped on the next save. UI bundle: 616.7 kB -> 405.4 kB, back under the 500 kB budget. Docs: architecture, gotchas and platform-notes lose the win7 material but keep what stays true (construction-time preloads/frames, drag regions ignoring preventDefault, electrobun's missing resize/maximize primitives); flash-prevention, dev-URL and Bun-panic notes move back under Electrobun; stale context-menu/tab-bar links fixed; README documents the scale keys. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+4
-14
@@ -1,19 +1,9 @@
|
||||
import { bootstrapApplication } from '@angular/platform-browser';
|
||||
import { appConfig } from '@core/app.config';
|
||||
import { APP_MODE, APP_SKIN } from '@core/platform';
|
||||
import { SEVEN_ROOTS } from './app/skins/7like';
|
||||
import { APP_MODE } from '@core/platform';
|
||||
import { SHAD_ROOTS } from './app/skins/shadlike';
|
||||
|
||||
// One bundle, two skins x three window kinds. Both globals are baked into the
|
||||
// preload (src/bun/windows.ts buildPreload) because both are needed before the
|
||||
// first paint: settings arrive over an async RPC, far too late to choose a
|
||||
// component tree without flashing the wrong UI.
|
||||
//
|
||||
// Every skin's barrel exports the same { main, manager, editor } shape, so this
|
||||
// file never learns anything about either tree's internals. Both are imported
|
||||
// statically and ship in one bundle — the inactive skin costs bundle size but
|
||||
// no runtime work, which is the right trade for a local desktop app and keeps
|
||||
// bootstrap synchronous.
|
||||
const tree = APP_SKIN === 'win7' ? SEVEN_ROOTS : SHAD_ROOTS;
|
||||
const root = APP_MODE === 'editor' ? tree.editor : APP_MODE === 'manager' ? tree.manager : tree.main;
|
||||
// One bundle, three window kinds: the preload global picks the root component.
|
||||
const root =
|
||||
APP_MODE === 'editor' ? SHAD_ROOTS.editor : APP_MODE === 'manager' ? SHAD_ROOTS.manager : SHAD_ROOTS.main;
|
||||
bootstrapApplication(root, appConfig).catch((err) => console.error(err));
|
||||
|
||||
Reference in New Issue
Block a user