Skip to content

Releases: ngodn/lwfa

lwfa 1.5.11

Choose a tag to compare

@ngodn ngodn released this 12 Sep 21:36

This release includes lwfa 1.5.11 for Linux and the native iPad client 0.2.13 (13).

Added

  • Add a native iPad app with SwiftUI panels, Metal video rendering, audio, physical and on-screen controllers, and saved sessions.
  • Provide Linux scripts to build, sign and install the iPad app.

Changed

  • Balance grouped windows using the available space. Six and eight windows form equal rows where the canvas proportions allow, with corresponding layouts in portrait.
  • Use distinct icons for Immersive mode and window fullscreen, with clearer action labels.

Fixed

  • Prevent odd window groups from giving some windows roughly twice the area of others.
  • Keep sibling groups consistent when canvas dimensions differ by one pixel.
  • Give iPad controller pads and toolbar actions direct native touch targets. Keep Edit, Show/Hide, Guard, Settings and Close above the pads and visible at low pad opacity.
  • Block stray touches across the full canvas when the controller guard is enabled.
  • Keep the immersive floating button under the finger while dragging and save its position on release.
  • Animate iPad window movement in Arrange mode and keep video, input and borders together while moving.

Upgrading

  • Upgrade the Linux installer and refresh the browser to load the updated layout.
  • The IPA supports iPadOS 26 and later and requires signing with your Apple account. With the iPad connected and unlocked, run bash scripts/install-ios.sh releases/lwfa-ipad-0.2.13.ipa after downloading it into releases/.
  • The IPA build and automated checks passed. The latest controller-toolbar and window-animation behavior still needs physical-device verification.

lwfa 1.5.10

Choose a tag to compare

@ngodn ngodn released this 12 Sep 11:18

This release includes the gaming features prepared for 1.5.9 and the controller UI fixes in 1.5.10. Version 1.5.9 was not published separately.

Added

  • Add Proton, LSFG, and Framegen tabs to the Gamepad settings panel, with component installation and per-game profiles.
  • Install GE-Proton11-6 and the lwfa Canvas patch together from the Proton tab. Host launches use the original GE runtime; lwfa launches use the patched runtime.
  • Add managed LSFG with per-game frame multipliers and motion detail settings. Requires a purchased copy of Lossless Scaling installed through Steam.
  • Add experimental OptiScaler frame generation for compatible games, with private per-game files and checks for conflicting graphics injectors.
  • Show GPU capture and CPU copy activity in engine diagnostics.

Changed

  • Open controller and gaming settings from the navigation Gamepad button. Use the Controller tab's "Show the gamepad" switch to show or hide on-screen controls.
  • Keep gaming profiles and downloaded components across lwfa upgrades.

Fixed

  • Make the gamepad visibility switch control the displayed on-screen controller and stay synchronized with its toolbar.
  • Keep the settings panel open when launched from the controller toolbar.
  • Leave layout editing when hiding or switching away from the gamepad.

Upgrading

  • Refresh the browser after upgrading to load the updated navigation.
  • After installing managed Proton, restart Steam when your games are closed and select the lwfa Canvas tool in the game's Compatibility settings.
  • To use LSFG or Framegen, copy the launch option shown in its tab into the game's Steam launch options. Use one frame-generation provider at a time. Gaming management requires Python 3.11 or newer; Framegen also requires Bubblewrap with overlay support and a 7-Zip extractor.

lwfa 1.5.8

Choose a tag to compare

@ngodn ngodn released this 11 Sep 04:52

Fixed

  • Restore sound in games such as Clair Obscur: Expedition 33 when launched from Steam Big Picture using a controller.
  • Preserve popup and menu focus when recovering from missing keyboard focus.

lwfa 1.5.7

Choose a tag to compare

@ngodn ngodn released this 09 Sep 14:17

Added

  • Add Immersive mode beside Fullscreen in window actions. Fill the browser screen and hide navigation while keeping the current window arrangement.
  • Show navigation with a translucent, draggable lwfa logo. Remember its position and keep it reachable after rotation.

Changed

  • Overlay navigation during Immersive mode so showing or hiding it does not resize games. Keep on-screen controls available.

Fixed

  • Keep Fullscreen and Exit fullscreen choices when games send repeated fullscreen requests during resizing, including in Immersive mode.
  • Avoid redundant layout updates from repeated application fullscreen requests.

Upgrading

  • Reload your browser tab after upgrading to load the fullscreen fix.

lwfa 1.5.5

Choose a tag to compare

@ngodn ngodn released this 08 Sep 17:22

Added

  • Add lwfa GE-Proton 11-6 (Canvas) as a separate compatibility tool for games running inside lwfa. Host launches use the original GE runtime.

Changed

  • Restore browser-driven Xwayland monitor sizing. Fullscreen and ordinary windows receive their canvas dimensions, including after resizing or rotation.
  • Fill Xwayland canvases without the blanket aspect-fit margins introduced in 1.5.4. Games can still draw their own letterboxing or retain a deliberately selected resolution.

Removed

  • Remove Sharper and More space, including their settings, protocol commands and engine state. The obsolete session.xwayland_resolution setting is ignored.

Fixed

  • Preserve the existing right and bottom capture-edge corrections on both GPU capture and CPU readback.
  • Correct stale game resolutions, DPI crashes, cropped fullscreen rendering and misplaced cursor bounds during resizing when using the lwfa compatibility tool.
  • Keep host launches on original GE libraries. Refuse to attach to an active prefix using the other runtime, without stopping its applications.

