Skip to content

v2.4.8 - #58

Merged
NeelFrostrain merged 20 commits into
releasefrom
main
Jul 20, 2026
Merged

NeelFrostrain merged 20 commits into
releasefrom
main

Conversation

@NeelFrostrain

Copy link
Copy Markdown
Owner

[2.4.8] - 2026-07-20 — feature · bugfix · quality

Changed

  • Redesigned Settings Page navigation to use a horizontal tab-bar layout matching the Engines and Projects pages.
  • Refactored tab lists across Settings, Projects, Engines, and Tasks pages to utilize a single, reusable custom Tabs UI component, ensuring visual consistency.
  • Replaced blue project context menu hover states with a clean, low-opacity white background matching the settings card rows.
  • Upgraded Engine, Fab Asset, and Project Plugin cards to feature unified glassmorphic gradients, soft ambient shadows, and hover elevation scaling.
  • Simplified Plugin Grid card interactions, removing the view details info icon and allowing developers to click anywhere on the card to open its detail panel.
  • Updated the project context menu layout to hide the icon column space entirely for menu items without icons, aligning text cleanly to the left.

Added

  • Added sg.LandscapeQuality to Unreal Engine scalability presets command-line generation, ensuring landscape quality scales with chosen quality profiles (Low, Medium, etc.) in newer engine versions instead of defaulting to Epic.
  • Added launchPauseDuration setting and guard logic in project launching, warning the user and blocking consecutive launches within a user-defined safety delay (in seconds).
  • Added a Change Engine Version submenu to the project context menu, allowing users to switch the engine association of .uproject files directly from the launcher.

Fixed

  • Fixed horizontal layout and titlebar overflow bugs in narrow window views by utilizing flex-wrap and setting proper flex-basis limits (min-w-0) across the main layout columns.
  • Fixed layout overflow and alignment bugs on the Engine Plugins page by scaling the search input to a proportional fixed width next to the filter dropdowns.
  • Fixed the 'Auto-close on launch' setting being ignored when launching projects or engines with custom configurations.
  • Fixed safety launch cooldown locking the user out on failed launches by immediately clearing the cooldown on failure.

…oving duplicate hardcoded lists and setting TypeScript as single source of truth

FEATURES:
- Centralized default Unreal Engine scan paths managed by TypeScript (`platformPaths.ts`) for a single source of truth
- Removed duplicate hardcoded platform-specific lists from Rust native module
- Updated documentation (`AboutKnownIssues.tsx`) to reflect new default scan paths

IMPROVEMENTS:
- Simplified engine scanning by removing duplicate code and treating each path as a single source of truth
- Improved platform path management by removing hardcoded paths and using TypeScript as a single source of truth
- Reduced code duplication and improved maintainability

TECHNICAL DETAILS:
- 4 files changed: 34 insertions(+), 57 deletions(-)
- Files: native/src/lib.rs, src/main/utils/platformPaths.ts, src/renderer/src/components/about/AboutKnownIssues.tsx, CHANGELOG.json
- Removed 67 lines of duplicate code from Rust native module
- Improved TypeScript platform path management for a single source of truth

IMPACT:
- Improved developer experience by reducing code duplication and improving maintainability
- Simplified engine scanning for a more robust and efficient solution
- Enhanced platform path management for a more flexible and scalable solution
… Snapshot Manager

FEATURES:
- Added Unreal Engine Snapshot Manager: A lightweight backup and restore utility that packages essential project directories (`Config`, `Content`, `Source` and the `.uproject` file) into compressed ZIP archives stored in application data, while strictly ignoring bloating folders.
- Implemented non-blocking async backend zip compression and extraction in Rust (`native/src/lib.rs`) running on worker pools via napi's `tokio_rt`.
- Added interactive Snapshot Manager UI dialog allowing developers to capture checkpoints, view history logs, rollback to specific snapshots, and manage backups.

TECHNICAL DETAILS:
- 11 files changed: 1868 insertions(+), 21 deletions(-)
- Files: native/Cargo.lock, native/src/lib.rs, CHANGELOG.json, CHANGELOG.md, src/main/ipc/projectSnapshots.ts, src/main/ipc/projects.ts, src/main/ipc/taskManager.ts, src/main/ipcHandlers.ts, src/renderer/src/App.tsx, src/renderer/src/components/ui/CommandPalette.tsx, src/renderer/src/layout/index.tsx
- Metrics:
  - Improved project backup and restore efficiency with async zip compression and extraction
  - Enhanced snapshot management with interactive UI and checkpoint history logging

