v1.0.1
True Stretched v1.0.1
Changelog
- General Fixes :
- Added 2560x1080 as a resolution choice for native resolution
- Various UI Changes
- Improved method of getting version further then beta build of 1.0.1c
- Removed unnecessary import in "SettingsForm.vb"
- Removed "System.Management.ManagementEventWatcher" from Project-level Imports to remove warning code "BC40057"
- Removed "ManagementObject" from Project-level Imports to remove warning code "BC40057"
- Added check to ensure when opening that the last location the True Stretched was is still an location that is in the bounds of the screens if not resets to default location (fixes bug where sometimes a user would have True Stretched open in a location that no longer exists)
- Added another check when closing True Stretched that the location is in the bounds of the current screens and if it’s not don’t update the last location
- Fixed issue with CheckForUpdates() freezing every True Stretched form/ui
- Refactored code in multiple places to simplify object creation
- Refactored code in multiple places to simplify object initialization
- Refactored code in multiple places to use compound assignment to simplify code
- Fixed naming violation "checkWindowTimer" --> "CheckWindowTimer"
- Switched “FullToWinToFullScreenApex“ (Form1.vb) to be marked static
- Refactored code in multiple places to remove unnecessary keywords
- Fixed warning "CA2101" for marshaling platform invokes on line 16 & 26 & 1313 of "Form1.vb" to avoid a security warnings
- Refactored code in multiple places to fix warning “CA1806“ for unused HRESULT in “Form1.vb”
- Added Error handling to ignore network based events if the application doesn't have internet access
- Refactored Form1.vb to improve ease of coding by moving and implementing better methods in Module based system
- Switched “DevBuild” from being a saved setting in “Settings.settings“ to a global variable (“GlobalVariables_Module.vb“) that’s set from a command line argument “--Dev“
- Added new command line argument “--AutoDisable“ which enables disabling True Stretched if it was last enabled then closing True Stretched after
- New Modules :
- CountdownTimer_Module.vb - (Provides an easy to call function for a countdown timer that updates the stats label of form1.vb if desired and has the option to be waited on or run in background or not update status label ui)
- FindConfigLocation_Module.vb - (Provides and highly improved over the last methods way of getting the config file location for each game in an easy to call method)
- FindInstallLocation_Module.vb - (Provides and easy to call function that returns the game parameter install location and handles multiple launchers and other dynamic locations - Highly improved over previous methods)
- InternetConnection_Module.vb - (Provides and easy to call function to check if the application has access to the internet and disposes of resources after)
- MonitorManagement_Module.vb - (A highly capable module containing public function made easy to call and are really versatile as well as private functions to handle all the work for Monitor related features from saving monitor settings to changing screen resolutions and so on --- Requires WindowDisplayAPI .net wrapper as it works with it and wmi, screens and the registry to provide a complete robust method of handling Monitor related controls in .net)
- GlobalVariables_Module.vb - (A module for initialising all the global variables used throughout True Stretched)
- TrueLogging_Module.vb - (A logging module to make providing support easier for users having issues with True Stretched - Logs are only local and all in plain text the “TrueStretched-Log.log“ file can be opened by any text editor)
- Settings Improvements (SettingsForm.vb) :
- Ensured Form is fully loaded before any “Changed” event can save to avoid saving unnecessary
- Automatically get the selected “Game Monitor” display resolution
- Updated Settings.settings value names for new MonitorManager_Module
- Improved method of getting the computer monitor list and updating the selected “Game Monitor” setting in My.Settings.GameMonitor
- Added tooltips
- Update Downloader Improvements (UpdateAvilable.vb) :
- Converted from using WebClient to HttpClient to handle download and version checking
- Converted Sub "DownloadUpdate" to be Async
- Implemented a proper method of updating the download progress bar
- Converted the "CheckForUpdates" to use HttpClient instead of WebRequest for checking "latestversion.json"
- Converted the "CheckForUpdates" to use Invoke for handling updating UI with new method of checking for updates
- Converted the task of getting the json file info in "CheckForUpdates" to it's own Async sub "GetLatestVersionJson"
- Added a MessageBox if the if checking for updates fails
- Game Specific - Valorant :
- Valorant now launches from clicking “Enable True Stretched“
- Added Method to get “lastknownuser” config file location
- Added automatic switching of required graphics settings to make next Valorant launch seamless
- If Auto Minimise is set to enabled when Valorant is closed True Stretched will be automatically disabled
- Set True Stretched to close automatically if "Widescreen Fix" is enabled
- Added success message differences between “Widescreen Fix“ and “True Stretched Res“
- Added “Delayed Stretching” Mode used for slower to open Valorant computers
- New Dependencies :
- WindowsDisplayAPI v1.3.0.13
- Framework Updates :
- .NET 7.0 to .NET 8.0
- Installer Updates :
- Switched Prerequisites from “.NET 7.0” to “.NET 8.0”
- Added Version Title to Each Installer Form
- Updated from “Advanced Installer 20.4.0” to “Advanced Installer 21.3.1”
Notes: Giant re-work of most of True Stretched, from converting to a module based system, to improving performance, updating .NET frameworks, and the list goes on and on… even more updates since Version 1.0.0 if you look at the 1.0.1 Beta A,B and C which isn’t included in this list!