mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-12 12:06:16 -08:00
Hide the native title bar on win32/linux (titleBarStyle: 'hidden', frame untouched so native resize borders and snapping keep working) and render minimize / maximize-restore / close buttons in the renderer, mirroring the existing macOS traffic-light setup. - New WINDOW:* IPC contract (minimize, toggle-maximize, close, get-state) handled in window.events.ts, resolved from the sender WebContents; close goes through win.close() so window-bounds persistence still runs. - WINDOW:STATE_CHANGED pushed on maximize/unmaximize/fullscreen so the maximize/restore glyph stays correct for OS-triggered changes; controls hide while fullscreen. - WindowControlsComponent mounts once in app-root as a manual popover so it stays in the browser top layer above CDK overlays (dialogs, multi-EPG) - same behavior as macOS traffic lights. - Theme-aware via CSS vars (--app-on-surface, --app-hover-overlay); Windows-red close hover. Drag regions get right padding through a body-level frameless-platform class. - Gated by RuntimeCapabilitiesService.usesCustomWindowControls; PWA and macOS never mount the controls. Includes unit specs for the component and IPC handlers, an Electron E2E suite (window-controls.e2e.ts), and a window-chrome section in docs/architecture/workspace-shell.md. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
16 lines
1.1 KiB
TypeScript
16 lines
1.1 KiB
TypeScript
export * from './lib/channel-list-container/channel-list-container.component';
|
|
export * from './lib/channel-list-container/channel-details-dialog/channel-details-dialog.component';
|
|
export * from './lib/channel-list-container/channel-list-item/channel-list-item.component';
|
|
export * from './lib/channel-list-container/channel-list-item-skeleton/channel-list-item-skeleton.component';
|
|
export * from './lib/channel-list-container/channel-list-skeleton/channel-list-skeleton.component';
|
|
export * from './lib/channel-list-loading-state/channel-list-loading-state.component';
|
|
export * from './lib/confirm-dialog/confirm-dialog.component';
|
|
export * from './lib/confirm-dialog/dialog.service';
|
|
export * from './lib/content-hero/content-hero.component';
|
|
export * from './lib/external-playback-dock/external-playback-dock.component';
|
|
export * from './lib/progress-capsule/progress-capsule.component';
|
|
export * from './lib/resizable/resizable.directive';
|
|
export * from './lib/season-container/season-container.component';
|
|
export * from './lib/watched-badge/watched-badge.component';
|
|
export * from './lib/window-controls/window-controls.component';
|