Upgrading

  • Reload browser tabs after upgrading. The shell and engine use protocol version 2.
  • The installer includes the compatibility components. Registration requires the matching original GE-Proton11-6-x86_64 installation and its Steam runtime.
  • Restart Steam after installation and select lwfa GE-Proton 11-6 (Canvas) in the game's Properties > Compatibility. Existing game selections are unchanged.
  • Close applications using the game's prefix before switching between host and lwfa sessions. Existing system Wine and GE installations are preserved.
  • If you installed an earlier 1.5.5 test build of the compatibility tool, close its games and remove its old registration before registering this build. The installer preserves an existing tool when its contents differ.

lwfa 1.5.4

Choose a tag to compare

@ngodn ngodn released this 07 Sep 20:06

Added

  • Add an owner-only Restart lwfa button below sign-out in Session, with a confirmation dialog and automatic reconnect.

Changed

  • Initialize Xwayland's desktop from the first controlling browser's size instead of the host monitor. Keep it stable while apps are running.
  • Soften focused window outlines with a thinner, less opaque orange border and lighter shadow.

Removed

  • Temporarily disable Sharper and More space. Windows use 1x while display scaling compatibility is reworked.

Fixed

  • Preserve window widths and workspace arrangements when refreshing the browser.
  • Preserve fullscreen game dimensions and fit the complete image into its browser window, including pointer coordinates in letterboxed views.
  • Keep dialog keyboard navigation out of games and release held keys when a dialog takes focus.

An intermittent Wine mode-emulation stall remains under investigation. This release does not claim to resolve every game-specific freeze or cursor offset.

Upgrading

  • Reload open browser tabs after upgrading to load the updated shell.
  • Without an explicit session.xwayland_resolution, automatic Xwayland startup and the initial terminal wait for the first controlling browser. The shared X11 monitor stays fixed until lwfa restarts; rotating the browser does not change a running game's resolution.

lwfa 1.5.2

Choose a tag to compare

@ngodn ngodn released this 07 Sep 15:06

Changed

  • Keep a fixed display resolution for X11 and Proton throughout the session.
    Fit larger window workspaces within that display and show scaling limits.
  • Allow a larger fixed X11 display through session.xwayland_resolution in
    the engine configuration. Apply it when restarting lwfa.

Fixed

  • Prevent window resizing and workspace scaling from triggering Proton's
    monitor-DPI assertion in apps such as Cheat Engine.
  • Keep mouse and touch input reachable across scaled X11 windows, including
    windows positioned beyond the browser's visible area.
  • Keep Auto-scaled video streams running through browser resizes when their
    rendering density stays unchanged.

lwfa 1.5.1

Choose a tag to compare

@ngodn ngodn released this 07 Sep 01:50

Changed

  • Group panel controls into compact cards with inset dividers and clearer
    selection states.
  • Simplify navigation labels and panel text.
  • Enlarge panel touch targets and keep controls accessible on narrow screens.

Fixed

  • Retry video after a stream-format change or resize instead of keeping an
    earlier decoder failure locked to JPEG.
  • Recover from temporary decoder errors during resizing.
  • Restore the common video format when a restrictive viewer pauses or leaves.
  • Fix packaging after container builds and stop on errors before replacing
    an existing installer.

lwfa 1.5.0

Choose a tag to compare

@ngodn ngodn released this 06 Sep 22:54

Added

  • Choose per-window scaling from 0.5x to 2x in the Windows panel. Sharper adds
    detail at the same interface size for native Wayland apps; More space fits a
    larger workspace into the same browser tile, including Xwayland apps.
  • Let Sharper follow the controlling display's density with Auto, up to 2x.

Changed

  • Update the audio codecs, frontend toolchain, and compatible Rust dependencies.
  • Limit cached CPU frame memory when resizing large or dense windows.

Fixed

  • Keep pointer and touch input aligned with scaled windows and apps that limit
    their requested size.
  • Let Xwayland pointer movement reach the full enlarged workspace.
  • Keep the local preview and popups aligned with the app's actual dimensions.
  • Release closed-window encoders promptly, even when no further frames arrive.
  • Free browser frames and decoders for windows that close while disconnected.
  • Read the video stream's actual profile and size, and fall back when the
    browser cannot decode it.

Upgrading

Upgrade the engine and reload every connected browser together. This version
uses an updated shell protocol.

Safari/WebKit physical-controller input remains a known issue in the reported
iPad setup. The user's Chrome test and Safari on-screen controls worked.

lwfa 1.4.5

Choose a tag to compare

@ngodn ngodn released this 06 Sep 12:49

Safari/WebKit physical-controller issue: physical buttons can miss presses
or remain held in the reported iPad setup, especially LB/RB. Chrome worked in
the user's follow-up test, and on-screen controls work in Safari. Use Chrome or
on-screen controls if affected. This release does not claim to fix Safari's
physical-controller behavior.

Added

  • Play with a physical controller, including analog sticks and triggers.
  • Hide on-screen controls independently using the button between Edit and the
    shield. The controller and shield stay enabled.
  • Reset physical controller state and export troubleshooting traces from
    Gamepad settings.
  • Pan game cameras by moving the mouse to fullscreen window edges.

Changed

  • Widen gamepad toolbar buttons for easier touch access.
  • Improve automatic stream adaptation and recovery as connection conditions
    change, including JPEG fallback pacing.

Fixed

  • Release held controller input when the browser loses focus and release held
    touch controls when hiding the layout or entering Edit.
  • Preserve focus when closing panels and dialogs; prevent passive follower
    sessions from taking focus and improve Xwayland focus repair.
  • Correct black strips along window edges and stale frames after stream changes.
  • Improve audio playback recovery and cleanup across reconnects and suspension.