⚠️ Nightly build: This nightly-release may contain experimental features and breaking changes.
What's new
Core: new window policy
In previous framework versions, target="_blank" hyperlinks didn't automatically open in the default web browser or a new Neutralinojs window. The new window policy feature offers a way to handle target="_blank" hyperlinks properly using the window.newWindowPolicy: string configuration option. This option accepts three values:
system: Uses the default behavior of the platform-specific system webview. Ignores or opens in a new webview window.browser: Opens the URL in the default web browser.custom: Emits thenewWindowRequestevent with the URL, so the developer can implement custom logic (e.g., opening the specific URL in a new Neutralinojs window, HTML popup, etc.).
API: native file drag and drop
By default, Neutralinojs webview enables the system webview's drag and drop implementation, so developers can add drag and drop features for Neutralinojs apps using standard JavaScript web APIs, but they can't retrieve the actual file path due to security concerns. Neutralinojs native filesystem API can't be used with C:\fakepath\filename.ext-like fake file paths. Now, you can disable webview-specific drag and drop handling and get full file paths of dropped files directly via Neutralinojs events using the window.emitDropEvents: boolean configuration option. If this option is set to true, you can get dropped files as follows:
await Neutralino.events.on('filesDropped', (e) => {
console.log('Files: ', e.detail);
});API: computer
- Implement
os.getHostname()to retrieve the hostname. - Implement
os.getNetworkInterfaces()to retrieve network interface details, including name, IP, MAC, type (internal/loopback or not), and IP family (v4 or v6) for each network interface entity. This function produces a similar output to Node.js'sos.networkInterfaces()
API: filesystem
- Implement
filesystem.chmod(path, mode)to change file access permissions using POSIX octal file modes — a POSIX-friendly alternative to the existing genericfilesystem.setPermissions()function. - Implement
filesystem.access(path, mode)to test file access permissions using POSIX access modes (0,1,2, and4) — a POSIX-friendly alternative to the existing genericfilesystem.getPermissions()function. - Implement
filesystem.chown(path, uid, gid)to change user/group ownership of files and directories. This method has no effect on Windows.
API: os
- Implement
os.trashItem(path)to send a file or directory into the system trash container. - Add
homeanddesktoppath name implementations to theos.getPath(name)function.
Core: static server
- Implements HTTP 206 partial content feature to support HTML
<video>progress changes (seeking).
Core: extensions
- Allow extensions to use WebSocket binary mode for communicating with the Neutralinojs framework.
Improvements/bugfixes
- Fix memory handling issues in the
os.setTray()implementation. - Fix the crash that occurs while using the tray menu and window menu together on macOS.
- Focus app content on the window focus event on Windows.
- Using the theme color to fix the well-known white screen flashing bug on Linux.
- Remove the registered system tray icon when the framework process exits on Windows.
Update the config file option cli.binaryVersion with nightly and enter neu update to fetch this version.
Get started: https://neutralino.js.org/docs
This release was auto-generated by ReleaseZri 🚀