IMPACT:
- Improved developer productivity with automated project backup and restore
- Enhanced project stability and integrity with efficient snapshot management
- Better overall user experience with interactive snapshot management tools
IMPROVEMENTS:
- Updated native dependencies to latest versions
- Integrated new packages for improved functionality
- Enhanced native tooling setup for better performance and compatibility

FEATURES:
- Added support for new packages: autocfg, bit-set, bit-vec, block-buffer, crypto-common, crc, crc-catalog, crypto-common, derive_arbitrary, digest, displaydoc, filetime, filetime_creation, flate2, futures-core, futures-task, futures-util, generic-array, hashbrown, js-sys, libc, libloading, pin-project-lite, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab, slab
- Updated Cargo.toml with new dependencies

TECHNICAL DETAILS:
- 23 files changed: 2086 insertions(+), 1049 deletions(-)
- Files: native/Cargo.lock, native/Cargo.toml, native/src/lib.rs, package.json, src/main/ipc/projectSnapshots.ts, src/main/utils/native.ts, src/preload/index.d.ts, src/preload/index.ts, src/renderer/src/assets/main.css, src/renderer/src/components/projects/ProjectCard.tsx, src/renderer/src/components/projects/ProjectSnapshotsDialog.tsx, src/renderer/src/components/projects/ProjectsToolbar.tsx, src/renderer/src/components/projects/card/projectCardContent.tsx, src/renderer/src/components/projects/projectUtils.ts, src/renderer/src/components/projects/toolbar/SortDropdown.tsx, src/renderer/src/settings/appearance/ColorOverrides.tsx, src/renderer/src/components/tasks/TasksContent.tsx, src/renderer/src/components/tasks/TasksToolbar.tsx, src/renderer/src/hooks/useProjectsPageState.ts, src/renderer/src/pages/TasksPage.tsx, src/renderer/src/types/index.ts, src/renderer/src/utils/themeTokens.ts, test-hotkey.ps1
- New packages: autocfg, bit-set, bit-vec, block-buffer, crypto-common, crc, crc-catalog, crypto-common, derive_arbitrary, digest, displaydoc, filetime, filetime_creation, flate2, futures-core, futures-task, futures-util, generic-array, hashbrown, js-sys, libc, libloading, pin-project-lite, slab

IMPACT:
- Improved performance and compatibility with up-to-date native dependencies
- Enhanced native tooling setup for better functionality and user experience
- Support for new packages and features for improved functionality
…rage and caching

IMPROVEMENTS:
- Unified theme-related settings storage and caching
- Migrated settings handling to use consistent cache storage
- Implemented background close toggle with localStorage caching

BUG FIXES:
- Fixed inconsistent project-associated version handling in useProjectsPageState
- Resolved unnecessary useEffect re-renders due to stale dependency

TECHNICAL DETAILS:
- 9 files changed: 76 insertions(+), 63 deletions(-)
- Specific files: src/renderer/src/assets/main.css, src/renderer/src/components/projects/ProjectSnapshotsDialog.tsx, src/renderer/src/components/settings/appearance/RadiusControl.tsx, src/renderer/src/hooks/useProjectsPageState.ts, src/renderer/src/hooks/useSettingsState.ts
- Key changes: theme-related settings, settings cache storage, background close toggle
- Metrics: Unified theme-related settings storage and caching

IMPACT:
- Improved code organization and consistency
- Enhanced user experience with more intuitive settings management
- Better scalability with consistent cache storage
…nematic, and ray tracing scenarios

FEATURES:
- Added new performance launch config for high FPS and minimal post-process cost
- Introduced cinematic launch config for screenshots and trailers with maxed settings
- Added ray tracing showcase launch config for hardware ray tracing and GI
- Implemented headless CI launch config for build farms with no rendering cost
- Enhanced scalability tiers with resolution quality mapping
- Simplified launch config resolution quality mapping for better readability
- Removed OpenGL from RHI options, as it's not supported on Linux

BUG FIXES:
- None identified in this diff

IMPROVEMENTS:
- Improved launch config management with new scalability tiers and resolution quality mapping
- Enhanced user experience with new launch config options for performance, cinematic, and ray tracing scenarios
- Simplified and improved readability of launch config resolution quality mapping

TECHNICAL DETAILS:
- 4 files changed: 164 insertions(+), 18 deletions(-)
- Files: src/main/store/index.ts, src/main/utils/launchConfigArgs.ts, src/renderer/src/components/engines/launchConfig/launchConfigConstants.ts
- Key changes: added new launch config constants, updated scalability tiers, removed OpenGL from RHI options
- Metrics: none available

