1. XSOverlay
  2. News
  3. Build 306 Changelog - The Core Systems Rework

Build 306 Changelog - The Core Systems Rework

Greetings all!

If you've been paying attention to the Beta branch change logs recently, then this change log will probably look very familiar to you, as it's the culmination of the last month or so of effort.

I feel that this update is finally ready to hit the live branch. In this update, I've completely reworked a majority of the core systems. Everything from input, to cursor management, to grabbing and moving windows around.

The gist is - it fixed a lot of long standing bugs, as well as allowing paths to open up for further additions of feature requests. We now have a much more stable, and workable foundation to work upon - and let me tell you - it's so much nicer to work with. It did take awhile, but I think the wait was worth it!

As always, there may be bugs that we didn't catch in the betas - I will be working hard to fix those as soon as they get reported, or as soon as I notice them, so keep an eye out for those, and don't be scared to report them! This is a huge overhaul to a lot of the application after all!

Other than that, the end user experience should feel the same as it did before, as I did not want to change that!

The next update I'll be focusing on reworking and overhauling the UI entirely, as I feel that it's currently not up to snuff with my quality standards. The UI is something that is a holdover from the alpha period, and needs a lot of work. I'd love to hear feedback from people on what they do and don't like about the current UI, as I will take that information into consideration while designing the new one!

Anyways, that's the update! Have a nice day/night, and stay safe!

Here's the change log!


[h3]CHANGES[/h3]
  • Changed: Complete overhaul of how the window grabbing system works

  • Changed: Complete overhaul of how the window cursor tracking works

  • Changed: Complete overhaul of how overlay textures are assigned. The end result should be the same, internally its a lot cleaner and is preparing for the API Overhaul, when we get to that.

  • Changed: Window Space Center indicator will now hide itself if in a seated play application. This will stop it from getting in the way in simulator games (ED, iRacing, etc).

  • Changed: Wrist Overlay is now moveable in Layout Mode. The Toolbar will move with it if attached to the hand.

  • Changed: Windows that are attached are now a 1:1 rotation mode to the hand thats moving it.

  • Changed: Lowered Minimum Distance that a window can be from the hand when holding it.

  • Changed: Updated controller bindings to make things more flexible, and more reliable. If you have set up custom bindings for Middle Click and Right Click modifiers, you will need to update them. this only applies to Index, WMR, and Vive. Oculus bindings are untouched.

  • Changed: Window list will now always try and show the process name first, followed by more information about that window. ex. "Discord (@xiexe)" or "Firefox (https://youtube.com)"

  • Changed: Optimized how battery polling, device polling, and music polling happen.

  • Changed: Made some adjustments to lower CPU usage.

  • Added: Ability to turn off the Wrist Overlay. This is under the Wrist Behavior category. Translation strings have also been added for this option to the English json.

  • Added: Ability to turn off windows aiming at the hand and rolling when moving. This is under the Window Behavior Category. This will make windows move and rotate 1:1 with your hand. Strings have also been added to the English json for this option.

  • Added: Toggle for Discord Rich Presence.

  • Added: Translation strings for Discord Rich Presence toggle to the english json, please update your custom translation files!

  • Added: Simulation Mode Bindings; This allows you to control the overlay through your keyboard and head alone. This mode will activate when pressing the binding you set in the json.
    You will need to set up your bindings prior to launching the Overlay with the bindings file, found in StreamingAssets/Etc/SimControlBindings.json.

    And example of using these bindings would be "Sim_EnterSimulationMode": "OEM_4" which would set the toggle button for Simulation mode to the [ key.

    You can find a list of supported key codes here.
    https://github.com/Xiexe/XSOverlay-Issue-Tracker/blob/master/SimulatorMode_SupportedKeycodes


  • Removed: Window Space Center Indicator. Will probably come up with a better indicator in the future.


[h3]BUG FIXES[/h3]
  • Fixed: Minimal / Standard Wrist Overlay option not saving on restart.

  • Fixed: Overlays should no longer get stuck to devices when being grabbed and dropped.

  • Fixed: Clock timer showing 60 instead of 0

  • Fixed: Fix attempting to scale wrist overlay causing the wrist overlay to become huge.

  • Fixed: Click Freeze will now only activate on short clicks, and will no longer impede dragging or long clicking. (more responsiveness yay!)

  • Fixed: The first input to capture the cursor will no longer click on the desktop if you have the "Require Input for Desktop Mouse Control" setting enabled

  • Fixed: The application will now no longer crash if you capture a window and resize it rapidly

  • Fixed: You can now hold multiple overlays at once

  • Fixed: Issue that caused an error in the log due to window capture texture sizes being set as humorously large numbers.

  • Fixed: Issue that caused window captures to get frozen when switching tabs in a browser, changing chat channels in Discord, etc.

  • Fixed: Issue that caused Monitor captures to reset to index 0 when toggling Layout mode, or loading a saved layout.

  • Fixed: Issue that caused an overlay to rotate by 90 degrees each time you selected it if the monitor was supposed to be rotated.

  • Fixed: Issue that caused layouts with rotated monitors to be loaded with the incorrect orientation.

  • Fixed: Mouse clicking and Mouse Modifiers (E.G. Right Click, Middle Click) Now only trigger when held on the controller that is controlling and using the mouse. (No more clicking with the left hand on accident while hovering with the right hand)

  • Fixed: Clicking on the desktop with the controller that doesn't control the mouse currently with Require Input turned off will now take control of the mouse with that controller. (Previously it was always locked to the first controller that hovered over the window.)

  • Fixed: Layout loading now loads windows who's titles have changed or who's process ID's have changed.

  • Fixed: Cursor will now properly be visible and track when falling back to the Window Capture API on Nvidia Optimus/Multi-GPU setups.


[h3]KNOWN ISSUES[/h3]
  • Loading a layout with window captures in it will cause a small hitch before everything gets loaded.
  • Opening the window selection list will cause a small hitch the first time it's opened.