IMPACT:
- Improved user experience with new launch config options for performance, cinematic, and ray tracing scenarios
- Enhanced launch config management with new scalability tiers and resolution quality mapping
- Simplified and improved readability of launch config resolution quality mapping
…ect launching

FEATURES:
- Introduced async/await support for engine scanning and project launching
- Modified native engine scanning to use async/await
- Improved engine discovery and scanning with async/await

BUG FIXES:
- Fixed file system interactions in engine scanning and project launching

IMPROVEMENTS:
- Enhanced project launching and selection with async/await support

TECHNICAL DETAILS:
- 13 files changed: 546 insertions(+), 255 deletions(-)
- Specific files:
  - native/index.win32-x64-msvc.node
  - native/src/lib.rs
  - src/main/ipc/enginePlugins.ts
  - src/main/ipc/projectLaunching.ts
  - src/main/ipc/projectSelection.ts
  - src/main/utils/engineScanning.ts
  - src/main/utils/native.ts
  - src/main/utils/projects.ts
  - src/main/workers/engineScanWorker.ts
  - src/main/workers/projectScanWorker.ts
  - src/renderer/src/components/tasks/TasksContent.tsx
  - src/renderer/src/components/tasks/TasksToolbar.tsx
  - src/renderer/src/pages/TasksPage.tsx
- Key changes:
  - Introduced async/await support for engine scanning and project launching
  - Modified native engine scanning to use async/await
- Metrics:
  - Improved performance with async/await support
  - Enhanced engine discovery and scanning with async/await

IMPACT:
- Improved performance with async/await support
- Enhanced engine discovery and scanning with async/await
- Better user experience with async/await support in project launching and selection
- Improved code quality with async/await support
ARCHITECTURE:
- Removed native Windows x64 MSVC binary from repository
- Deletion of file 'native/index.win32-x64-msvc.node'
- Binary file mode changed to 100644, index updated to 0000000

TECHNICAL DETAILS:
- 1 file changed: 0 insertions(+), 0 deletions(-)
- File: native/index.win32-x64-msvc.node
- File size reduced from 1368064 bytes

IMPACT:
- Reduced repository size by 1368064 bytes
- Simplified build process for MSVC target
- Improved development efficiency
FEATURES:
- Introduced new plugin feature with enhanced metadata including enabled by default, dependencies, docs URL, and support URL
- Engine plugins are now scanned with additional metadata fields to populate engine plugin cache
- Toggle functionality to enable/disable plugins by default added

IMPROVEMENTS:
- Improved plugin metadata parsing with JSON formatting and indentation to enhance readability
- Added backup functionality for uplugin files when toggling enabled by default

TECHNICAL DETAILS:
- 7 files changed: 730 insertions(+), 130 deletions(-)
- Files: native/index.win32-x64-msvc.node, native/src/lib.rs, src/main/ipc/enginePlugins.ts, src/main/ipc/engines.ts, src/main/ipc/projectPlugins.ts, src/preload/index.d.ts, src/preload/index.ts
- Key changes: EnginePlugin struct, toggleEnginePluginDefault function, IPC event handling for toggle plugin default
- Metrics: None

IMPACT:
- Enhanced plugin management with additional metadata and toggle functionality
- Improved user experience with more detailed plugin information
- Better code organization with added plugin metadata
…UI components

FEATURES:
- Introduced new plugin management features, including filtering and sorting
- Enhanced UI components for a more intuitive and user-friendly experience
- Added dropdown menu for selecting and managing plugins
- Implemented new tab navigation and layout for improved user experience

IMPROVEMENTS:
- Optimized plugin loading and initialization for better performance
- Improved error handling and debugging for more robust plugin management

TECHNICAL DETAILS:
- 7 files changed: 1754 insertions(+), 510 deletions(-)
- Files: native/index.win32-x64-msvc.node, src/main/ipc/enginePlugins.ts, src/renderer/src/components/engines/InstalledPluginsTab.tsx, .../src/components/engines/plugins/PluginCards.tsx
- Key changes: added new components and features, improved plugin management and UI

IMPACT:
- Enhances user experience with new features and intuitive UI components
- Improves performance and robustness of plugin management
- Enables more efficient plugin loading and initialization
- Provides better debugging and error handling capabilities
…ab-bar layout

FEATURES:
- Redesigned Settings Page navigation using a horizontal tab-bar layout matching Engines and Projects pages
- Added `sg.LandscapeQuality` to Unreal Engine scalability presets command-line generation for improved landscape quality in newer engine versions

BUG FIXES:
- Resolved horizontal layout and titlebar overflow bugs in narrow window views by utilizing `flex-wrap` and setting proper flex-basis limits

IMPROVEMENTS:
- Enhanced Settings Page navigation for better usability and consistency
- Improved Unreal Engine scalability presets command-line generation for landscape quality

TECHNICAL DETAILS:
- 43 files changed: 1097 insertions(+), 568 deletions(-)
- Specific files: CHANGELOG.json, CHANGELOG.md, scripts/buildNativeHelper.js, scripts/copyTracer.js, src/main/ipc/enginePlugins.ts, and others
- Key changes: Settings Page navigation, Unreal Engine scalability presets command-line generation, and layout fixes

IMPACT:
- Enhanced user experience with improved Settings Page navigation and Unreal Engine scalability presets
- Better consistency and usability across the application
- Improved developer experience with fewer layout issues
STYLE:
- Refactored CSS styles for improved layout and responsiveness in settings components
- Adjusted margins, padding, and class names for better visual flow and consistency
- Fixed inconsistent styling and layout issues

TECHNICAL DETAILS:
- 2 files changed: 17 insertions(+), 20 deletions(-)
- Files: src/renderer/src/components/settings/SectionHelpers.tsx, src/renderer/src/components/settings/sections/ProjectsSection.tsx
- Removed unnecessary whitespace and class names
- Improved CSS specificity and naming conventions

IMPACT:
- Improved visual appearance and consistency of settings components
- Enhanced user experience with better layout and responsiveness
- Simplified CSS styles for easier maintenance and updates
FEATURES:
- Enhanced tab navigation with dynamicTabs component
- Improved responsiveness and layout adaptation
- Simplified tab switching with less code and improved efficiency

BUG FIXES:
- Resolved responsive issues with plugins and presets
- Fixed layout issues for better user experience

TECHNICAL DETAILS:
- 17 files changed: 234 insertions(+), 234 deletions(-)
- Files: src/renderer/src/components/engines/InstalledPluginsTab.tsx, src/renderer/src/components/ui/Tabs.tsx, src/renderer/src/pages/SettingsPage.tsx, and others
- Key changes: tab navigation logic, responsive layout adaptation
- Metrics: 234 fewer lines of code, improved responsiveness

IMPACT:
- Enhanced user experience with improved responsiveness
- Simplified tab switching and navigation
- Better code organization and reduced complexity
…gs sections

REFINEMENTS:
- Standardized background gradients and border styles across UI components
- Unified hover effects and focus states for improved visual consistency
- Removed redundant styles and code duplication in settings sections

FEATURES:
- Enhanced settings sections with improved visual hierarchy
- Better user experience with consistent design patterns
- Improved code maintainability with reduced duplication

TECHNICAL DETAILS:
- 15 files changed: 116 insertions(+), 71 deletions(-)
- Files:
  + 8 files changed in UI components
  + 7 files changed in settings sections
- Key changes:
  + Unified hover effects and focus states
  + Standardized background gradients and border styles
  + Removed redundant styles and code duplication

IMPACT:
- Improved user experience with consistent design patterns
- Enhanced visual hierarchy in settings sections
- Better code maintainability with reduced duplication
…ws, and hover elevation scaling to Engine, Fab Asset, and Project Plugin cards

FEATURES:
- Unified glassmorphic gradients, soft ambient shadows, and hover elevation scaling on Engine, Fab Asset, and Project Plugin cards
- Improved visual consistency across Plugin Grid card interactions by removing view details info icon and allowing click anywhere to open detail panel
- Introduced `launchPauseDuration` setting and guard logic in project launching to enhance user experience and prevent consecutive launches within a user-defined safety delay

BUG FIXES:
- Fixed horizontal layout and titlebar overflow bugs in narrow window views by utilizing `flex-wrap` and setting proper flex-basis limits (`min-w-0`)
- Fixed layout overflow and alignment bugs on the Engine Plugins page by scaling the search input to a proportional fixed width next to the filter dropdowns
- Fixed the 'Auto-close on launch' setting being ignored when launching projects or engines with custom configurations

TECHNICAL DETAILS:
- 9 files changed: 125 insertions(+), 14 deletions(-)
- Specific files:
  - CHANGELOG.json
  - CHANGELOG.md
  - src/renderer/src/components/engines/launchConfig/useLaunchConfigState.ts
  - src/renderer/src/components/engines/plugins/PluginCards.tsx
  - src/renderer/src/components/projects/VirtualizedProjectGrid.tsx
  - src/renderer/src/components/settings/sections/LaunchSection.tsx
  - src/renderer/src/hooks/useProjectActions.ts
  - src/renderer/src/utils/settings.ts
  - src/renderer/src/components/ui/Tabs.tsx
- Key changes:
  - Unified glassmorphic gradients and soft ambient shadows on Plugin cards
  - Removed view details info icon from Plugin Grid card interactions
  - Introduced `launchPauseDuration` setting in project launching
- Metrics:
  - Improved visual consistency across Plugin Grid card interactions
  - Enhanced user experience with `launchPauseDuration` setting and guard logic

IMPACT:
- Improved visual consistency and aesthetics across the application
- Enhanced user experience with simplified Plugin Grid card interactions and `launchPauseDuration` setting
- Fixed horizontal layout and titlebar overflow bugs, layout overflow and alignment bugs on the Engine Plugins page, and the 'Auto-close on launch' setting being ignored
- Improved development experience with better layout and plugin card interactions
STYLE IMPROVEMENTS:
- Updated CSS variables for consistent color usage
- Enhanced visual styles for UI components

FEATURES:
- Added EngineSubMenu component to ProjectContextMenu

TECHNICAL DETAILS:
- 7 files changed: 246 insertions(+), 37 deletions(-)
- Specific files: src/renderer/src/assets/main.css, src/renderer/src/components/projects/ProjectContextMenu.test.tsx, src/renderer/src/components/projects/ProjectContextMenu.tsx, src/renderer/src/projects/contextMenu/EngineSubMenu.tsx, src/renderer/src/projects/contextMenu/contextMenuComponents.tsx, src/renderer/src/components/settings/sections/LaunchSection.tsx, src/renderer/src/hooks/useProjectLoader.ts
- Key changes: updated color variables, added EngineSubMenu component, updated UI component styles
- Metrics: N/A

IMPACT:
- Consistent visual branding across the application
- Improved user experience with enhanced UI components
- Better maintainability with updated color variables
…options

FEATURES:
- Added 'Disable Virtual Production & LiveLink' and 'Disable Datasmith & CAD Importers' presets to InstalledPluginsTab
- Integrated new preset options for virtual production, live link, and datasmith into the tab
- Enhanced plugin preset rendering with additional options and configuration

TECHNICAL DETAILS:
- 2 files changed: 31 insertions(+), 0 deletions(-)
- Files: src/renderer/src/components/engines/InstalledPluginsTab.tsx
- Key changes: added preset options, updated plugin rendering logic

IMPROVEMENTS:
- Developer experience enhanced with additional preset options for common use cases
- User experience improved with more intuitive plugin management
- Code quality maintained with well-organized and documented changes
FEATURES:
- Introduced delayed project saving with 100ms timeout for improved performance
- Added pending project handling to store to reduce unnecessary writes
- Enhanced store behavior with asynchronous project saving for better responsiveness

TECHNICAL DETAILS:
- 1 file changed: 13 insertions(+), 2 deletions(-)
- File: src/main/store/index.ts
- Key changes: `saveProjects` function, `pendingProjects` variable, `saveProjectsTimer` variable
- Metrics: Reduced write operations on disk storage

IMPACT:
- Improved performance by reducing unnecessary disk writes
- Enhanced store responsiveness with asynchronous project saving
- Better support for large-scale project data management
…experience

FEATURES:
- **Settings Page Navigation Redesign**: Updated the navigation layout to use a horizontal tab-bar, matching the Engines and Projects pages, for an improved user experience.
- **Project Context Menu Layout Update**: Hid the icon column space for menu items without icons, ensuring clean text alignment to the left.
- **Added `sg.LandscapeQuality`**: Included `sg.LandscapeQuality` in Unreal Engine scalability presets command-line generation, allowing landscape quality to scale with quality profiles.
- **Change Engine Version Submenu**: Added a Change Engine Version submenu to the project context menu for direct engine association switching.

TECHNICAL DETAILS:
- 1 file changed: 6 insertions(+), 6 deletions(-)
- File: CHANGELOG.md
- Key changes: Settings Page navigation, Project Context Menu layout, `sg.LandscapeQuality` addition, Change Engine Version submenu

IMPACT:
- Users can now seamlessly navigate between settings pages.
- Improved project context menu layout for better usability.
- Landscapes in Unreal Engine can now be scaled according to chosen quality profiles.
- Users can easily switch project engine versions.
@NeelFrostrain
NeelFrostrain merged commit 22f02f1 into release Jul 20, 2026
4 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant